Sync: FinClaw Canonical 三件套 Reader-Surface 清洗提议(R3 P1 / Lane L9)
日期:2026-05-15
来源项目 / 材料:Labs-FinTecAI Admin(基于 2026-05-15 三方 audit)
提交人 / 责任人:Labs-FinTecAI Admin → FinClaw Controller
当前状态:已由 FinClaw Controller 采纳路径 A 执行清洗(见 §10);独立 L1 reader test 已由 Codex(gpt-5.5)完成并归档(见 §8 / evidence/reader-tests/2026-05-15-finclaw-canonical-l1/)。
1. 触发背景
2026-05-15 完成的三方 audit(Codex Reader + OOSO Engineer + Cursor Self-Audit, 见 evidence/reader-tests/2026-05-15-tri-perspective/) 一致命中以下问题:
- Codex Reader Audit (P1): "FinClaw 三份 canonical 首屏 30 行充满 process metadata、'本文档不是 X' 边界澄清、'2026-05-XX 已吸收议题'演化叙事,新读者第 0-30 行无法判断本文档要回答什么。"
- OOSO Engineer Audit (P2 旁证): "尝试理解 FinClaw 第一版要做什么时,需要跳过前 ~17-20 行才到第一段实质内容,对'我能不能编码'这件事增加了无谓阅读成本。"
- Cursor Self-Audit (RC-A): "作者把演化记录放在前面是因为作者自己在跟踪演化;reader 不在乎演化,只在乎 What/Who/When/Outcome。这是 RC-A 的典型表现。"
- FR-011 原文: "项目正文被'本文档不是 X / 2026-05-XX 更新说明 / 已吸收议题'等过程叙事污染,破坏首屏可读性"。
按 FR-010 边界,Admin 不能直接修改 projects/finclaw/ 下 canonical 三件套的首屏措辞——那属于 FinClaw Controller 的产品话语权领域。Admin 能做且已做的:
- 抽出可复用 SOP:governance/templates/reader-surface-cleanup-sop.md
- 提供独立 reader-test 渠道:governance/reader-testing-protocol.md
- 把清洗任务通过本 sync packet 提议给 FinClaw Controller,Controller 自决是否接收 / 何时执行 / 如何改写。
2. 新发现 / 新情况
| 文件 | 当前首屏问题(前 17-20 行) | Reader 视角下缺失的回答 |
|---|---|---|
projects/finclaw/strategic-whitepaper.md | 1 个 5 行 HTML 注释 (pattern-provenance + worklog) + 6 行元数据竖排 + "本文档不是 X" + "2026-05-15 更新说明:本文档已吸收..." | 这份文档约束什么?战略 reviewer 应该用它解决什么决策?读完能产出什么? |
projects/finclaw/product-definition.md | 同上结构 + "15 项原始议题中编号 14 缺失"等执行过程注释 | 这份文档为谁写?什么时候应该读它而非 mvp-product-definition.md? |
projects/finclaw/mvp-product-definition.md | 同上结构 + "Controller 多轮讨论稳定结论已收束"过程引用 | 这份文档承诺什么时间窗口内交付?read outcome 是 PRD-able 还是仅决策对齐? |
这不是删除信息——这些演化记录有价值,只是放错位置。 按 SOP §3,应迁到文档末尾的 ## Changelog / 演化记录 块,让首屏 30 行用于回答 What / Who / When / Outcome / Trust。
3. 证据或来源
- 三方 audit 一致结论: evidence/reader-tests/2026-05-15-tri-perspective/README.md
- Codex 原始 audit 报告: evidence/reader-tests/2026-05-15-tri-perspective/codex-reader-audit.md
- OOSO 原始 audit 报告: evidence/reader-tests/2026-05-15-tri-perspective/ooso-engineer-audit.md
- Cursor self-audit: evidence/reader-tests/2026-05-15-tri-perspective/cursor-self-audit.md
- 抽象 SOP: governance/templates/reader-surface-cleanup-sop.md
- 验收协议: governance/reader-testing-protocol.md(清洗后跑 L1 强度即可)
4. 影响范围
受影响项目: FinClaw(仅 FinClaw;其他项目按各自 Controller 排期)
受影响文档:
projects/finclaw/strategic-whitepaper.md(首屏前 ~17 行 + 文末新增 Changelog 块)projects/finclaw/product-definition.md(同)projects/finclaw/mvp-product-definition.md(同)
不受影响:
- 任何 canonical 文档正文 §1 之后的内容(SOP 仅清洗"首屏 30 行",不动正文判断、对象设计、决策、术语)
projects/finclaw/design/下任何文件(design 类是 support,按 Controller 自己的判断决定是否清洗,不在本提议强制范围)- 任何项目战略 / 产品 / 商业 / 评估的实质判断
受影响接口 / 对象: 无。这是文档的"物理排版"调整,不改变任何 canonical 事实、对象定义、对外接口。
5. 当前建议
提供给 FinClaw Controller 三个备选执行路径(Controller 自决,不是 Admin 强制):
路径 A: 立即执行(推荐)
- FinClaw Controller 读 reader-surface-cleanup-sop.md §2-§4
- 按 SOP §4 流程,对 3 份 canonical 各执行一次(每份 ≤ 15 分钟,合计 < 1 小时)
- 完成后按 reader-testing-protocol.md §4 L1 强度,让 Codex 或 OOSO 各读 30 行回答 3 个问题(What/When/Outcome),都答对算 PASS
- 在
controllers/finclaw/state.md加一行 changelog 引用本 sync packet 作为完成证据 - 把本 sync 状态从
proposal改为absorbed
路径 B: 部分执行
只清洗 FinClaw Controller 认为最关键的 1-2 份(建议按反馈强度: mvp-product-definition.md > product-definition.md > strategic-whitepaper.md),其余推迟到下次 FinClaw 自然 rewrite 时一并处理。需在本 sync packet 回写选择理由。
路径 C: 拒绝或推迟
若 FinClaw Controller 判断当前首屏的演化叙事对实际读者群有不可替代价值(这种判断 FinClaw Controller 有权力做出,Admin 不否决),需在本 sync packet 回写:
- 拒绝/推迟理由(具体到"这些演化叙事服务的是谁的什么任务")
- 是否同意 RC-A "作者无法是自己的 reader" 这一根因诊断
- 若不同意,FinClaw Controller 提议的替代方案
无论选哪条,都属于"FinClaw Controller 在自己领域内行使权力",Admin 接受。
6. 后续观察点
- FinClaw Controller 选择路径后,2 周内(2026-05-29 前)回写本 sync packet 的状态
- 若选路径 A/B 完成后,跑 L1 reader test 是否通过
- 若选路径 A/B 完成后,是否触发其他项目(Data Horizon / Trading Matrix)的同类清洗需求(这会成为 SOP 的第 2 次复用证据,达到 #pattern crystallization 阈值)
- 若选路径 C,Admin 不再二次催请,但保留观察该决定在下次 reader audit 中是否再次产生反馈
7. 是否需要转 escalation
不需要转 escalation。本 sync 是 Admin → Controller 的协作层提议,不主张生态层裁决:
- FinClaw Controller 拒绝或推迟不构成生态层冲突
- 即使全部拒绝,FR-011 也已在 governance 层有 SOP 沉淀(下次任何项目 reader audit 触发时可复用)
- 仅当 FinClaw Controller 拒绝且后续 3 个月内有 ≥ 3 次外部 reader 投诉同一首屏问题时,才考虑升级 escalation 由生态层判断"FR-010 边界是否需调整以允许 Admin 强制清洗 reader-surface"
8. 吸收状态
- FinClaw Controller 已收到(见
controllers/finclaw/state.md§6) - FinClaw Controller 已选择执行路径:A(三份全开)
- 清洗已完成:
strategic-whitepaper.md/product-definition.md/mvp-product-definition.md - L1 reader test PASS 证据已归档(
R-agent-low-context:evidence/reader-tests/2026-05-15-finclaw-canonical-l1/codex-low-context-l1-report.md;实际 Codex 模型:gpt-5.5;gpt-5.5-codex在当前 ChatGPT 关联 Codex 账户下不可用,见报告 HTML 注释codex_api_note) - 本 sync YAML
status:proposal→absorbed
9. 未解决项 / Open Gaps
| 项 | 严重性 | Owner | 缺口具体内容 | 解除条件 |
|---|---|---|---|---|
| FinClaw Controller 是否接收本提议 | FinClaw Controller | 已选路径 A 并完成清洗 | ✅ 本条关闭;L1 证据仍列为 open | |
| 独立 L1 reader test(清洗后首屏验收) | FinClaw Controller / Cursor 调度 Codex | 已完成 | 见 evidence/reader-tests/2026-05-15-finclaw-canonical-l1/codex-low-context-l1-report.md(三文件 PASS) | |
| Changelog 块的统一格式 | P2 | FinClaw Controller / Admin(合作) | SOP 未规定 changelog 块的具体 schema(标题/字段/排序),第 2 次复用时再抽 | 任何 1 个项目首次执行清洗后 → 反馈 changelog 块在使用中遇到的问题 → Admin 抽出第二版 SOP |
| 其他项目(DH / TM / RLE / FEFM)的同类问题 | P2 | 各自 Controller | 本 sync 不替其他项目 Controller 决定是否清洗 | 各 Controller 自评估或下次 reader audit 触发 |
| — | Admin | Admin 提议已吸收;排版清洗已由 Controller 闭环 |
Open Gaps:本 sync 虽已 absorbed,仍必须显式保留未关闭项(例如独立 L1),避免把「排版完成」误读为 reader 验收完成。
10. FinClaw Controller 回写记录
- 日期:2026-05-15
- 执行:按 reader-surface-cleanup-sop.md,三份 canonical 文首重写为 What / Who / When / Outcome / Trust + 压缩上游链路;原文首
pattern-provenanceHTML 注释、竖排元数据、边界澄清与日期型更新说明迁入各文末## Changelog / 演化记录。 - 未主张:不改变任何战略 / 产品 / MVP 实质结论;不改变目录后的正文论断。