基线、方法与证据规则
怎样把源码事实、机制推导和设计评价分开
为什么必须固定 commit
DeepSeek Harness 明确处于首个正式 tag 之前的阶段:优先修正基础设计而不是保留兼容 shim;SQLite schema 单调升级,而 session format 仍维持版本 0 且不承诺兼容。ROOT-PREVIEW
因此,“当前 master 怎样工作”是高漂移陈述。本报告把所有事实绑定到完整 SHA;以后若跟进新版本,将新增 baseline 差异页,而不是悄悄把旧结论替换成新实现。
证据等级
生产源码与实际配置
最强证据。需要同时看构造、调用、状态改变、失败分支和处置。
行为测试与快照
证明特定输入下的可观察行为,但必须先确认 fixture 真的经过生产装配路径。
生成文档
工具目录、模块图、事件图等由源码生成且有 gate,适合发现覆盖面,不能替代细节控制流。
人工维护文档
适合解释意图和词汇;与代码冲突时,以固定基线源码为准。
计划与讨论
只证明方向和问题意识,不证明运行时已实现。
三种陈述必须分开
例如:“工具调用在执行前先写入 tool/call,最终结果以 tool/result 写入 session log。”这可以由时序与生产控制流直接证明。TURN-SEQUENCE
例如:“工具 UI 可以先展示 pending card,同时最终模型历史仍由 durable event 投影。”这需要把事件顺序、presentation 和派生历史三处事实串起来。
例如:“事件溯源降低了多产品面的状态分叉风险,但把兼容压力推到了 event vocabulary 和 projection 上。”这是评价,必须同时陈述收益、代价和适用前提。
每个模块的统一拆解模板
- 业务角色:模块为哪种用户或运行时需求负责。
- 入口与装配:由哪个 bundle/profile 挂载,依赖哪些 service。
- 类型与数据:公开接口、事件、schema、branded id 和持久化形态。
- 真实控制流:正常路径、分支条件、状态突变的准确时机。
- 并发与生命周期:scope、owner、取消、卸载、cleanup 和竞态处理。
- 错误语义:谁分类、谁重试、谁降级、谁保留原始错误。
- 重放与可观测:哪些事实 durable,哪些只有 live event,如何恢复。
- 验证:单元、集成、snapshot、runtime invariant 和仍缺失的证据。
- 设计评价:收益、成本、约束、适用边界和可迁移原则。
章节完成门槛
只有入口、核心类型、主要状态机、持久化事实、错误路径与关键测试都被纳入,并完成至少一次入口到副作用的控制流复核,章节才会从“撰写中”升级为“已复核”。找不到反例不等于完成;缺乏直接证据的宽泛结论会继续留在“待验证问题”。
我的学习体会
内容仅自动保存到当前浏览器,不上传、不进入仓库。你可以导出 Markdown 自行归档。