| name | stage-gate |
| description | 阶段门控纪律 — 任何阶段结束前必须签字才能进入下一步,设计回测不通过禁入 QA,任务复盘必须沉淀到知识库。Use when finishing any workflow stage, ending a sub-task, or before QA audit. |
Stage-Gate — 3 层门控 + 设计回测 + 任务复盘
三层门控
按粒度从粗到细分三层。任何一步没签字,就不能进下一步。
┌─────────────────────────────────────────────────┐
│ 第 1 层:工作流门控(9 阶段之间) │ ← 用户签字
├─────────────────────────────────────────────────┤
│ 第 2 层:开发子流程门控(5 步实施) │ ← 用户 + Claude 双向
├─────────────────────────────────────────────────┤
│ 第 3 层:子任务门控(writing-plans 每个任务) │ ← 测试 + 用户抽查
└─────────────────────────────────────────────────┘
第 1 层:工作流门控
| 过渡点 | 通过标准 | 签字方 |
|---|
| 1→2(配置→澄清) | 4 个 *-path.md 已填 | 用户 |
| 2→3(澄清→BRD) | TASK_CONFIRM + REVIEW 已签字 | 用户 |
| 3→4(BRD→合规) | BRD 9 节齐 | 用户 |
| 4→5(合规→测试) | 合规结论 ✅ / ⚠️ | 用户 + 合规方 |
| 5→6(测试→PRD) | 用例覆盖主流程 + 异常 | 用户 |
| 6→7(PRD→开发设计) | PRD §七 验收签字 | 用户 |
| 7→8(开发设计→QA) | 设计回测已通过 | 用户 |
| 8→9(QA→交接) | full-qa-audit.py P0=0 | 用户 + 接收方 |
HARD GATE:上一阶段未签字,禁止进入下一阶段。
第 2 层:开发子流程门控
| 子流程门 | 通过标准 | 签字方 |
|---|
| brainstorming → spec | 设计稿已写,用户批准 | 用户 |
| spec → writing-plans | spec 自检通过 | 用户 |
| writing-plans → TDD | 任务粒度 ≤ 2h,文件路径 + 验证命令齐 | 用户 |
| TDD → execute | RED 测试已写完、已确认失败 | 用户抽查 |
| execute → 下一任务 | 当前任务 GREEN + REFACTOR + commit | Claude 自检 + 用户抽查 |
第 3 层:子任务门控
每个 ≤ 2h 任务完成必须满足:
- 代码层:测试已写 + 已 RED + 已 GREEN + 验证命令已跑 + 已 commit
- 文档层:5 问复盘已写
- 沉淀层:Q3 通用知识已追加到
knowledge-path.md 指向的知识库
HARD GATE:RED 没确认就写实现 = 假 TDD。
设计回测 4 大类(阶段 7 末尾,必做)
- 数据模型回测 — 跑历史样本验证 DDL / 索引 / 查询
- 业务规则回测 — 关键场景样本手工重跑
- 状态机回测 — 历史单据状态变化回放
- 字段对齐回测 — 文档 vs 知识库 vs 生产库
HARD GATE:回测不通过(❌)禁止进入阶段 8。
5 问任务复盘(每个子任务后,必做)
- 我做了什么?
- 我跑偏了哪里?
- 我发现什么通用知识?(没沉淀 = 没复盘)
- 我哪里慢了 / 卡了?
- 下次会改什么?
沉淀去向:
- 任务级复盘 → commit message / PR 描述
- Q3 通用知识 →
knowledge-path.md 指向的知识库
- Q5 流程改进 → 累计到阶段 7 整体复盘
跳过门控的合法理由
| 理由 | 怎么做 |
|---|
| 紧急 hotfix | 事后补签字;PR 描述里写"门控后补" |
| 纯配置变更 | 第 3 层可省;前两层仍要 |
| 极小项目(单函数) | 第 2 层可压缩,但用户必须明确批准 |
| 探索性 spike | 第 2 层可省;事后决定是否进入正式开发 |
引用
- 详细规范:原
references/stage-gate.md
- 设计回测:原
references/design-backtest.md
- 任务复盘:原
references/task-retrospective.md