Review v2 stabilization + contract restoration (supersedes #190)#195
Open
atomchung wants to merge 4 commits into
Open
Review v2 stabilization + contract restoration (supersedes #190)#195atomchung wants to merge 4 commits into
atomchung wants to merge 4 commits into
Conversation
…ive handoff, nonce/paths Review findings on #190 (mechanism fixes): - render_public never reuses user-authored text: candidate rules resolve to fixed copy strings, custom rules render a localized generic line; commitment carries origin. Custom rules with tickers/amounts/dates no longer leak into the shareable card. - repair-projections skips persist:false bundles (test drive) so demo data can never be projected into real coach memory or overwrite last_state.json, and keeps going past corrupt session dirs instead of aborting. - legacy projections append the delta instead of rewriting whole JSONL files: foreign/partial lines from other writers are never reformatted or dropped. - test-drive prepare tells the agent to pass --root for later commands (the isolated mkdtemp root was undiscoverable, so documented preview/finalize always failed with "pending session not found"). - --session-nonce joins the fingerprint (was swallowed by same-content pending resume); CSV paths resolve to abspath once; preview gate now also enforces narrative.honesty coverage of required_honesty_keys (#82, renderer half in the next commit). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…pillar, reconciliation opener, ETF exemption completeness Restores owner-ratified product behaviors that the v2 rewrite dropped or reversed: - #82 honesty contract: the agent writes one digit-free sentence per triggered ledger key in narrative.honesty (schema + validator), and the renderer weaves each sentence into the section it qualifies — the standalone "Evidence boundaries" checklist section and its fixed copy strings are gone from new cards (copy remains only as a fallback for pre-contract bundles). The en public card no longer embeds the zh dimension label (dim goes through the localized dimension map). - #179/#181 account performance: hold_twr pillar renders with its window; gated cash anchors render a localized unlock invitation instead of the engine's internal note; full anchors render acct TWR/IRR and a neutral, never-a-verdict cash-drag line. - #151/#152 loop anchor: the card opens against the prior commitment with the metric's then/now values verbatim; the renderer never computes a delta. - ETF allocation exemption now also covers dim_avgdown breaches, problem-ledger avgdown events, the tdiag thesis interrogation, and the oversize tag — an SPY DCA below cost is no longer interrogated as single-name conviction. All 13 mock personas show zero exemption hits (no output drift). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…g wording, defer markers - BACKLOG reopens with the owner's 2026-07-05 correction (#112): the constraint is card quality, not distribution — the promotion release is a vehicle for validating card quality, not a distribution goal. - data-contract gains the dropped operating knowledge: full yfinance symbols for Taiwan (.TW/.TWO as agent world knowledge), ROC-date conversion, and the cash-anchor flow (read the statement's cash row, --cash JSON, list form for multi-currency, graceful degradation — never guess a balance). - SKILL/AGENTS/flows document the test-drive --root handoff and the narrative.honesty authoring contract; card-spec gains per-key wording guidance and card-policy drops the standalone honesty section. - README (en+zh-TW) licensing/disclaimer wording now matches reality: lens content is paraphrased principle distillation with per-lens source lists, no longer claimed as line-by-line cited quotation (#192 tracks whether the verbatim-quote evidence base returns). - EVALS/card-spec rows describing not-yet-wired behaviors point at their phase-2 issues (#191 revisit backlog, #193 per-market lines) instead of reading as shipped; the release-demo script carries the --root step. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this is
#190(review v2 重構)的 review 後修復版:包含 #190 全部內容(
fcd802d)+ 三個修復 commit。review 全文與認領見 #190 的 comment。本 PR merge 後 #190 可直接 close。一期修復(本 PR)
CONFIRMED blockers
commitment.origin入 bundle;新增防洩漏測試repair-projections把 test-drive demo 灌進真實教練記憶、覆蓋last_state.json→ 跳過persist:falsebundle + 壞目錄容錯不中止--root <state_root>接力;照文檔逐字重新驗證可走完 prepare→preview→finalize拍板行為恢復
narrative.honesty(schema+validator)由 agent 逐 key 寫誠實句、preview gate 驗覆蓋(缺/多都 fail)、renderer 織入對應段落——獨立「資料邊界」checklist section 移除(copy 死文案僅留舊 bundle fallback)dim_avgdownbreach/問題帳 avgdown 事件/tdiag thesis 質詢/押太重 tag 四處同語意豁免配置型 ETF——SPY 定投不再被當單一標的凹單質詢(refs [design] 集中度/分散規則對廣基 ETF 誤判 + 缺持有成本/tracking error 維度 #138).TW/.TWO+民國年契約([feat·多市場] 台股任意格式自動轉標準 CSV + 台股個股報價 — engine 只吃標準格式,Claude Step 0 負責認格式 #173);README(en+zh)licensing 措辭對齊現實(paraphrase+來源清單,不再宣稱逐句引註)工程修
--session-nonce進 fingerprint(不再被同內容 pending resume 吞)二期(需 owner 判斷,已開 issue)
Validation
python3 tests/run_all.py14/14 套全綠(v2 套件 9→16 個測試:公卡防洩漏、repair 隔離、honesty gate 三向、acct_perf 三情境、對帳段、nonce、ETF avgdown/問題帳豁免)allocation_exempt_tickers全空=現有 persona 卡零數字影響git diff --check乾淨🤖 Generated with Claude Code