coding-agent-harness 1.0.2 → 1.0.5
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 +32 -0
- package/CONTRIBUTING.md +98 -0
- package/LICENSE +661 -21
- package/LICENSE-EXCEPTION.md +37 -0
- package/README.md +244 -87
- package/README.zh-CN.md +77 -35
- package/SKILL.md +32 -24
- package/docs-release/README.md +9 -5
- package/docs-release/architecture/overview.md +17 -5
- package/docs-release/architecture/overview.zh-CN.md +9 -5
- package/docs-release/architecture/system-explainer/01-system-overview.md +217 -0
- package/docs-release/architecture/system-explainer/02-module-dependency.md +257 -0
- package/docs-release/architecture/system-explainer/03-task-lifecycle.md +304 -0
- package/docs-release/architecture/system-explainer/04-check-and-governance.md +239 -0
- package/docs-release/architecture/system-explainer/05-data-flow.md +276 -0
- package/docs-release/architecture/system-explainer/06-preset-and-migration.md +303 -0
- package/docs-release/architecture/system-explainer/README.md +67 -0
- package/docs-release/architecture/system-explainer/en-US/01-system-overview.md +226 -0
- package/docs-release/architecture/system-explainer/en-US/02-module-dependency.md +263 -0
- package/docs-release/architecture/system-explainer/en-US/03-task-lifecycle.md +319 -0
- package/docs-release/architecture/system-explainer/en-US/04-check-and-governance.md +250 -0
- package/docs-release/architecture/system-explainer/en-US/05-data-flow.md +290 -0
- package/docs-release/architecture/system-explainer/en-US/06-preset-and-migration.md +323 -0
- package/docs-release/architecture/system-explainer/en-US/README.md +70 -0
- package/docs-release/assets/dashboard-overview.png +0 -0
- package/docs-release/guides/agent-installation.en-US.md +39 -15
- package/docs-release/guides/agent-installation.md +43 -16
- package/docs-release/guides/contributing.md +100 -0
- package/docs-release/guides/contributing.zh-CN.md +99 -0
- package/docs-release/guides/document-audience-and-surfaces.en-US.md +3 -2
- package/docs-release/guides/document-audience-and-surfaces.md +3 -2
- package/docs-release/guides/full-legacy-migration-subagent-strategy.md +2 -2
- package/docs-release/guides/full-legacy-migration-subagent-strategy.zh-CN.md +2 -2
- package/docs-release/guides/legacy-migration-agent-prompt.md +0 -11
- package/docs-release/guides/legacy-migration-agent-prompt.zh-CN.md +0 -11
- package/docs-release/guides/migration-playbook.en-US.md +14 -15
- package/docs-release/guides/migration-playbook.md +14 -15
- package/docs-release/guides/parent-control-repository-pattern.en-US.md +7 -5
- package/docs-release/guides/parent-control-repository-pattern.md +7 -5
- package/docs-release/guides/preset-development.md +238 -0
- package/docs-release/guides/repository-operating-models.en-US.md +5 -4
- package/docs-release/guides/repository-operating-models.md +5 -4
- package/docs-release/guides/task-state-machine.en-US.md +224 -0
- package/docs-release/guides/task-state-machine.md +231 -0
- package/docs-release/intl/en-US.md +1 -1
- package/docs-release/intl/zh-CN.md +1 -1
- package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/INDEX.md +60 -0
- package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/findings.md +7 -0
- package/package.json +10 -4
- package/presets/legacy-migration/checks/preset-check.mjs +3 -0
- package/presets/legacy-migration/preset.yaml +134 -0
- package/presets/legacy-migration/scripts/plan-work-queue.mjs +4 -0
- package/presets/legacy-migration/scripts/scaffold-task-contracts.mjs +4 -0
- package/presets/legacy-migration/templates/execution_strategy.append.md +18 -0
- package/presets/legacy-migration/templates/findings.seed.md +17 -0
- package/presets/legacy-migration/templates/review.seed.md +12 -0
- package/presets/legacy-migration/templates/task_plan.append.md +9 -0
- package/presets/legacy-migration/templates/visual_map.append.md +12 -0
- package/presets/legacy-migration/workbench/dashboard-panels.yaml +2 -0
- package/presets/legacy-migration/workbench/migration-queue.schema.json +23 -0
- package/presets/lesson-sedimentation/preset.yaml +23 -0
- package/presets/lesson-sedimentation/templates/prompt.md +23 -0
- package/presets/module/preset.yaml +25 -0
- package/presets/module/templates/execution_strategy.append.md +8 -0
- package/presets/module/templates/task_plan.append.md +17 -0
- package/presets/standard-task/preset.yaml +31 -0
- package/presets/standard-task/templates/task_plan.append.md +7 -0
- package/references/adversarial-review-standard.md +2 -2
- package/references/agents-md-pattern.md +2 -2
- package/references/delivery-operating-model-standard.md +3 -3
- package/references/docs-directory-standard.md +6 -7
- package/references/harness-ledger.md +53 -96
- package/references/lessons-governance.md +88 -93
- package/references/module-parallel-standard.md +14 -14
- package/references/planning-loop.md +12 -6
- package/references/pull-request-standard.md +118 -0
- package/references/repo-governance-standard.md +11 -2
- package/references/review-routing-standard.md +7 -1
- package/references/ssot-governance.md +67 -59
- package/references/taskr-gap-analysis.md +600 -0
- package/references/walkthrough-closeout.md +7 -7
- package/scripts/check-harness.mjs +40 -301
- package/scripts/commands/dashboard-command.mjs +67 -0
- package/scripts/commands/migration-command.mjs +126 -0
- package/scripts/commands/preset-command.mjs +73 -0
- package/scripts/commands/task-command.mjs +328 -0
- package/scripts/harness.mjs +59 -260
- package/scripts/lib/capability-registry.mjs +82 -28
- package/scripts/lib/check-module-parallel.mjs +230 -0
- package/scripts/lib/check-profiles.mjs +90 -228
- package/scripts/lib/check-task-contracts.mjs +55 -0
- package/scripts/lib/core-shared.mjs +65 -2
- package/scripts/lib/dashboard-data.mjs +155 -24
- package/scripts/lib/dashboard-workbench.mjs +131 -12
- package/scripts/lib/dashboard-writer.mjs +20 -4
- package/scripts/lib/git-status-summary.mjs +46 -0
- package/scripts/lib/governance-index-generator.mjs +174 -0
- package/scripts/lib/governance-sync.mjs +611 -0
- package/scripts/lib/governance-table-boundary.mjs +175 -0
- package/scripts/lib/harness-core.mjs +6 -0
- package/scripts/lib/lesson-maintenance.mjs +36 -29
- package/scripts/lib/markdown-utils.mjs +33 -0
- package/scripts/lib/migration-planner.mjs +4 -6
- package/scripts/lib/migration-support.mjs +1 -1
- package/scripts/lib/phase-kind.mjs +50 -0
- package/scripts/lib/preset-audit-contracts.mjs +37 -0
- package/scripts/lib/preset-engine.mjs +494 -0
- package/scripts/lib/preset-registry.mjs +776 -0
- package/scripts/lib/preset-resource-contracts.mjs +83 -0
- package/scripts/lib/review-confirm-git-gate.mjs +248 -0
- package/scripts/lib/status-builder.mjs +88 -0
- package/scripts/lib/status-dashboard-renderer.mjs +105 -0
- package/scripts/lib/subagent-authorization-audit.mjs +196 -0
- package/scripts/lib/task-audit-metadata.mjs +385 -0
- package/scripts/lib/task-audit-migration.mjs +350 -0
- package/scripts/lib/task-completion-consistency.mjs +26 -0
- package/scripts/lib/task-index.mjs +93 -0
- package/scripts/lib/task-lesson-candidates.mjs +242 -0
- package/scripts/lib/task-lesson-sedimentation.mjs +326 -0
- package/scripts/lib/task-lifecycle/create-task-helpers.mjs +67 -0
- package/scripts/lib/task-lifecycle/phase-sync.mjs +88 -0
- package/scripts/lib/task-lifecycle/review-confirm.mjs +112 -0
- package/scripts/lib/task-lifecycle/review-gates.mjs +73 -0
- package/scripts/lib/task-lifecycle/review-submission.mjs +63 -0
- package/scripts/lib/task-lifecycle/scaffold-provenance.mjs +49 -0
- package/scripts/lib/task-lifecycle/template-files.mjs +53 -0
- package/scripts/lib/task-lifecycle/text-utils.mjs +24 -0
- package/scripts/lib/task-lifecycle.mjs +338 -477
- package/scripts/lib/task-metadata.mjs +118 -0
- package/scripts/lib/task-review-model.mjs +455 -0
- package/scripts/lib/task-scanner.mjs +193 -372
- package/scripts/lib/task-tombstone-commands.mjs +140 -0
- package/scripts/postinstall.mjs +14 -0
- package/skills/preset-creator/SKILL.md +179 -0
- package/skills/preset-creator/references/complex-task-skeleton/README.md +31 -0
- package/skills/preset-creator/references/complex-task-skeleton/artifacts/INDEX.md +12 -0
- package/skills/preset-creator/references/complex-task-skeleton/brief.md +43 -0
- package/skills/preset-creator/references/complex-task-skeleton/execution_strategy.md +71 -0
- package/skills/preset-creator/references/complex-task-skeleton/findings.md +24 -0
- package/skills/preset-creator/references/complex-task-skeleton/lesson_candidates.md +70 -0
- package/skills/preset-creator/references/complex-task-skeleton/long-running-task-contract.md +76 -0
- package/skills/preset-creator/references/complex-task-skeleton/progress.md +33 -0
- package/skills/preset-creator/references/complex-task-skeleton/references/INDEX.md +13 -0
- package/skills/preset-creator/references/complex-task-skeleton/review.md +107 -0
- package/skills/preset-creator/references/complex-task-skeleton/task_plan.md +111 -0
- package/skills/preset-creator/references/complex-task-skeleton/visual_map.md +50 -0
- package/skills/preset-creator/references/preset-package-skeleton.md +296 -0
- package/templates/AGENTS.md.template +24 -18
- package/templates/dashboard/assets/app-src/00-state.js +13 -0
- package/templates/dashboard/assets/app-src/10-router.js +5 -1
- package/templates/dashboard/assets/app-src/20-overview.js +18 -8
- package/templates/dashboard/assets/app-src/30-tasks.js +92 -246
- package/templates/dashboard/assets/app-src/35-task-detail.js +286 -0
- package/templates/dashboard/assets/app-src/45-review.js +241 -22
- package/templates/dashboard/assets/app-src/50-migration.js +24 -10
- package/templates/dashboard/assets/app-src/55-presets.js +375 -0
- package/templates/dashboard/assets/app-src/60-shared.js +3 -1
- package/templates/dashboard/assets/app-src/90-bindings.js +302 -29
- package/templates/dashboard/assets/app.css +1501 -376
- package/templates/dashboard/assets/app.css.manifest.json +10 -0
- package/templates/dashboard/assets/app.js +1240 -101
- package/templates/dashboard/assets/app.manifest.json +2 -0
- package/templates/dashboard/assets/css-src/00-foundation.css +346 -0
- package/templates/dashboard/assets/css-src/10-panels-flow.css +236 -0
- package/templates/dashboard/assets/css-src/20-briefs-controls.css +398 -0
- package/templates/dashboard/assets/css-src/30-task-index.css +739 -0
- package/templates/dashboard/assets/css-src/35-review-workspace.css +507 -0
- package/templates/dashboard/assets/css-src/40-detail-modules-migration.css +489 -0
- package/templates/dashboard/assets/css-src/45-presets.css +516 -0
- package/templates/dashboard/assets/css-src/50-responsive-overrides.css +551 -0
- package/templates/dashboard/assets/i18n.js +263 -23
- package/templates/ledger/Harness-Ledger.md +13 -25
- package/templates/lessons/lesson-arch-process-change.md +1 -1
- package/templates/lessons/lesson-new-doc.md +1 -1
- package/templates/lessons/lesson-ref-change.md +1 -1
- package/templates/planning/INDEX.md +87 -0
- package/templates/planning/brief.md +1 -1
- package/templates/planning/execution_strategy.md +31 -0
- package/templates/planning/lesson_candidates.md +18 -6
- package/templates/planning/module_session_prompt.md +1 -0
- package/templates/planning/optional/artifacts/INDEX.md +3 -3
- package/templates/planning/optional/references/INDEX.md +3 -3
- package/templates/planning/review.md +41 -0
- package/templates/planning/task_plan.md +5 -21
- package/templates/planning/visual_map.md +13 -9
- package/templates/planning/visual_map.simple.md +52 -0
- package/templates/reference/execution-workflow-standard.md +31 -3
- package/templates/reference/pull-request-standard.md +80 -0
- package/templates/reference/repo-governance-standard.md +7 -6
- package/templates/reference/review-routing-standard.md +6 -0
- package/templates/reference/walkthrough-standard.md +2 -1
- package/templates/verifier/verifier-output.md +1 -1
- package/templates-zh-CN/AGENTS.md.template +25 -19
- package/templates-zh-CN/ledger/Harness-Ledger.md +17 -40
- package/templates-zh-CN/planning/INDEX.md +87 -0
- package/templates-zh-CN/planning/brief.md +1 -1
- package/templates-zh-CN/planning/execution_strategy.md +30 -0
- package/templates-zh-CN/planning/lesson_candidates.md +18 -6
- package/templates-zh-CN/planning/module_session_prompt.md +1 -0
- package/templates-zh-CN/planning/review.md +41 -1
- package/templates-zh-CN/planning/task_plan.md +4 -44
- package/templates-zh-CN/planning/visual_map.md +14 -7
- package/templates-zh-CN/planning/visual_map.simple.md +48 -0
- package/templates-zh-CN/reference/adversarial-review-standard.md +1 -1
- package/templates-zh-CN/reference/docs-library-standard.md +1 -1
- package/templates-zh-CN/reference/execution-workflow-standard.md +33 -7
- package/templates-zh-CN/reference/harness-ledger-standard.md +2 -2
- package/templates-zh-CN/reference/pull-request-standard.md +106 -0
- package/templates-zh-CN/reference/repo-governance-standard.md +4 -3
- package/templates-zh-CN/reference/review-routing-standard.md +8 -1
- package/templates-zh-CN/reference/walkthrough-standard.md +3 -2
- package/templates-zh-CN/walkthrough/Closeout-SSoT.md +1 -1
- package/docs-release/assets/dashboard-overview-en.png +0 -0
- package/scripts/smoke-dashboard.mjs +0 -92
- package/scripts/test-harness.mjs +0 -1395
- package/templates/ssot/Feature-SSoT.md +0 -43
- package/templates/ssot/Lessons-SSoT.md +0 -44
- package/templates-zh-CN/ssot/Feature-SSoT.md +0 -49
- package/templates-zh-CN/ssot/Lessons-SSoT.md +0 -49
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Pull Request Standard
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
Every non-trivial PR must be reviewable without reading the full agent
|
|
6
|
+
conversation. The PR body is a handoff packet for maintainers: what changed,
|
|
7
|
+
why it changed, how it was verified, which version is affected, and what risks
|
|
8
|
+
remain.
|
|
9
|
+
|
|
10
|
+
## Required Shape
|
|
11
|
+
|
|
12
|
+
Use a bilingual PR body when the repository has Chinese and English users or
|
|
13
|
+
the task discussion is Chinese. English comes first for public GitHub readers,
|
|
14
|
+
then Simplified Chinese.
|
|
15
|
+
|
|
16
|
+
The PR body must include:
|
|
17
|
+
|
|
18
|
+
1. Summary / 摘要
|
|
19
|
+
2. What Changed / 改动内容
|
|
20
|
+
3. Version Impact / 版本影响
|
|
21
|
+
4. Verification / 验证
|
|
22
|
+
5. Review Evidence / 审查证据
|
|
23
|
+
6. Residual Risk / 残余风险
|
|
24
|
+
7. References / 关联材料
|
|
25
|
+
|
|
26
|
+
## Content Rules
|
|
27
|
+
|
|
28
|
+
- State the target version explicitly. If `package.json` changes from `1.0.3`
|
|
29
|
+
to `1.0.4`, say so in Version Impact.
|
|
30
|
+
- List changed surfaces by user-visible area or module, not by dumping every
|
|
31
|
+
file path.
|
|
32
|
+
- Verification must name the real commands, browser checks, CI runs, or
|
|
33
|
+
evidence artifacts. If a check was not run, say why.
|
|
34
|
+
- Review Evidence must mention self-review, subagent review, human review, or
|
|
35
|
+
code-quality review status. Release-blocking findings must be closed or
|
|
36
|
+
routed before merge.
|
|
37
|
+
- Residual Risk must distinguish accepted risk, deferred follow-up, and
|
|
38
|
+
unrelated local/private debt.
|
|
39
|
+
- References must link relevant task docs, SSoT rows, review files, commits,
|
|
40
|
+
issues, or PRs.
|
|
41
|
+
|
|
42
|
+
## Template
|
|
43
|
+
|
|
44
|
+
```markdown
|
|
45
|
+
## Summary
|
|
46
|
+
|
|
47
|
+
[One or two sentences explaining the intent and outcome.]
|
|
48
|
+
|
|
49
|
+
## What Changed
|
|
50
|
+
|
|
51
|
+
- [User-facing or module-level change.]
|
|
52
|
+
- [Governance, CLI, dashboard, docs, or template change.]
|
|
53
|
+
|
|
54
|
+
## Version Impact
|
|
55
|
+
|
|
56
|
+
- Package version: `[old]` -> `[new]`
|
|
57
|
+
- Release notes: [CHANGELOG entry or reason no release note is needed]
|
|
58
|
+
|
|
59
|
+
## Verification
|
|
60
|
+
|
|
61
|
+
- `[command]`: pass
|
|
62
|
+
- `[browser/runtime/CI evidence]`: pass
|
|
63
|
+
- Not run: [reason]
|
|
64
|
+
|
|
65
|
+
## Review Evidence
|
|
66
|
+
|
|
67
|
+
- Self-review: [summary]
|
|
68
|
+
- Additional review: [reviewer/subagent/human result]
|
|
69
|
+
- Blocking findings: [none / closed / routed]
|
|
70
|
+
|
|
71
|
+
## Residual Risk
|
|
72
|
+
|
|
73
|
+
- [none / accepted / deferred / unrelated debt]
|
|
74
|
+
|
|
75
|
+
## References
|
|
76
|
+
|
|
77
|
+
- Task: [path or issue]
|
|
78
|
+
- Review: [path or PR review]
|
|
79
|
+
- Evidence: [path, commit, screenshot, workflow, or dashboard]
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 摘要
|
|
84
|
+
|
|
85
|
+
[用一两句话说明目标和结果。]
|
|
86
|
+
|
|
87
|
+
## 改动内容
|
|
88
|
+
|
|
89
|
+
- [面向用户或模块级改动。]
|
|
90
|
+
- [治理、CLI、Dashboard、文档或模板改动。]
|
|
91
|
+
|
|
92
|
+
## 版本影响
|
|
93
|
+
|
|
94
|
+
- 包版本:`[旧版本]` -> `[新版本]`
|
|
95
|
+
- 发布说明:[CHANGELOG 条目或无需发布说明的原因]
|
|
96
|
+
|
|
97
|
+
## 验证
|
|
98
|
+
|
|
99
|
+
- `[命令]`:通过
|
|
100
|
+
- `[浏览器 / 运行时 / CI 证据]`:通过
|
|
101
|
+
- 未运行:[原因]
|
|
102
|
+
|
|
103
|
+
## 审查证据
|
|
104
|
+
|
|
105
|
+
- 自查:[摘要]
|
|
106
|
+
- 额外审查:[reviewer / subagent / human 结果]
|
|
107
|
+
- 阻塞发现:[无 / 已关闭 / 已路由]
|
|
108
|
+
|
|
109
|
+
## 残余风险
|
|
110
|
+
|
|
111
|
+
- [无 / 已接受 / 已延期 / 无关债务]
|
|
112
|
+
|
|
113
|
+
## 关联材料
|
|
114
|
+
|
|
115
|
+
- 任务:[路径或 issue]
|
|
116
|
+
- 审查:[路径或 PR review]
|
|
117
|
+
- 证据:[路径、commit、截图、workflow 或 dashboard]
|
|
118
|
+
```
|
|
@@ -46,7 +46,9 @@ docs/11-REFERENCE/ci-cd-standard.md
|
|
|
46
46
|
|
|
47
47
|
- PR required before merge: [yes / no]
|
|
48
48
|
- PR title format
|
|
49
|
-
- PR body requirements
|
|
49
|
+
- PR body requirements. Use `docs/11-REFERENCE/pull-request-standard.md` for
|
|
50
|
+
the required bilingual structure, version impact, verification, review
|
|
51
|
+
evidence, residual risk, and references.
|
|
50
52
|
- Required reviewers
|
|
51
53
|
- Required review type: [self / subagent / external / human]
|
|
52
54
|
- Merge method: [squash / merge commit / rebase]
|
|
@@ -91,7 +93,7 @@ Required fields:
|
|
|
91
93
|
- Branch pattern
|
|
92
94
|
- Ownership rule
|
|
93
95
|
- Subagent worker rule: each code-changing worker uses its own worktree / branch and hands off a commit SHA
|
|
94
|
-
- Checkpoint commit rule: verified, meaningful slices are committed proactively; deferred commits require an explicit reason
|
|
96
|
+
- Checkpoint commit rule: verified, meaningful slices are committed proactively; deferred commits require an explicit no-commit reason, owner, and next step
|
|
95
97
|
- Merge ordering rule
|
|
96
98
|
- Cleanup rule
|
|
97
99
|
|
|
@@ -131,3 +133,10 @@ Bootstrap is not complete unless repository governance is at least:
|
|
|
131
133
|
- Worktree concurrency: `implemented`
|
|
132
134
|
- Harness checker: passing or blocked-with-owner with explicit residual
|
|
133
135
|
- Checkpoint commit rule: `implemented`
|
|
136
|
+
- Dirty-state visibility: `implemented` means status/dashboard/checker expose dirty paths that can block CLI-owned auto-commit; unresolved dirty state must have an owner or no-commit reason
|
|
137
|
+
|
|
138
|
+
## Related Standards
|
|
139
|
+
|
|
140
|
+
- `docs/11-REFERENCE/pull-request-standard.md` — PR body structure, bilingual
|
|
141
|
+
requirements, version impact, verification, review evidence, residual risk,
|
|
142
|
+
and references.
|
|
@@ -38,16 +38,22 @@
|
|
|
38
38
|
|
|
39
39
|
## Subagent Worker Routing
|
|
40
40
|
|
|
41
|
+
任务开始时,先读取当前任务 `execution_strategy.md` 的 Subagent Authorization 和 Subagent Delegation Decision,并向用户说明当前授权状态和分工判断。用户不需要知道或主动要求 subagent;coordinator 必须从用户目标主动评估。
|
|
42
|
+
|
|
41
43
|
本标准默认把 subagent 当 reviewer:只读审查、写 `review.md`、报告 material findings。
|
|
44
|
+
Reviewer subagent 在单个任务内默认允许,可重复用于只读审查。
|
|
42
45
|
|
|
43
46
|
如果 subagent 被要求直接改代码、测试、产品文档或 harness 文档,它就不是 reviewer,
|
|
44
47
|
而是 worker。Worker 必须按 `worktree-parallel.md` / 项目级 `worktree-standard.md`
|
|
45
|
-
|
|
48
|
+
执行,并先在 `execution_strategy.md` 记录一次用户授权:
|
|
46
49
|
|
|
47
50
|
- coordinator 先分配独立 worktree / branch、任务目录和 write scope
|
|
48
51
|
- worker 只在自己的 worktree 内实现、验证并提交
|
|
49
52
|
- handoff 必须包含 worktree path、branch、commit SHA、checks、residual risks
|
|
50
53
|
- coordinator 负责 merge / conflict resolution / final gates
|
|
54
|
+
- 同一任务、同一范围、同一 worktree/branch 内可复用该授权;范围变化时重新请求授权
|
|
55
|
+
- 如果 worker subagent 对任务有明显帮助但尚未授权,coordinator 必须用白话主动向用户申请一次授权;可以直接说 worker subagent,但不要等用户知道或提醒使用 subagent
|
|
56
|
+
- 如果独立切片已经明显但精确文件路径还不清楚,先确认文件路径,然后在 implementation 前立刻申请独立执行助手授权
|
|
51
57
|
|
|
52
58
|
禁止把多个 worker 的未提交改动混在 coordinator 当前 checkout,再由 coordinator 一次性提交。
|
|
53
59
|
|
|
@@ -2,11 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
## 核心思路
|
|
4
4
|
|
|
5
|
-
SSoT(Single Source of Truth
|
|
5
|
+
SSoT(Single Source of Truth,单一事实源)保存当前事实。任务生命周期状态现在由任务本地文件承载,并由 Harness CLI 生成 `docs/Harness-Ledger.md`,避免 Agent 或人手写多张重复进度表。
|
|
6
6
|
|
|
7
|
-
##
|
|
8
|
-
|
|
9
|
-
长程项目需要四张 SSoT 保存当前事实,再用一张全局 Harness Ledger 记录每轮任务是否按 SOP 维护这些事实。
|
|
7
|
+
## 当前治理表
|
|
10
8
|
|
|
11
9
|
### Delivery SSoT(交付排期表)
|
|
12
10
|
|
|
@@ -16,15 +14,6 @@ SSoT(Single Source of Truth,单一事实源)是长程项目的命脉。没
|
|
|
16
14
|
- 职责:谁负责哪个 feature block、agent 能看哪些上下文、依赖和 merge 顺序是什么
|
|
17
15
|
- 规则:多人、多仓、split-repo、program、waterfall 或 kanban 团队流程必须维护
|
|
18
16
|
|
|
19
|
-
### Feature SSoT(实施排期表)
|
|
20
|
-
|
|
21
|
-
管理 feature / wave / implementation 的进度和 residual。
|
|
22
|
-
|
|
23
|
-
- 文件:`docs/09-PLANNING/Feature-SSoT.md`(按你的项目命名)
|
|
24
|
-
- 职责:哪些 feature 在做、做到哪了、还剩什么
|
|
25
|
-
- 规则:开始任何非平凡任务前先读,完成后必须回写
|
|
26
|
-
- 归档:Active 表只保留未完成或仍需操作的 feature;completed / superseded 历史行超过 20 条、release 收束、或启用模块并行切换时,必须移入 `docs/09-PLANNING/_archive/` 的 Feature SSoT 归档文件
|
|
27
|
-
|
|
28
17
|
### Regression SSoT(回归控制塔)
|
|
29
18
|
|
|
30
19
|
管理所有 regression surface 的状态、证据深度和残项。
|
|
@@ -33,79 +22,98 @@ SSoT(Single Source of Truth,单一事实源)是长程项目的命脉。没
|
|
|
33
22
|
- 职责:哪些回归面存在、每条的标准入口、当前证据深度、residual
|
|
34
23
|
- 规则:新增固定 gate 或 evidence depth 变化时必须更新
|
|
35
24
|
|
|
36
|
-
###
|
|
25
|
+
### Cadence Ledger(周期验证表)
|
|
26
|
+
|
|
27
|
+
管理需要周期性复查的回归、release、migration 或环境检查。
|
|
28
|
+
|
|
29
|
+
- 文件:`docs/05-TEST-QA/Cadence-Ledger.md`
|
|
30
|
+
- 职责:哪些检查需要按节奏重跑、最近一次证据是什么、下一次应该何时触发
|
|
31
|
+
- 规则:新增或改变周期性 gate 时必须更新
|
|
32
|
+
|
|
33
|
+
### Module Registry(模块登记表)
|
|
34
|
+
|
|
35
|
+
管理模块边界、owner、worktree 和写入范围。
|
|
36
|
+
|
|
37
|
+
- 文件:`docs/09-PLANNING/Module-Registry.md`
|
|
38
|
+
- 职责:模块 key、路径范围、负责人、状态、worktree、模块计划和依赖
|
|
39
|
+
- 规则:启用模块并行时必须维护;模块内步骤进度由 module plan / module visual map 的生成索引表达
|
|
40
|
+
|
|
41
|
+
### Closeout SSoT(收口表)
|
|
42
|
+
|
|
43
|
+
管理任务是否有 walkthrough、Lessons Check 和受控 skip reason。
|
|
44
|
+
|
|
45
|
+
- 文件:`docs/10-WALKTHROUGH/Closeout-SSoT.md`
|
|
46
|
+
- 职责:任务收口状态、walkthrough 路径、lesson 结果和 residual
|
|
47
|
+
- 规则:非平凡任务完成或关闭时必须维护
|
|
48
|
+
|
|
49
|
+
### Lessons Governance(经验沉淀)
|
|
37
50
|
|
|
38
51
|
管理 Agent 在开发过程中发现的经验、改进建议和规范演进。
|
|
39
52
|
|
|
40
|
-
-
|
|
41
|
-
-
|
|
42
|
-
- 规则:Walkthrough
|
|
53
|
+
- 文件:任务本地 `lesson_candidates.md` 与 `docs/01-GOVERNANCE/lessons/*.md`
|
|
54
|
+
- 职责:哪些经验值得沉淀、人工如何判定、哪些 lesson 已提升为详情文档
|
|
55
|
+
- 规则:Walkthrough 收口后检查是否有沉淀建议;promotion 前必须查重 candidate 和 detail doc
|
|
43
56
|
- 详细治理规范:`references/lessons-governance.md`
|
|
44
57
|
|
|
45
|
-
### Harness Ledger
|
|
58
|
+
### Harness Ledger(生成的任务生命周期总账)
|
|
46
59
|
|
|
47
|
-
|
|
60
|
+
管理任务生命周期的可扫描汇总。
|
|
48
61
|
|
|
49
62
|
- 文件:`docs/Harness-Ledger.md`
|
|
50
|
-
-
|
|
51
|
-
-
|
|
63
|
+
- 职责:从任务本地事实生成 scope、module、task、state、queues、plan、review、lesson、closeout、residual
|
|
64
|
+
- 规则:由 Harness CLI 生成;不要手写任务生命周期行
|
|
52
65
|
- 详细规范:`references/harness-ledger.md`
|
|
53
66
|
|
|
54
|
-
|
|
67
|
+
## Legacy 生命周期表
|
|
55
68
|
|
|
56
|
-
- Feature
|
|
57
|
-
- Delivery SSoT 不替代 Feature SSoT;它管交付组织和集成顺序,不管功能细节
|
|
58
|
-
- Regression SSoT 也不替代 Feature SSoT
|
|
59
|
-
- Lessons SSoT 不替代前两者,它管的是规范本身的演进
|
|
60
|
-
- Harness Ledger 不替代任何 SSoT,它只记录本轮任务是否维护了对应事实
|
|
61
|
-
- 四张 SSoT 和 Harness Ledger 必须各司其职,不能彼此吞并
|
|
69
|
+
`Feature-SSoT.md` 和 `Private-Feature-SSoT.md` 是旧版任务生命周期投影。当前版本不再创建或重建这些表;迁移旧项目时先归档,再用 `harness governance rebuild --archive --apply` 生成新的 Harness Ledger。
|
|
62
70
|
|
|
63
|
-
|
|
71
|
+
## 分工规则
|
|
64
72
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
-
|
|
68
|
-
-
|
|
69
|
-
|
|
70
|
-
|
|
73
|
+
- Delivery SSoT 不替代 Regression SSoT;它管交付组织和集成顺序。
|
|
74
|
+
- Regression SSoT 不替代 Closeout SSoT;它管验证面和证据深度。
|
|
75
|
+
- Closeout SSoT 不替代 task-local `lesson_candidates.md`;它只记录收口状态。
|
|
76
|
+
- Module Registry 不替代 module plan;它登记模块边界和 owner。
|
|
77
|
+
- Harness Ledger 不替代上述治理表;它只生成任务生命周期索引。
|
|
78
|
+
- 任务生命周期状态不要同时维护在旧 Feature 表和新 Ledger 中。
|
|
71
79
|
|
|
72
|
-
|
|
80
|
+
## 模块并行分工
|
|
73
81
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
- Active 表只保留不属于任何模块、且仍未完成的独立功能。
|
|
77
|
-
- Phase 历史、completed feature 明细、旧 task 路径明细移入 `docs/09-PLANNING/_archive/`。
|
|
78
|
-
- Feature SSoT 主文件只保留冻结边界、当前 active 指针、completed summary 和 archive index。
|
|
79
|
-
- 不允许把几百行历史明细继续堆在 Feature SSoT 底部作为“文件内归档”。
|
|
82
|
+
当项目启用模块并行开发(见 `references/module-parallel-standard.md`)时:
|
|
80
83
|
|
|
81
|
-
|
|
84
|
+
- Module Registry 管模块边界、owner、worktree 和写入范围。
|
|
85
|
+
- module plan / module visual map 管模块内步骤和拓扑索引。
|
|
86
|
+
- Harness Ledger 生成模块任务在全局任务生命周期中的位置。
|
|
87
|
+
- Delivery SSoT 只在需要跨模块、跨仓或多人交付编排时维护。
|
|
82
88
|
|
|
83
|
-
##
|
|
89
|
+
## 归档规则
|
|
84
90
|
|
|
85
|
-
|
|
91
|
+
每张治理表都必须区分 Active 与 Archive。Active 保存当前事实;Archive 保存可追溯历史。
|
|
86
92
|
|
|
87
|
-
|
|
|
93
|
+
| 表 | Active 保留 | 归档触发 | 归档位置 |
|
|
88
94
|
|------|-------------|----------|----------|
|
|
89
|
-
| Feature
|
|
95
|
+
| Legacy Feature / Private Feature 生命周期表 | 不再作为 active 表保留 | 迁移到 ledger-only 版本 | `docs/09-PLANNING/_archive/` |
|
|
90
96
|
| Delivery SSoT | 当前交付 block、集成顺序和阻塞项 | wave 结束或 completed/superseded blocks 超过 20 条 | `docs/09-PLANNING/_archive/` |
|
|
91
97
|
| Module Registry | 活跃 / 暂停不久的模块 | 模块 completed 或 paused 超过 60 天 | `docs/09-PLANNING/MODULES/_archive/<key>/` |
|
|
92
98
|
| Regression SSoT | active gates | gate 废弃或长期不再运行 | `docs/05-TEST-QA/_archive/` |
|
|
93
|
-
|
|
|
94
|
-
|
|
|
99
|
+
| Cadence Ledger | active cadence checks | cadence 废弃或合并到其他 gate | `docs/05-TEST-QA/_archive/` |
|
|
100
|
+
| Closeout SSoT | 当前 closeout 索引 | closed/superseded 超过保留窗口 | `docs/10-WALKTHROUGH/_archive/` |
|
|
101
|
+
| Lesson detail docs | pending / approved / superseded 详情文档 | merged/rejected 超过 20 条 | `docs/01-GOVERNANCE/_archive/` |
|
|
102
|
+
| Harness Ledger | 当前生成索引 | 重新生成前 archive 旧快照 | `docs/01-GOVERNANCE/_archive/` 或迁移会话 archive |
|
|
95
103
|
|
|
96
104
|
归档不改变 ID,不删除证据文件;Active 文件必须留下 archive index 或指向归档文件。
|
|
97
105
|
|
|
98
|
-
## SSoT 与 Planning
|
|
106
|
+
## SSoT 与 Planning 的绑定
|
|
99
107
|
|
|
100
|
-
-
|
|
101
|
-
-
|
|
102
|
-
-
|
|
103
|
-
-
|
|
108
|
+
- 每个非平凡任务必须有任务本地 plan / progress / review / lesson / closeout 事实。
|
|
109
|
+
- Harness Ledger 从这些事实生成,不要求人手写任务生命周期表。
|
|
110
|
+
- 非任务生命周期治理表只在本轮实际触达对应事实时更新。
|
|
111
|
+
- 如果生成索引不对,修复 scanner、generator 或任务本地事实。
|
|
104
112
|
|
|
105
113
|
## 常见反模式
|
|
106
114
|
|
|
107
|
-
-
|
|
108
|
-
- 只更新
|
|
109
|
-
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
115
|
+
- 同时维护旧 Feature 生命周期表和生成 Ledger
|
|
116
|
+
- 只更新 task plan,不刷新生成索引
|
|
117
|
+
- 手写生成表来绕过 scanner 问题
|
|
118
|
+
- 把 Regression / Delivery / Closeout 的详细治理事实复制进 Harness Ledger
|
|
119
|
+
- 建多个平行的进度总览,导致 Agent 不知道哪张表可信
|