外观
验收与证据协议
核心原则
完成状态由证据决定,不由代码量、对话长度、编译单点成功或 Codex 自我评价决定。
每个能力包都要声明 mandatory、conditional 和 informational 三类 gate:
- Mandatory:不通过就不能完成。
- Conditional:仅在启用相关外部能力或平台时要求。
- Informational:记录性能、体积或风险趋势,不单独阻断。
七类证据
1. 静态证据
- 类型检查。
- lint 和 architecture audit。
- Prisma schema inventory。
- API / DTO / realtime contract drift。
- 禁止模式和 secret scan。
2. 构建证据
- API production build。
- Admin production build。
- iOS clean simulator build。
- Android clean build。
3. 行为证据
- API smoke。
- 主路径 E2E。
- 失败和权限路径。
- 重复请求和幂等。
- 数据迁移和历史数据。
4. 跨端证据
- 相同 capability 在 iOS/Android 的行为对照。
- Admin 与客户端状态一致。
- server truth、本地 projection 和 realtime delta 收敛。
5. 恢复证据
- 断网。
- 进程重启。
- cursor 过期。
- queue retry。
- 外部 provider 失败。
- app background/foreground。
6. 运行证据
- simulator 或真机安装、启动和关键操作。
- 日志中没有未解释 fatal/error。
- screenshot 或结构化 UI snapshot。
- 推送、通话等能力的 provider 回执或受控 fake 证据。
7. 文档证据
- README 当前架构。
- ADR。
- capability ledger。
- migration/runbook。
- 环境变量模板。
- release/rollback 说明。
Evidence ledger
建议每项能力保存结构化记录:
yaml
capability: CHAT-CORE
status: green
commit: "<sha>"
verified_at: "<ISO-8601>"
mandatory:
api_tests: pass
ios_acceptance: pass
android_acceptance: pass
realtime_repair: pass
review:
blocking_findings: 0
residual_risks:
- "真实 APNs 仅在 Day 9 conditional gate 验证"
artifacts:
- ".build/evidence/chat-core/api-smoke.json"
- ".build/evidence/chat-core/ios.png"
- ".build/evidence/chat-core/android.png"1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
不得在版本库中提交包含凭据、测试账号敏感信息、生产数据或私人通信内容的证据。
GREEN 的定义
GREEN 必须同时满足:
- 所有 mandatory gate 通过。
- conditional gate 的适用性有明确结论。
- 独立审查无 blocker。
- 失败和近似实现被显式记录。
- 文档和合同与实现一致。
- clean state 可以复现关键验证。
预算耗尽、老师确认“差不多”、学员展示主路径或 Codex 输出完成总结都不能替代这些条件。