You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+23-1Lines changed: 23 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,17 +5,39 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
+
## [0.2.11] - 2026-06-20
9
+
10
+
### Changed
11
+
12
+
- Removed the deprecated `young replay` compatibility command so `young daily --llm` is now the only LLM deep-replay entry.
13
+
- Tightened the chat slash-command surface by removing the old `/replay` and `/daily-llm` compatibility aliases.
14
+
- Clarified throughout the CLI help and README that plain `young daily` is deterministic and does not require any LLM configuration.
15
+
- Updated `young send` docs to match the current delivery contract: send the latest Markdown plus summary first, and attach the same-name PDF only when it exists.
16
+
17
+
### Fixed
18
+
19
+
- Added regression coverage to keep deterministic `young daily` on the non-LLM path unless `--llm` is explicitly requested.
20
+
- Added regression coverage for latest-Markdown selection when `young send` is run without an explicit date.
21
+
22
+
## [0.2.10] - 2026-06-19
23
+
24
+
### Fixed
25
+
26
+
- Hardened persisted LLM auth so saved credentials survive terminal restarts even when a stale environment variable is present.
27
+
- Switched `young chat` input handling to a prompt toolkit-backed editor to reduce backspace/cursor glitches on macOS terminals.
28
+
8
29
## [0.2.9] - 2026-06-19
9
30
10
31
### Changed
11
32
-`young chat` now auto-uses the existing `reach` bridge for explicit finance/news lookup requests, but only feeds compact evidence excerpts to the model instead of exposing raw search captures in the terminal.
12
-
-`young chat` input now uses a fixed`young ` prompt prefix so line editing no longer eats the visible prompt label.
33
+
-`young chat` input now uses `prompt_toolkit` with a fixed, non-editable `young ` prompt prefix for reliable backspace and cursor movement on macOS terminals.
13
34
- Help text now makes the command boundary clearer: `young daily --llm` is the strict stock-analysis M1-M6 Markdown replay, `young replay` is only a deprecated alias, and `young report` is PDF export only.
14
35
15
36
### Fixed
16
37
- Fixed chat search flows that previously surfaced raw `/reach` output or still nudged users to run `/reach` manually instead of returning a summarized answer directly.
17
38
- Hardened LLM replay prompts so `young daily --llm` stays on the stock-analysis six-module framework and does not drift into persona-style investment templates.
18
39
- Fixed LLM config persistence so `young config llm --api-key-env ...` also stores a local fallback key, which keeps `young chat` working across fresh terminal sessions without forcing users to re-export the secret every time.
40
+
- Fixed stale shell environment variables overriding the saved API key after terminal restarts; saved credentials now take precedence and accidental outer quotes or whitespace are normalized.
App mode uploads and sends Markdown first, then adds the same-name PDF when it exists:
333
329
334
330
```bash
335
331
young config channel add feishu research-app \
@@ -384,8 +380,8 @@ The internals are being split into focused modules: `young_stock.calendar` handl
384
380
-**Multiple public quote sources** — Sina Finance and Tencent Finance are the default stable quote path; market-specific public interfaces stay behind the CLI fallback layer when no better source is available.
385
381
-**Single-stock lookup** — `young stock 600519`, `young stock 0700.HK`, or `young stock AAPL` prints a compact quote snapshot with source, trade date, price, change, volume, turnover, market cap, PE/PB, 52-week range when available, and optional news.
386
382
-**Fund holding lookup** — `young fund 161725` prints the fund's same-day estimated change, latest NAV date, top holdings, holding-stock quotes, rough contribution estimate, and same-day holding-stock news. Official fund NAVs usually update at night, so intraday/close values are clearly labeled as estimates.
387
-
-**Personal daily report** — `young daily` is the deterministic watchlist report from your local investment memory in `~/.young_stock/profile.json`; it prints saved stock/ETF trends, fund estimates, only the markets relevant to your symbols and fund top holdings, and portfolio-style suggestions grounded in your funds, stocks, holding dates, quantities, and available news. First use requires a verified symbol plus `--buy-date` and `--quantity`, for example `young profile add-stock 600519 --buy-date 2026-01-15 --quantity 100` or `young profile add-fund 161725 --buy-date 2026-01-10 --quantity 1000`.
388
-
-**LLM replay** — `young daily --llm` performs the deep after-hours / latest-trading-day replay, writes the matching Markdown artifact under the same report identity, and prints it in the terminal; `young report` is the dedicated PDF export step, and `--refresh` rebuilds the Markdown identity.`young replay`, `/replay`, and `/daily-llm` are compatibility aliases only.
383
+
-**Personal daily report** — `young daily` is the deterministic watchlist report from your local investment memory in `~/.young_stock/profile.json`; it does not require LLM, and it prints saved stock/ETF trends, fund estimates, only the markets relevant to your symbols and fund top holdings, and portfolio-style suggestions grounded in your funds, stocks, holding dates, quantities, and available news. First use requires a verified symbol plus `--buy-date` and `--quantity`, for example `young profile add-stock 600519 --buy-date 2026-01-15 --quantity 100` or `young profile add-fund 161725 --buy-date 2026-01-10 --quantity 1000`.
384
+
-**LLM replay** — `young daily --llm` performs the deep after-hours / latest-trading-day replay, writes the matching Markdown artifact under the same report identity, and prints it in the terminal; `young report` is the dedicated PDF export step, and `--refresh` rebuilds the Markdown identity.
389
385
-**Short report modes** — `young daily --format summary` keeps terminal output compact; `--format key-points` adds a few trend/risk bullets; `--only`, `--order`, and `--quick` trim slower or irrelevant sections.
390
386
-**Chat style control** — `/style list|set|show|clear` persists one synchronized style choice for tone, self-reference, and analysis framework. `balanced`, `buffett`, `munger`, `graham`, and `dalio` are style contracts, not identity claims.
391
387
-**Investment memory management** — list, remove, clear, and group saved stocks/funds with `young profile list`, `remove-stock`, `remove-fund`, `clear`, `clear-stocks`, `clear-funds`, and `profile group create/add`.
0 commit comments