coding-agent-harness 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/LICENSE +21 -0
- package/README.md +141 -0
- package/SKILL.md +423 -0
- package/docs-release/README.md +30 -0
- package/docs-release/architecture/overview.md +52 -0
- package/docs-release/guides/agent-installation.md +139 -0
- package/examples/minimal-project/.harness-capabilities.json +8 -0
- package/examples/minimal-project/AGENTS.md +4 -0
- package/examples/minimal-project/CLAUDE.md +3 -0
- package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/execution_strategy.md +10 -0
- package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/progress.md +11 -0
- package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/review.md +27 -0
- package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/task_plan.md +14 -0
- package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/visual_roadmap.md +11 -0
- package/examples/minimal-project/docs/Harness-Ledger.md +6 -0
- package/package.json +34 -0
- package/references/adversarial-review-standard.md +173 -0
- package/references/agents-md-pattern.md +140 -0
- package/references/cadence-ledger.md +55 -0
- package/references/ci-cd-standard.md +90 -0
- package/references/delivery-operating-model-standard.md +145 -0
- package/references/docs-directory-standard.md +125 -0
- package/references/harness-ledger.md +148 -0
- package/references/lessons-governance.md +157 -0
- package/references/long-running-task-standard.md +209 -0
- package/references/module-parallel-standard.md +292 -0
- package/references/planning-loop.md +192 -0
- package/references/project-onboarding-audit.md +167 -0
- package/references/regression-system.md +89 -0
- package/references/repo-governance-standard.md +131 -0
- package/references/review-routing-standard.md +103 -0
- package/references/ssot-governance.md +111 -0
- package/references/walkthrough-closeout.md +135 -0
- package/references/worktree-parallel.md +184 -0
- package/scripts/check-harness.mjs +728 -0
- package/scripts/harness.mjs +201 -0
- package/scripts/lib/dashboard-writer.mjs +95 -0
- package/scripts/lib/harness-core.mjs +1318 -0
- package/scripts/smoke-dashboard.mjs +70 -0
- package/scripts/test-harness.mjs +482 -0
- package/templates/AGENTS.md.template +82 -0
- package/templates/CLAUDE.md.template +12 -0
- package/templates/dashboard/assets/app.css +399 -0
- package/templates/dashboard/assets/app.js +435 -0
- package/templates/dashboard/assets/i18n.js +47 -0
- package/templates/dashboard/assets/markdown-reader.js +116 -0
- package/templates/dashboard/assets/mermaid-renderer.js +59 -0
- package/templates/dashboard/index.html +18 -0
- package/templates/ledger/Harness-Ledger.md +39 -0
- package/templates/lessons/lesson-arch-process-change.md +47 -0
- package/templates/lessons/lesson-new-doc.md +50 -0
- package/templates/lessons/lesson-ref-change.md +45 -0
- package/templates/planning/execution_strategy.md +40 -0
- package/templates/planning/findings.md +24 -0
- package/templates/planning/long-running-task-contract.md +69 -0
- package/templates/planning/module_plan.md +36 -0
- package/templates/planning/module_session_prompt.md +39 -0
- package/templates/planning/optional/artifacts/INDEX.md +12 -0
- package/templates/planning/optional/references/INDEX.md +13 -0
- package/templates/planning/optional/slices/_slice-template/brief.md +27 -0
- package/templates/planning/optional/slices/_slice-template/evidence.md +9 -0
- package/templates/planning/optional/slices/_slice-template/review.md +31 -0
- package/templates/planning/progress.md +33 -0
- package/templates/planning/review.md +48 -0
- package/templates/planning/task_plan.md +86 -0
- package/templates/planning/visual_roadmap.md +28 -0
- package/templates/reference/adversarial-review-standard.md +28 -0
- package/templates/reference/ci-cd-standard.md +28 -0
- package/templates/reference/delivery-operating-model-standard.md +28 -0
- package/templates/reference/docs-library-standard.md +28 -0
- package/templates/reference/engineering-standard.md +29 -0
- package/templates/reference/execution-workflow-standard.md +29 -0
- package/templates/reference/harness-ledger-standard.md +26 -0
- package/templates/reference/long-running-task-standard.md +28 -0
- package/templates/reference/regression-ssot-governance.md +28 -0
- package/templates/reference/repo-governance-standard.md +29 -0
- package/templates/reference/review-routing-standard.md +29 -0
- package/templates/reference/testing-standard.md +28 -0
- package/templates/reference/walkthrough-standard.md +28 -0
- package/templates/reference/worktree-standard.md +28 -0
- package/templates/regression/Cadence-Ledger.md +41 -0
- package/templates/ssot/Delivery-SSoT.md +43 -0
- package/templates/ssot/Feature-SSoT.md +43 -0
- package/templates/ssot/Lessons-SSoT.md +44 -0
- package/templates/ssot/Module-Registry.md +43 -0
- package/templates/ssot/Regression-SSoT.md +51 -0
- package/templates/verifier/verifier-output.md +43 -0
- package/templates/walkthrough/Closeout-SSoT.md +43 -0
- package/templates/walkthrough/walkthrough-template.md +63 -0
- package/templates-zh-CN/AGENTS.md.template +92 -0
- package/templates-zh-CN/CLAUDE.md.template +12 -0
- package/templates-zh-CN/dashboard/assets/app.css +399 -0
- package/templates-zh-CN/dashboard/assets/app.js +435 -0
- package/templates-zh-CN/dashboard/assets/i18n.js +47 -0
- package/templates-zh-CN/dashboard/assets/markdown-reader.js +116 -0
- package/templates-zh-CN/dashboard/assets/mermaid-renderer.js +59 -0
- package/templates-zh-CN/dashboard/index.html +18 -0
- package/templates-zh-CN/ledger/Harness-Ledger.md +50 -0
- package/templates-zh-CN/lessons/lesson-arch-process-change.md +47 -0
- package/templates-zh-CN/lessons/lesson-new-doc.md +49 -0
- package/templates-zh-CN/lessons/lesson-ref-change.md +59 -0
- package/templates-zh-CN/planning/execution_strategy.md +37 -0
- package/templates-zh-CN/planning/findings.md +24 -0
- package/templates-zh-CN/planning/long-running-task-contract.md +118 -0
- package/templates-zh-CN/planning/module_plan.md +43 -0
- package/templates-zh-CN/planning/module_session_prompt.md +70 -0
- package/templates-zh-CN/planning/optional/artifacts/INDEX.md +13 -0
- package/templates-zh-CN/planning/optional/references/INDEX.md +13 -0
- package/templates-zh-CN/planning/optional/slices/_slice-template/brief.md +35 -0
- package/templates-zh-CN/planning/optional/slices/_slice-template/evidence.md +12 -0
- package/templates-zh-CN/planning/optional/slices/_slice-template/review.md +37 -0
- package/templates-zh-CN/planning/progress.md +29 -0
- package/templates-zh-CN/planning/review.md +69 -0
- package/templates-zh-CN/planning/task_plan.md +116 -0
- package/templates-zh-CN/planning/visual_roadmap.md +24 -0
- package/templates-zh-CN/reference/adversarial-review-standard.md +89 -0
- package/templates-zh-CN/reference/ci-cd-standard.md +72 -0
- package/templates-zh-CN/reference/delivery-operating-model-standard.md +79 -0
- package/templates-zh-CN/reference/docs-library-standard.md +59 -0
- package/templates-zh-CN/reference/engineering-standard.md +80 -0
- package/templates-zh-CN/reference/execution-workflow-standard.md +81 -0
- package/templates-zh-CN/reference/harness-ledger-standard.md +91 -0
- package/templates-zh-CN/reference/long-running-task-standard.md +156 -0
- package/templates-zh-CN/reference/regression-ssot-governance.md +82 -0
- package/templates-zh-CN/reference/repo-governance-standard.md +84 -0
- package/templates-zh-CN/reference/review-routing-standard.md +82 -0
- package/templates-zh-CN/reference/testing-standard.md +72 -0
- package/templates-zh-CN/reference/walkthrough-standard.md +83 -0
- package/templates-zh-CN/reference/worktree-standard.md +116 -0
- package/templates-zh-CN/regression/Cadence-Ledger.md +48 -0
- package/templates-zh-CN/ssot/Delivery-SSoT.md +60 -0
- package/templates-zh-CN/ssot/Feature-SSoT.md +49 -0
- package/templates-zh-CN/ssot/Lessons-SSoT.md +49 -0
- package/templates-zh-CN/ssot/Module-Registry.md +48 -0
- package/templates-zh-CN/ssot/Regression-SSoT.md +51 -0
- package/templates-zh-CN/verifier/verifier-output.md +38 -0
- package/templates-zh-CN/walkthrough/Closeout-SSoT.md +42 -0
- package/templates-zh-CN/walkthrough/walkthrough-template.md +62 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# 收口记录标准
|
|
2
|
+
|
|
3
|
+
## 职责
|
|
4
|
+
|
|
5
|
+
收口记录是每个 wave、feature、release 或非平凡任务完成后的交接文档,写给下一轮 agent、reviewer 和维护者看。它不复述每一行代码,而是说明本轮做了什么、为什么这样做、如何验证、还有什么 residual。
|
|
6
|
+
|
|
7
|
+
默认位置:
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
docs/10-WALKTHROUGH/YYYY-MM-DD-<feature-name>.md
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Closeout SSoT 固定位置:
|
|
14
|
+
|
|
15
|
+
```text
|
|
16
|
+
docs/10-WALKTHROUGH/Closeout-SSoT.md
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## 何时必须写
|
|
20
|
+
|
|
21
|
+
- 每个 feature、wave、release 或非平凡任务完成后。
|
|
22
|
+
- merge 后需要给后续 agent 留交接。
|
|
23
|
+
- 产生 review、regression、CI/CD、Lessons 或 Harness Ledger 回写。
|
|
24
|
+
- 用户要求阶段收口或交付总结。
|
|
25
|
+
|
|
26
|
+
没有 walkthrough 的非平凡任务视为未完整收口;如受控跳过,必须登记原因。
|
|
27
|
+
|
|
28
|
+
## 必须包含
|
|
29
|
+
|
|
30
|
+
1. **概要**:一句话说清楚本轮交付。
|
|
31
|
+
2. **改动范围**:模块、文件、配置、文档和外部系统影响。
|
|
32
|
+
3. **关键决策**:为什么选择当前方案,放弃了什么方案。
|
|
33
|
+
4. **验证结果**:测试、回归、CI/CD、smoke、browser inspection、evidence depth。
|
|
34
|
+
5. **审查结果**:引用 `review.md`,列出 material findings、no-finding 结论和 `accepted-risk`。
|
|
35
|
+
6. **残余风险**:没有残余也要写“无”;有残余则写 owner 和后续路径。
|
|
36
|
+
7. **Lessons 反思**:判断是否有可沉淀的 workflow、reference、checker 或工程规则。
|
|
37
|
+
8. **关联信息**:task plan、SSoT、Regression SSoT、Harness Ledger ID、commit、PR、release。
|
|
38
|
+
|
|
39
|
+
## 写作原则
|
|
40
|
+
|
|
41
|
+
- 重点写决策、证据和残余,不写流水账。
|
|
42
|
+
- 用路径和命令引用证据,不依赖聊天记录。
|
|
43
|
+
- 表格适合列验证、关联和 residual;段落适合解释判断。
|
|
44
|
+
- 关键决策要足够明确,避免后续 agent 推翻已验证选择。
|
|
45
|
+
- 如果本轮存在 skipped check,必须说明原因、影响和 owner。
|
|
46
|
+
|
|
47
|
+
## 收口单一事实源规则
|
|
48
|
+
|
|
49
|
+
以下 Harness Ledger row 必须有 Closeout SSoT row:
|
|
50
|
+
|
|
51
|
+
- `closed`
|
|
52
|
+
- `closed-with-residual`
|
|
53
|
+
- `closed-local-only`
|
|
54
|
+
|
|
55
|
+
Closeout SSoT 中:
|
|
56
|
+
|
|
57
|
+
- walkthrough 列写实际路径,或写受控跳过原因。
|
|
58
|
+
- Lessons 检查列写 `checked-created: L-YYYY-MM-DD-NNN` 或 `checked-none: <reason>`。
|
|
59
|
+
- 允许的跳过原因只有:`docs-only`、`no-runtime`、`superseded`、`historical-backfill`、`owner-deferred`。
|
|
60
|
+
|
|
61
|
+
## 经验沉淀反思规则
|
|
62
|
+
|
|
63
|
+
写 walkthrough 时必须加入“Lessons 反思”小节,并回答:
|
|
64
|
+
|
|
65
|
+
1. 本轮有没有发现 reference、workflow、checker 不够用或有误?
|
|
66
|
+
2. 有没有反复出现、跨页面、跨模块或跨阶段的共性问题?
|
|
67
|
+
3. 有没有下次 agent 也可能重复踩的坑?
|
|
68
|
+
|
|
69
|
+
任一答案为“有”时:
|
|
70
|
+
|
|
71
|
+
- 先在 `docs/01-GOVERNANCE/lessons/` 写 lesson 详情文档。
|
|
72
|
+
- 再在 Lessons SSoT 追加一行。
|
|
73
|
+
- Lessons SSoT 的详情文档列必须指向该详情文档。
|
|
74
|
+
|
|
75
|
+
三个答案都为“没有”时,Closeout SSoT 和 Harness Ledger 仍要记录:
|
|
76
|
+
|
|
77
|
+
```text
|
|
78
|
+
checked-none: <reason>
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## 收口要求
|
|
82
|
+
|
|
83
|
+
walkthrough 写完后,必须更新 Closeout SSoT 和 Harness Ledger。涉及回归、CI/CD、repo governance、reference 或 template 的,还要同步对应标准或 SSoT。
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
# 工作树标准
|
|
2
|
+
|
|
3
|
+
## 职责
|
|
4
|
+
|
|
5
|
+
本标准定义 git worktree 的使用规则,确保多 agent、长程任务和隔离开发不会污染主工作区。worktree 是执行隔离和交接边界,不是临时目录。
|
|
6
|
+
|
|
7
|
+
## 必须使用独立工作树的场景
|
|
8
|
+
|
|
9
|
+
- 跨多个模块的实现、重构或迁移。
|
|
10
|
+
- 会持续多轮迭代的任务。
|
|
11
|
+
- regression、smoke、checker、harness 语义改动。
|
|
12
|
+
- 当前主工作区已有未提交改动,且本轮任务不是继续这些改动。
|
|
13
|
+
- 使用可写 subagent worker。
|
|
14
|
+
- 多个任务需要并行推进。
|
|
15
|
+
|
|
16
|
+
## 可以不开的场景
|
|
17
|
+
|
|
18
|
+
- 纯只读分析。
|
|
19
|
+
- 明确的小文档修正。
|
|
20
|
+
- 用户明确要求直接在当前工作区修改。
|
|
21
|
+
- 当前任务就是接着本工作区已存在的同一批改动继续收尾。
|
|
22
|
+
|
|
23
|
+
不开 worktree 时,必须在 task plan 或 progress 中写明原因。
|
|
24
|
+
|
|
25
|
+
## 命名规则
|
|
26
|
+
|
|
27
|
+
worktree 目录推荐:
|
|
28
|
+
|
|
29
|
+
```text
|
|
30
|
+
.worktrees/<type>/<name>
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
分支名推荐:
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
<type>/<name>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
常用类型:
|
|
40
|
+
|
|
41
|
+
- `feat/`:新功能。
|
|
42
|
+
- `fix/`:缺陷修复。
|
|
43
|
+
- `refactor/`:重构。
|
|
44
|
+
- `test/`:测试相关。
|
|
45
|
+
- `docs/`:文档相关。
|
|
46
|
+
- `codex/`:agent 任务分支。
|
|
47
|
+
|
|
48
|
+
示例:
|
|
49
|
+
|
|
50
|
+
```text
|
|
51
|
+
.worktrees/feat/user-auth-oauth2 -> feat/user-auth-oauth2
|
|
52
|
+
.worktrees/fix/timeline-render-delay -> fix/timeline-render-delay
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## 记录规则
|
|
56
|
+
|
|
57
|
+
开始实现前,在 `task_plan.md` 或 `progress.md` 记录:
|
|
58
|
+
|
|
59
|
+
- worktree 路径。
|
|
60
|
+
- 分支名。
|
|
61
|
+
- owner。
|
|
62
|
+
- 允许修改范围。
|
|
63
|
+
- 与主工作区或其他 worktree 的冲突风险。
|
|
64
|
+
- 未开 worktree 的原因。
|
|
65
|
+
|
|
66
|
+
## 多代理并行规则
|
|
67
|
+
|
|
68
|
+
1. 每个 agent 只操作自己的 worktree。
|
|
69
|
+
2. 会改代码、测试、产品文档或 harness 文档的 subagent 必须升级为 worker,并使用独立 worktree / branch。
|
|
70
|
+
3. reviewer subagent 默认只读;如要修改,必须重新分配 worker 合同。
|
|
71
|
+
4. 共享文件修改需要 coordinator 串行协调。
|
|
72
|
+
5. merge 顺序由 coordinator、maintainer 或 release owner 决定。
|
|
73
|
+
6. 复杂冲突必须记录并上报,不允许静默覆盖。
|
|
74
|
+
|
|
75
|
+
## 可写执行者交接
|
|
76
|
+
|
|
77
|
+
Coordinator 启动 worker 前必须给出:
|
|
78
|
+
|
|
79
|
+
- worktree 路径。
|
|
80
|
+
- 分支名。
|
|
81
|
+
- 任务目录。
|
|
82
|
+
- write scope。
|
|
83
|
+
- 允许触碰的共享文件。
|
|
84
|
+
- required checks。
|
|
85
|
+
- handoff 格式。
|
|
86
|
+
|
|
87
|
+
Worker 收口前必须:
|
|
88
|
+
|
|
89
|
+
- 只在自己的 worktree 内修改。
|
|
90
|
+
- 提交自己的改动。
|
|
91
|
+
- handoff 写明 worktree path、branch、commit SHA、checks、residual。
|
|
92
|
+
|
|
93
|
+
Coordinator 必须:
|
|
94
|
+
|
|
95
|
+
- 只通过 commit / branch 集成 worker 结果。
|
|
96
|
+
- 不让多个 worker 在 coordinator 当前 checkout 留下混合未提交改动。
|
|
97
|
+
- 集成后运行最终 regression / smoke / required checks。
|
|
98
|
+
- 将偏离 worktree 规则的原因写入 progress、walkthrough 或 Harness Ledger。
|
|
99
|
+
|
|
100
|
+
## 清理规则
|
|
101
|
+
|
|
102
|
+
- merge 完成后删除对应 worktree。
|
|
103
|
+
- 已 merge 的分支按项目规则删除。
|
|
104
|
+
- 长期保留 worktree 必须在 progress 或 Delivery SSoT 中写原因。
|
|
105
|
+
- 不允许堆积无 owner、无任务、无状态的 worktree。
|
|
106
|
+
|
|
107
|
+
## 并发上限
|
|
108
|
+
|
|
109
|
+
项目必须在 `repo-governance-standard.md` 的 worktree 并发部分定义:
|
|
110
|
+
|
|
111
|
+
- 最大活跃 worktree 数。
|
|
112
|
+
- merge ordering rule。
|
|
113
|
+
- cleanup owner。
|
|
114
|
+
- shared file lock 或串行规则。
|
|
115
|
+
|
|
116
|
+
未定义并发上限时,不应启动多 agent 并行开发。
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# 回归节奏总账 - [项目名称]
|
|
2
|
+
|
|
3
|
+
> 本文件定义“什么改动触发哪些回归 gate”。Regression SSoT 记录 gate 本身;本文件记录触发规则和批次执行历史。
|
|
4
|
+
|
|
5
|
+
## 使用约定
|
|
6
|
+
|
|
7
|
+
- 新增、删除或调整 Regression Gate 时,同步更新本文件。
|
|
8
|
+
- 改动范围命中多条规则时,按并集触发,不做最小化猜测。
|
|
9
|
+
- 如果因为时间、环境或权限跳过触发项,必须写入批次日志和残余路由。
|
|
10
|
+
|
|
11
|
+
## 触发规则
|
|
12
|
+
|
|
13
|
+
| 改动范围 | 必跑 Gate | 可选 / 条件 Gate | 触发说明 | 负责人 |
|
|
14
|
+
| --- | --- | --- | --- | --- |
|
|
15
|
+
| [范围1,如 API 路由层] | RG-001, RG-003 | RG-010(仅涉及鉴权时) | [为什么需要这些 gate] | [负责人] |
|
|
16
|
+
| [范围2,如前端关键流程] | RG-005 | RG-006(移动端布局变化时) | [说明] | [负责人] |
|
|
17
|
+
| [范围3,如数据库 schema] | RG-001, RG-002, RG-004 | `none` | [说明] | [负责人] |
|
|
18
|
+
| 任何 merge 到主干 | 全量共享批次 | [项目自定义] | 主干合并前或合并后固定批次 | [负责人] |
|
|
19
|
+
|
|
20
|
+
## 共享回归批次日志
|
|
21
|
+
|
|
22
|
+
| 批次 ID | 日期 | 范围 | 触发条件 | 执行 Gate | 结果 | 证据 | 残余路由 | 下一检查点 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| SRB-001 | YYYY-MM-DD | 全量 | 初始化基线 | RG-001, RG-002 | pass | [命令、报告或链接] | `none` | SRB-002 after [条件] |
|
|
25
|
+
|
|
26
|
+
## 归档索引
|
|
27
|
+
|
|
28
|
+
> 批次日志超过 50 行或完成阶段收口时,移入 `docs/05-TEST-QA/_archive/Cadence-Ledger-archive-YYYY-QN.md`。
|
|
29
|
+
|
|
30
|
+
| 归档文件 | 覆盖批次 | 移入日期 | 说明 |
|
|
31
|
+
| --- | --- | --- | --- |
|
|
32
|
+
| `docs/05-TEST-QA/_archive/Cadence-Ledger-archive-YYYY-QN.md` | SRB-... 至 SRB-... | YYYY-MM-DD | [说明] |
|
|
33
|
+
|
|
34
|
+
## 结果状态
|
|
35
|
+
|
|
36
|
+
- `pass`:触发 gate 全部通过。
|
|
37
|
+
- `pass-with-residual`:通过主判断,但有已路由残余。
|
|
38
|
+
- `fail`:至少一个必跑 gate 失败。
|
|
39
|
+
- `partial`:只执行了部分触发 gate,必须说明缺口。
|
|
40
|
+
- `skipped-with-reason`:未执行,必须写明原因、负责人和补跑条件。
|
|
41
|
+
- `inconclusive`:执行了但证据不足,不能作为通过依据。
|
|
42
|
+
|
|
43
|
+
## 路由规则
|
|
44
|
+
|
|
45
|
+
1. `fail`、`partial`、`skipped-with-reason`、`inconclusive` 都必须路由到 Regression SSoT、任务计划或 Harness Ledger。
|
|
46
|
+
2. 全量共享批次的定义变化必须经过负责人确认,并记录在 Harness Ledger。
|
|
47
|
+
3. 发布前采用最近一次相关批次作为依据;过期证据不能直接复用。
|
|
48
|
+
4. 批次日志只记录执行事实,具体失败分析写入 Regression SSoT 或 review。
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# 交付 SSoT - [项目名称]
|
|
2
|
+
|
|
3
|
+
> 面向多人、多 agent、多仓或多模块交付的协调单一事实源。它回答“谁负责哪块、写哪里、依赖谁、按什么顺序集成”。
|
|
4
|
+
|
|
5
|
+
## 交付模型
|
|
6
|
+
|
|
7
|
+
| 字段 | 当前值 |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| 交付模型 | [solo-orchestrator / team-feature-lead / split-repo-contract / program-multi-repo / kanban-continuous / 其他] |
|
|
10
|
+
| 计划负责人 | [负责人] |
|
|
11
|
+
| 集成负责人 | [负责人] |
|
|
12
|
+
| 仓库拓扑 | [单仓 / 多仓 / 上下游仓 / 前后端分离] |
|
|
13
|
+
| 当前窗口 | [sprint、stage、release、日期范围] |
|
|
14
|
+
| 共享文件策略 | [coordinator-only / shared-lock-owner / contract-first / 其他] |
|
|
15
|
+
|
|
16
|
+
## 活跃交付块
|
|
17
|
+
|
|
18
|
+
| 工作块 ID | 功能 / 工作块 | 负责人 | Agent 范围 | 仓库 / 目录 | 依赖 | 共享文件 / 合同 | 集成顺序 | 验收 Gate | 状态 |
|
|
19
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
20
|
+
| DB-001 | [工作块名称] | [负责人] | [允许编辑范围] | `[repo 或 path]` | [DB-...] / `none` | [共享文件、接口合同或锁负责人] | 1 | [测试、review、Regression Gate] | planned |
|
|
21
|
+
|
|
22
|
+
## 跨仓 / 跨模块合同
|
|
23
|
+
|
|
24
|
+
| 合同 ID | 生产方 | 消费方 | 事实源 | 兼容规则 | 验证方式 | 状态 |
|
|
25
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
26
|
+
| DC-001 | [repo/module] | [repo/module] | [OpenAPI、类型、schema、文档路径] | [向后兼容、版本策略、迁移规则] | [命令、测试、人工验收] | draft |
|
|
27
|
+
|
|
28
|
+
## 集成队列
|
|
29
|
+
|
|
30
|
+
| 顺序 | 工作块 ID | PR / Branch / Worktree | 合并前必需项 | 集成负责人 | 状态 |
|
|
31
|
+
| --- | --- | --- | --- | --- | --- |
|
|
32
|
+
| 1 | DB-001 | `[branch 或 PR]` | [review、测试、合同验证] | [负责人] | waiting |
|
|
33
|
+
|
|
34
|
+
## 归档索引
|
|
35
|
+
|
|
36
|
+
> 已完成交付块在 release 或阶段收口后移入 `docs/09-PLANNING/_archive/Delivery-SSoT-archive-YYYY-QN.md`,活跃表只保留当前仍会影响集成决策的内容。
|
|
37
|
+
|
|
38
|
+
| 归档文件 | 覆盖范围 | 移入日期 | 说明 |
|
|
39
|
+
| --- | --- | --- | --- |
|
|
40
|
+
| `docs/09-PLANNING/_archive/Delivery-SSoT-archive-YYYY-QN.md` | DB-... 至 DB-... | YYYY-MM-DD | [说明] |
|
|
41
|
+
|
|
42
|
+
## 状态说明
|
|
43
|
+
|
|
44
|
+
- `planned`:已纳入交付计划,尚未分配或启动。
|
|
45
|
+
- `assigned`:已分配负责人和写入范围。
|
|
46
|
+
- `in-progress`:正在实现或验证。
|
|
47
|
+
- `blocked`:依赖、合同、权限、环境或审查阻塞。
|
|
48
|
+
- `ready-for-integration`:工作块完成,等待集成负责人合并。
|
|
49
|
+
- `integrating`:正在合并、解决冲突或跑集成验证。
|
|
50
|
+
- `integrated`:已集成,等待 release / closeout。
|
|
51
|
+
- `closed`:已完成交付收口。
|
|
52
|
+
- `superseded`:被其他工作块或合同取代。
|
|
53
|
+
|
|
54
|
+
## 路由规则
|
|
55
|
+
|
|
56
|
+
1. 工作块范围必须互不重叠;共享文件必须指定唯一负责人或走合同优先。
|
|
57
|
+
2. 依赖未满足时不得标记 `ready-for-integration`。
|
|
58
|
+
3. 跨仓接口变化必须有合同条目,不能只靠聊天说明。
|
|
59
|
+
4. 集成队列是合并顺序来源;临时改顺序必须更新本文件。
|
|
60
|
+
5. 完成后的证据和残余同步回 Harness Ledger 与 Closeout SSoT。
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# 功能 SSoT - [项目名称]
|
|
2
|
+
|
|
3
|
+
> 功能、wave、用户可见改动和实现残余的单一事实源。开始非平凡功能前先读本文件,收口后必须回写。
|
|
4
|
+
|
|
5
|
+
## 使用约定
|
|
6
|
+
|
|
7
|
+
- 只记录当前仍需要决策、执行、验证或追踪的功能项。
|
|
8
|
+
- 每个条目必须能指向任务计划、分支或 worktree、验证证据和残余负责人。
|
|
9
|
+
- 不在这里记录逐行 diff;实现细节写在任务计划、review、walkthrough 或 PR 中。
|
|
10
|
+
|
|
11
|
+
## 活跃功能
|
|
12
|
+
|
|
13
|
+
| 功能 ID | 功能 / Wave | 负责人 | 状态 | 任务计划 | 分支 / Worktree | 验收依据 | 残余路由 | 更新时间 |
|
|
14
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
15
|
+
| F-001 | [功能名称] | [负责人] | planned | `docs/09-PLANNING/TASKS/[task]/task_plan.md` | `[branch 或 worktree]` | [验收标准、Regression Gate 或证据路径] | `none` / [负责人 + 后续动作] | YYYY-MM-DD |
|
|
16
|
+
|
|
17
|
+
## 已完成索引
|
|
18
|
+
|
|
19
|
+
> 完成项只保留最近一批,便于冷启动。超过 20 行、release 收束或模块并行切换时,移入 `docs/09-PLANNING/_archive/Feature-SSoT-archive-YYYY-QN.md`。
|
|
20
|
+
|
|
21
|
+
| 功能 ID | 功能 / Wave | 完成日期 | 收口记录 | 关联 Harness ID |
|
|
22
|
+
| --- | --- | --- | --- | --- |
|
|
23
|
+
| F-001 | [功能名称] | YYYY-MM-DD | `docs/10-WALKTHROUGH/[file].md` | HL-YYYY-MM-DD-001 |
|
|
24
|
+
|
|
25
|
+
## 归档索引
|
|
26
|
+
|
|
27
|
+
| 归档文件 | 覆盖范围 | 移入日期 | 说明 |
|
|
28
|
+
| --- | --- | --- | --- |
|
|
29
|
+
| `docs/09-PLANNING/_archive/Feature-SSoT-archive-YYYY-QN.md` | F-... 至 F-... | YYYY-MM-DD | [说明] |
|
|
30
|
+
|
|
31
|
+
## 状态说明
|
|
32
|
+
|
|
33
|
+
- `planned`:已确认进入计划,但尚未开始实现。
|
|
34
|
+
- `in-progress`:正在实现或验证。
|
|
35
|
+
- `blocked`:被依赖、决策、权限、环境或失败回归阻塞;残余路由必须写清。
|
|
36
|
+
- `ready-for-review`:实现完成,等待审查或验证。
|
|
37
|
+
- `ready-for-release`:审查和回归完成,等待合并、发布或上线。
|
|
38
|
+
- `completed`:已完成并收口,保留索引用于追溯。
|
|
39
|
+
- `paused`:暂缓推进,保留负责人和恢复条件。
|
|
40
|
+
- `cancelled`:明确取消,说明原因和替代方案。
|
|
41
|
+
- `superseded`:被其他功能项取代,必须指向新功能 ID。
|
|
42
|
+
|
|
43
|
+
## 路由规则
|
|
44
|
+
|
|
45
|
+
1. 新功能进入实现前,必须有任务计划或明确的轻量豁免原因。
|
|
46
|
+
2. 状态进入 `completed` 前,必须有验证证据、残余路由和 closeout 记录。
|
|
47
|
+
3. 回归失败或覆盖面变化写入 Regression SSoT,不只写在本表备注里。
|
|
48
|
+
4. 可复用流程经验写入 Lessons SSoT,不在本表长篇展开。
|
|
49
|
+
5. 多人并行时,只由功能负责人或协调者更新状态字段。
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# 经验沉淀 SSoT - [项目名称]
|
|
2
|
+
|
|
3
|
+
> 可复用经验、流程修正和 reference 改动建议的单一事实源。这里管理 lesson 生命周期,详情必须写在独立文档中。
|
|
4
|
+
|
|
5
|
+
## 使用约定
|
|
6
|
+
|
|
7
|
+
- 写新 lesson 前,先完整阅读本表,确认是否已有相同或冲突建议。
|
|
8
|
+
- 表行不能单独存在;每条活跃 lesson 都必须有 `docs/01-GOVERNANCE/lessons/` 下的详情文档。
|
|
9
|
+
- lesson 只记录可复用的机制性改进,不记录一次性 bug、个人偏好或聊天摘要。
|
|
10
|
+
- 人批准前,pending lesson 不能被当成正式流程规则使用。
|
|
11
|
+
|
|
12
|
+
## 活跃 Lessons
|
|
13
|
+
|
|
14
|
+
| Lesson ID | 日期 | 来源 | 类型 | 目标 | 摘要 | 详情文档 | 状态 | 冲突 / 关联 |
|
|
15
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
16
|
+
| L-YYYY-MM-DD-001 | YYYY-MM-DD | `docs/10-WALKTHROUGH/[file].md` | ref-change | `docs/11-REFERENCE/[target].md` | [一句话摘要] | `docs/01-GOVERNANCE/lessons/L-YYYY-MM-DD-001-[slug].md` | pending | `none` / L-... |
|
|
17
|
+
|
|
18
|
+
## 已归档 Lessons
|
|
19
|
+
|
|
20
|
+
> 状态为 `merged`、`rejected`、`superseded` 的条目在阶段收口后移入 `docs/01-GOVERNANCE/_archive/Lessons-SSoT-archive-YYYY-QN.md`,本节保留索引。
|
|
21
|
+
|
|
22
|
+
| Lesson ID | 日期 | 处理结果 | 处理日期 | 归档文件 |
|
|
23
|
+
| --- | --- | --- | --- | --- |
|
|
24
|
+
| L-YYYY-MM-DD-001 | YYYY-MM-DD | merged / rejected / superseded | YYYY-MM-DD | `docs/01-GOVERNANCE/_archive/Lessons-SSoT-archive-YYYY-QN.md` |
|
|
25
|
+
|
|
26
|
+
## 状态说明
|
|
27
|
+
|
|
28
|
+
- `pending`:Agent 提出建议,等待人审查。
|
|
29
|
+
- `approved`:已批准,等待合入正式 reference、template 或 checker。
|
|
30
|
+
- `merged`:已合入正式文件,并有 commit 或变更证据。
|
|
31
|
+
- `rejected`:明确不采纳,保留原因。
|
|
32
|
+
- `superseded`:被后续 lesson 取代,必须指向新 Lesson ID。
|
|
33
|
+
- `needs-rework`:方向可能成立,但详情文档需要补充或重写。
|
|
34
|
+
|
|
35
|
+
## 类型说明
|
|
36
|
+
|
|
37
|
+
- `ref-change`:修改现有 reference、标准或规则文档。
|
|
38
|
+
- `new-doc`:新增 reference、模板、检查器说明或治理文档。
|
|
39
|
+
- `arch-change`:架构、模块边界、仓库结构或系统职责变化。
|
|
40
|
+
- `process-change`:任务流程、审查流程、回归节奏或 closeout 规则变化。
|
|
41
|
+
|
|
42
|
+
## 路由规则
|
|
43
|
+
|
|
44
|
+
1. 先写详情文档,再追加本表行;不要先占表行。
|
|
45
|
+
2. `详情文档` 字段必须是路径,不能写摘要。
|
|
46
|
+
3. `ref-change` 的详情文档必须包含基于当前正式文件的完整副本或明确 diff。
|
|
47
|
+
4. 多个 pending lesson 指向同一目标时,必须在“冲突 / 关联”中互相标记。
|
|
48
|
+
5. `merged` 后必须更新目标正式文件,并在详情文档或本表记录证据。
|
|
49
|
+
6. closeout 中的 Lessons 检查必须能追溯到本表行,或写明 `checked-none` 原因。
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# 模块注册表 - [项目名称]
|
|
2
|
+
|
|
3
|
+
> 并行模块开发的冷启动入口。它记录模块负责人、分支、写入范围、当前步骤和协调者同步状态。
|
|
4
|
+
|
|
5
|
+
## 使用约定
|
|
6
|
+
|
|
7
|
+
- 模块 worker 开始前先读本表,确认自己的写入范围和共享文件限制。
|
|
8
|
+
- worker 只更新自己模块内的计划、进度和交接文件;本注册表通常由协调者或明确的共享锁负责人更新。
|
|
9
|
+
- 写入范围必须互不重叠;有交集时先解决负责人和集成顺序,再启动开发。
|
|
10
|
+
|
|
11
|
+
## 活跃模块
|
|
12
|
+
|
|
13
|
+
| 模块 Key | 模块名称 | ID 前缀 | 分支 / Worktree | 当前步骤 | 状态 | 写入范围 | 负责人 | Coordinator 备注 | 更新时间 |
|
|
14
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
15
|
+
| example | 示例模块 | EXM | `codex/example` | EXM-01 | planned | `src/features/example/` | [负责人] | [需要同步的总表项或共享风险] | YYYY-MM-DD |
|
|
16
|
+
|
|
17
|
+
## 共享范围 / 锁
|
|
18
|
+
|
|
19
|
+
| 范围 | 当前负责人 | 允许动作 | 释放条件 | 状态 |
|
|
20
|
+
| --- | --- | --- | --- | --- |
|
|
21
|
+
| `[共享文件或目录]` | [负责人] | [只读 / 可编辑 / coordinator-only] | [测试、合并或交接条件] | [open / released / blocked] |
|
|
22
|
+
|
|
23
|
+
## 归档索引
|
|
24
|
+
|
|
25
|
+
> 完成、取消或合并进其他模块的条目移入 `MODULES/_archive/Module-Registry-archive-YYYY-QN.md`。
|
|
26
|
+
|
|
27
|
+
| 归档文件 | 覆盖模块 | 移入日期 | 说明 |
|
|
28
|
+
| --- | --- | --- | --- |
|
|
29
|
+
| `MODULES/_archive/Module-Registry-archive-YYYY-QN.md` | [模块 Key 范围] | YYYY-MM-DD | [说明] |
|
|
30
|
+
|
|
31
|
+
## 状态说明
|
|
32
|
+
|
|
33
|
+
- `planned`:模块已规划,尚未启动。
|
|
34
|
+
- `in-progress`:有活跃 worker 正在开发。
|
|
35
|
+
- `blocked`:依赖、共享范围、测试或 review 阻塞。
|
|
36
|
+
- `ready-for-sync`:模块工作完成,等待协调者同步总表或集成。
|
|
37
|
+
- `integrating`:正在合并、解决冲突或跑集成验证。
|
|
38
|
+
- `completed`:模块完成并已收口,可归档。
|
|
39
|
+
- `paused`:暂停推进,保留恢复条件。
|
|
40
|
+
- `cancelled`:取消模块,必须说明替代路径。
|
|
41
|
+
|
|
42
|
+
## 路由规则
|
|
43
|
+
|
|
44
|
+
1. 共享基础设施修改走 `_shared` 任务或共享锁,不归入普通模块范围。
|
|
45
|
+
2. 模块状态变化要有对应的 module plan、progress、review 或 evidence 证据。
|
|
46
|
+
3. `ready-for-sync` 不能直接等同完成;协调者同步后才能标记 `completed`。
|
|
47
|
+
4. 写入范围变化必须先更新本表,再让 worker 修改文件。
|
|
48
|
+
5. 模块完成后,收口证据回写 Harness Ledger、Closeout SSoT 和必要的 Feature / Regression SSoT。
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# 回归 SSoT - [项目名称]
|
|
2
|
+
|
|
3
|
+
> 回归覆盖面、固定 gate、证据深度和未关闭风险的单一事实源。新增 gate、改变触发规则或调整证据深度时必须更新。
|
|
4
|
+
|
|
5
|
+
## 活跃回归 Gate
|
|
6
|
+
|
|
7
|
+
| Gate ID | 覆盖面 | 主入口 | 触发场景 | 证据深度 | 上次验证 | 当前结果 | 负责人 | 残余路由 |
|
|
8
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
9
|
+
| RG-001 | [覆盖面名称] | `[命令、脚本、URL 或手工步骤]` | [哪些改动必须触发] | L2-local-smoke | YYYY-MM-DD | pass | [负责人] | `none` / [R-...] |
|
|
10
|
+
|
|
11
|
+
## 未关闭回归残余
|
|
12
|
+
|
|
13
|
+
| 残余 ID | Gate ID | 问题 | 严重级别 | 负责人 | 创建日期 | 路由 | 状态 |
|
|
14
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
15
|
+
|
|
16
|
+
不要保留示例残余。只有真实未关闭回归风险才新增行。
|
|
17
|
+
|
|
18
|
+
## 证据深度说明
|
|
19
|
+
|
|
20
|
+
| 等级 | 名称 | 说明 |
|
|
21
|
+
| --- | --- | --- |
|
|
22
|
+
| L1-tests | 自动化测试或静态检查通过,但没有运行时验证。 |
|
|
23
|
+
| L2-local-smoke | 本地环境完成关键路径冒烟。 |
|
|
24
|
+
| L3-live | 真实或准真实环境完成端到端验证。 |
|
|
25
|
+
| L4-browser-human-proxy | 浏览器或 UI 自动化覆盖接近真人操作的关键流程。 |
|
|
26
|
+
| L5-hard-gate | 结构化判定、可重复运行,并以非零退出或明确 verdict 阻断发布。 |
|
|
27
|
+
|
|
28
|
+
## 归档索引
|
|
29
|
+
|
|
30
|
+
> 废弃 gate、已关闭残余和历史批次移入 `docs/05-TEST-QA/_archive/Regression-SSoT-archive-YYYY-QN.md`。活跃表只保留仍会影响当前开发和发布判断的内容。
|
|
31
|
+
|
|
32
|
+
| 归档文件 | 覆盖范围 | 移入日期 | 说明 |
|
|
33
|
+
| --- | --- | --- | --- |
|
|
34
|
+
| `docs/05-TEST-QA/_archive/Regression-SSoT-archive-YYYY-QN.md` | RG-... / R-... | YYYY-MM-DD | [说明] |
|
|
35
|
+
|
|
36
|
+
## 结果状态
|
|
37
|
+
|
|
38
|
+
- `pass`:本次验证通过,无未路由问题。
|
|
39
|
+
- `pass-with-residual`:主路径通过,但存在已路由或已接受残余。
|
|
40
|
+
- `fail`:验证失败,阻塞相关合并、发布或收口。
|
|
41
|
+
- `inconclusive`:证据不足,不能作为通过依据。
|
|
42
|
+
- `paused`:gate 暂停执行,必须写清原因和恢复条件。
|
|
43
|
+
- `retired`:gate 已废弃,必须归档并说明替代覆盖面。
|
|
44
|
+
|
|
45
|
+
## 路由规则
|
|
46
|
+
|
|
47
|
+
1. Cadence Ledger 决定“什么时候触发哪些 gate”;本文件记录 gate 本身和当前事实。
|
|
48
|
+
2. 任何 `fail` 或 `inconclusive` 都必须写入未关闭回归残余,除非立即修复并有新证据。
|
|
49
|
+
3. 发布阻塞级问题必须同步到 Harness Ledger 和对应任务计划。
|
|
50
|
+
4. 接受风险必须有负责人、原因、期限或复查条件。
|
|
51
|
+
5. 提升或降低证据深度时,必须记录原因和最近一次验证证据。
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# 验证器输出(Verifier)
|
|
2
|
+
|
|
3
|
+
## 验证器元信息(Verifier Metadata)
|
|
4
|
+
|
|
5
|
+
- template_id: harness-verifier/v1
|
|
6
|
+
- verifier: [agent / tool / human]
|
|
7
|
+
- target: [task / PR / release]
|
|
8
|
+
- verdict: pass / fail / inconclusive
|
|
9
|
+
- date: YYYY-MM-DD
|
|
10
|
+
- confidence_basis: `self-check | verifier-backed | adversarial-reviewed | human-approved`
|
|
11
|
+
|
|
12
|
+
## 检查范围
|
|
13
|
+
|
|
14
|
+
[说明本次 verifier 检查了什么、没有检查什么、哪些证据被视为有效依据。]
|
|
15
|
+
|
|
16
|
+
## 已检查的不变量
|
|
17
|
+
|
|
18
|
+
| 不变量 | 证据 | 结果 |
|
|
19
|
+
| --- | --- | --- |
|
|
20
|
+
| 没有未关闭的发布阻塞级 P0 / P1 / material-P2 | review、命令、fixture、PR 或运行时验证 | pass / fail / inconclusive |
|
|
21
|
+
|
|
22
|
+
## 发现记录
|
|
23
|
+
|
|
24
|
+
| ID | Severity | Finding | Evidence Checked | Required Action | Open | Disposition | Blocks Release | Follow-up |
|
|
25
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
26
|
+
|
|
27
|
+
允许的 `处理方式`:`open`、`mitigated`、`closed`、`deferred`、`accepted-risk`、`not-reproducible`、`out-of-scope`。
|
|
28
|
+
不要保留示例 finding。若无发现,只保留表头,并在 `Final Confidence Basis` 中说明无发现依据。
|
|
29
|
+
|
|
30
|
+
## 残余路由
|
|
31
|
+
|
|
32
|
+
| 残余 | 负责人 | 到期 / 复查条件 | 是否接受风险 | 路由位置 |
|
|
33
|
+
| --- | --- | --- | --- | --- |
|
|
34
|
+
| [风险或未验证项] | [负责人] | [日期或条件] | yes / no | [任务、SSoT、issue、PR 或 Harness ID] |
|
|
35
|
+
|
|
36
|
+
## 最终信心依据(Final Confidence Basis)
|
|
37
|
+
|
|
38
|
+
[用中文说明为什么当前 verdict 成立。必须引用实际证据;如果 verdict 是 `inconclusive`,写清缺少什么证据以及下一步由谁补齐。]
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# 收口 SSoT - [项目名称]
|
|
2
|
+
|
|
3
|
+
> 任务收口证据的单一事实源。每个已关闭的 Harness Ledger 行都必须在这里有对应记录。
|
|
4
|
+
|
|
5
|
+
## 活跃收口
|
|
6
|
+
|
|
7
|
+
| Harness ID | 日期 | 任务 | 任务计划 | 审查报告 | 收口记录 | 证据 | 残余路由 | Lessons 检查 | 收口状态 |
|
|
8
|
+
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
9
|
+
| HL-YYYY-MM-DD-001 | YYYY-MM-DD | [任务名称] | `docs/09-PLANNING/TASKS/[task]/task_plan.md` | `review.md` / `n/a: [原因]` | `docs/10-WALKTHROUGH/[file].md` / 允许的跳过原因 | [测试、命令、review、运行时证据] | `none` / [负责人 + 路由] | `checked-created: L-YYYY-MM-DD-001` / `checked-none: [原因]` | [open / closed / blocked] |
|
|
10
|
+
|
|
11
|
+
## 允许的 walkthrough 跳过原因
|
|
12
|
+
|
|
13
|
+
- `walkthrough skipped-with-reason: docs-only`
|
|
14
|
+
- `walkthrough skipped-with-reason: no-runtime`
|
|
15
|
+
- `walkthrough skipped-with-reason: superseded`
|
|
16
|
+
- `walkthrough skipped-with-reason: historical-backfill`
|
|
17
|
+
- `walkthrough skipped-with-reason: owner-deferred`
|
|
18
|
+
|
|
19
|
+
## 状态说明
|
|
20
|
+
|
|
21
|
+
- `open`:收口材料仍在整理。
|
|
22
|
+
- `closed`:证据、残余和 Lessons 检查已完成。
|
|
23
|
+
- `closed-with-residual`:收口完成,但仍有已路由残余。
|
|
24
|
+
- `blocked`:缺少必要证据或负责人决策,暂不能收口。
|
|
25
|
+
- `superseded`:被后续 closeout 行取代。
|
|
26
|
+
|
|
27
|
+
## 归档索引
|
|
28
|
+
|
|
29
|
+
> 活跃收口表超过 50 行,或 release / wave 完成后,将已关闭条目移入 `docs/10-WALKTHROUGH/_archive/Closeout-SSoT-archive-YYYY-QN.md`。
|
|
30
|
+
|
|
31
|
+
| 归档文件 | 覆盖 Harness ID | 移入日期 | 说明 |
|
|
32
|
+
| --- | --- | --- | --- |
|
|
33
|
+
| `docs/10-WALKTHROUGH/_archive/Closeout-SSoT-archive-YYYY-QN.md` | HL-... 至 HL-... | YYYY-MM-DD | [说明] |
|
|
34
|
+
|
|
35
|
+
## 路由规则
|
|
36
|
+
|
|
37
|
+
1. 每个 `closed`、`closed-with-residual` 或 `closed-local-only` 的 Harness Ledger 行都必须在本文件有一行。
|
|
38
|
+
2. 实现类任务应写 walkthrough;跳过原因只用于受限场景,不用于省略收口。
|
|
39
|
+
3. `证据` 必须列出实际检查、冒烟、review、运行时验证或发布证据。
|
|
40
|
+
4. `残余路由` 必须写 `none`,或指向负责人、任务、Regression SSoT、Harness Ledger、issue 或接受风险记录。
|
|
41
|
+
5. `Lessons 检查` 只能写 `checked-created: L-YYYY-MM-DD-NNN` 或 `checked-none: [原因]`。
|
|
42
|
+
6. `checked-created` 必须同时存在 Lessons SSoT 行和 lesson 详情文档。
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# [Wave / 功能名称] 收口记录
|
|
2
|
+
|
|
3
|
+
## 概要
|
|
4
|
+
|
|
5
|
+
[用一两句话说明本轮交付完成了什么、影响哪些用户或系统能力。]
|
|
6
|
+
|
|
7
|
+
## 改动范围
|
|
8
|
+
|
|
9
|
+
- 代码范围:[包、模块、目录或 PR]
|
|
10
|
+
- 文档范围:[任务计划、SSoT、reference、walkthrough、lesson 等]
|
|
11
|
+
- 运行时范围:[服务、页面、接口、脚本、配置;不适用则写 `n/a`]
|
|
12
|
+
- 明确未覆盖:[本轮刻意没有处理的范围]
|
|
13
|
+
|
|
14
|
+
## 关键决策
|
|
15
|
+
|
|
16
|
+
| 决策 | 选择 | 原因 | 证据 / 链接 |
|
|
17
|
+
| --- | --- | --- | --- |
|
|
18
|
+
| [决策点] | [采用的方案] | [为什么这样做] | [任务计划、review、issue、commit 等] |
|
|
19
|
+
|
|
20
|
+
## 验证结果
|
|
21
|
+
|
|
22
|
+
| 验证项 | 命令 / 步骤 | 结果 | 证据 |
|
|
23
|
+
| --- | --- | --- | --- |
|
|
24
|
+
| [测试或检查名称] | `[命令或步骤]` | pass / fail / inconclusive / skipped-with-reason | [输出摘要、报告路径或截图路径] |
|
|
25
|
+
|
|
26
|
+
- 回归依据:[Regression SSoT Gate、Cadence Ledger 批次或 `n/a: [原因]`]
|
|
27
|
+
- 证据深度:[L1-tests / L2-local-smoke / L3-live / L4-browser-human-proxy / L5-hard-gate]
|
|
28
|
+
- 未能验证的内容:[无则写 `none`;否则写原因和补验负责人]
|
|
29
|
+
|
|
30
|
+
## 审查结果
|
|
31
|
+
|
|
32
|
+
- 审查报告:[review.md、PR review、人工确认或 `n/a: [原因]`]
|
|
33
|
+
- 关键审查发现:[无 / 已修复 / 已接受残余;列出 ID]
|
|
34
|
+
- 未关闭审查项:[无则写 `none`;否则写负责人和路由]
|
|
35
|
+
|
|
36
|
+
## 残余
|
|
37
|
+
|
|
38
|
+
| 残余 | 严重级别 | 负责人 | 路由 | 期限 / 复查条件 |
|
|
39
|
+
| --- | --- | --- | --- | --- |
|
|
40
|
+
| `none` | n/a | n/a | n/a | n/a |
|
|
41
|
+
|
|
42
|
+
## 经验沉淀反思(Lessons)
|
|
43
|
+
|
|
44
|
+
| 检查问题 | 结论 |
|
|
45
|
+
| --- | --- |
|
|
46
|
+
| 本轮是否暴露 reference、workflow、模板或 checker 的缺口? | [有 / 无,写一句理由] |
|
|
47
|
+
| 是否出现跨模块、跨阶段、跨 agent 的重复问题? | [有 / 无,写一句理由] |
|
|
48
|
+
| 下次 agent 是否可能在同类任务中重复踩坑? | [有 / 无,写一句理由] |
|
|
49
|
+
| Lessons 结果 | `checked-created: L-YYYY-MM-DD-NNN` / `checked-none: [一句话原因]` |
|
|
50
|
+
| Lessons 详情文档 | `docs/01-GOVERNANCE/lessons/[file].md` / `none` |
|
|
51
|
+
|
|
52
|
+
## 关联索引
|
|
53
|
+
|
|
54
|
+
- 任务计划:`docs/09-PLANNING/TASKS/[task]/task_plan.md`
|
|
55
|
+
- 进度记录:`docs/09-PLANNING/TASKS/[task]/progress.md`
|
|
56
|
+
- 审查报告:`docs/09-PLANNING/TASKS/[task]/review.md` / `n/a`
|
|
57
|
+
- 功能 SSoT:[F-...]
|
|
58
|
+
- Delivery SSoT:[DB-...] / `n/a`
|
|
59
|
+
- 回归 Gate:[RG-...] / `n/a`
|
|
60
|
+
- Harness Ledger:[HL-...]
|
|
61
|
+
- Closeout SSoT:[对应行]
|
|
62
|
+
- Commit / PR:[hash、branch 或 PR 链接]
|