coding-agent-harness 1.0.4 → 1.0.6
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 +7 -0
- package/CONTRIBUTING.md +2 -2
- package/LICENSE +661 -21
- package/LICENSE-EXCEPTION.md +37 -0
- package/README.md +96 -4
- package/README.zh-CN.md +75 -4
- package/SKILL.md +52 -51
- package/dist/build-dist.mjs +189 -0
- package/dist/check-dist-observation.mjs +428 -0
- package/dist/check-harness.mjs +489 -0
- package/dist/check-import-graph.mjs +511 -0
- package/dist/check-runtime-emit.mjs +304 -0
- package/dist/check-type-boundaries.mjs +139 -0
- package/dist/commands/dashboard-command.mjs +80 -0
- package/dist/commands/migration-command.mjs +152 -0
- package/dist/commands/preset-command.mjs +91 -0
- package/dist/commands/task-command.mjs +324 -0
- package/dist/harness.mjs +304 -0
- package/dist/lib/capability-registry.mjs +643 -0
- package/dist/lib/check-module-parallel.mjs +227 -0
- package/dist/lib/check-profiles.mjs +414 -0
- package/dist/lib/check-task-contracts.mjs +54 -0
- package/dist/lib/core-shared.mjs +254 -0
- package/dist/lib/dashboard-data.mjs +608 -0
- package/dist/lib/dashboard-workbench.mjs +334 -0
- package/dist/lib/dashboard-writer.mjs +200 -0
- package/dist/lib/git-status-summary.mjs +45 -0
- package/dist/lib/governance-index-generator.mjs +236 -0
- package/dist/lib/governance-sync.mjs +617 -0
- package/dist/lib/governance-table-boundary.mjs +161 -0
- package/{scripts → dist}/lib/harness-core.mjs +3 -0
- package/dist/lib/harness-paths.mjs +338 -0
- package/dist/lib/lesson-maintenance.mjs +139 -0
- package/dist/lib/markdown-utils.mjs +193 -0
- package/dist/lib/migration-planner.mjs +439 -0
- package/dist/lib/migration-support.mjs +317 -0
- package/dist/lib/phase-kind.mjs +46 -0
- package/dist/lib/preset-audit-contracts.mjs +40 -0
- package/dist/lib/preset-engine.mjs +516 -0
- package/dist/lib/preset-registry.mjs +831 -0
- package/dist/lib/preset-resource-contracts.mjs +83 -0
- package/dist/lib/review-confirm-git-gate.mjs +244 -0
- package/dist/lib/status-builder.mjs +87 -0
- package/{scripts → dist}/lib/status-dashboard-renderer.mjs +48 -47
- package/dist/lib/structure-migration.mjs +404 -0
- package/dist/lib/subagent-authorization-audit.mjs +198 -0
- package/dist/lib/task-audit-metadata.mjs +376 -0
- package/dist/lib/task-audit-migration.mjs +355 -0
- package/dist/lib/task-completion-consistency.mjs +29 -0
- package/dist/lib/task-index.mjs +133 -0
- package/dist/lib/task-lesson-candidates.mjs +239 -0
- package/dist/lib/task-lesson-sedimentation.mjs +300 -0
- package/dist/lib/task-lifecycle/create-task-helpers.mjs +84 -0
- package/dist/lib/task-lifecycle/phase-sync.mjs +82 -0
- package/dist/lib/task-lifecycle/review-confirm.mjs +93 -0
- package/dist/lib/task-lifecycle/review-gates.mjs +62 -0
- package/dist/lib/task-lifecycle/review-submission.mjs +52 -0
- package/dist/lib/task-lifecycle/scaffold-provenance.mjs +54 -0
- package/dist/lib/task-lifecycle/template-files.mjs +52 -0
- package/dist/lib/task-lifecycle/text-utils.mjs +26 -0
- package/dist/lib/task-lifecycle.mjs +611 -0
- package/dist/lib/task-metadata.mjs +116 -0
- package/dist/lib/task-review-model.mjs +474 -0
- package/dist/lib/task-scanner.mjs +439 -0
- package/dist/lib/task-tombstone-commands.mjs +125 -0
- package/dist/postinstall.mjs +14 -0
- package/dist/run-built-tests.mjs +84 -0
- package/docs-release/README.md +1 -0
- package/docs-release/architecture/overview.md +13 -13
- package/docs-release/architecture/overview.zh-CN.md +13 -13
- package/docs-release/architecture/system-explainer/01-system-overview.md +218 -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 +241 -0
- package/docs-release/architecture/system-explainer/05-data-flow.md +276 -0
- package/docs-release/architecture/system-explainer/06-preset-and-migration.md +300 -0
- package/docs-release/architecture/system-explainer/README.md +67 -0
- package/docs-release/architecture/system-explainer/en-US/01-system-overview.md +227 -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 +252 -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 +320 -0
- package/docs-release/architecture/system-explainer/en-US/README.md +70 -0
- package/docs-release/guides/agent-installation.en-US.md +22 -15
- package/docs-release/guides/agent-installation.md +23 -15
- package/docs-release/guides/contributing.md +3 -3
- package/docs-release/guides/contributing.zh-CN.md +3 -3
- package/docs-release/guides/document-audience-and-surfaces.en-US.md +10 -10
- package/docs-release/guides/document-audience-and-surfaces.md +10 -10
- package/docs-release/guides/legacy-migration-agent-prompt.md +25 -2
- package/docs-release/guides/legacy-migration-agent-prompt.zh-CN.md +25 -2
- package/docs-release/guides/migration-playbook.en-US.md +63 -1
- package/docs-release/guides/migration-playbook.md +59 -1
- package/docs-release/guides/parent-control-repository-pattern.en-US.md +25 -25
- package/docs-release/guides/parent-control-repository-pattern.md +25 -25
- package/docs-release/guides/preset-development.md +28 -4
- package/docs-release/guides/repository-operating-models.en-US.md +21 -21
- package/docs-release/guides/repository-operating-models.md +21 -21
- package/docs-release/guides/task-state-machine.en-US.md +35 -18
- package/docs-release/guides/task-state-machine.md +35 -18
- package/docs-release/guides/typescript-runtime-migration-closeout.md +96 -0
- package/examples/minimal-project/AGENTS.md +2 -2
- package/examples/minimal-project/coding-agent-harness/harness.yaml +14 -0
- package/examples/minimal-project/coding-agent-harness/planning/tasks/demo-task/INDEX.md +60 -0
- package/examples/minimal-project/coding-agent-harness/planning/tasks/demo-task/progress.md +11 -0
- package/examples/minimal-project/{docs/09-PLANNING/TASKS → coding-agent-harness/planning/tasks}/demo-task/review.md +1 -1
- package/package.json +22 -13
- package/presets/legacy-migration/preset.yaml +5 -5
- package/presets/legacy-migration/templates/execution_strategy.append.md +1 -1
- package/presets/lesson-sedimentation/preset.yaml +3 -3
- package/presets/module/preset.yaml +2 -2
- package/presets/module/templates/execution_strategy.append.md +1 -1
- package/presets/module/templates/task_plan.append.md +3 -3
- package/presets/standard-task/preset.yaml +2 -2
- package/references/adversarial-review-standard.md +2 -2
- package/references/agents-md-pattern.md +14 -14
- package/references/cadence-ledger.md +1 -1
- package/references/ci-cd-standard.md +1 -1
- package/references/delivery-operating-model-standard.md +4 -4
- package/references/docs-directory-standard.md +65 -159
- package/references/external-source-intake-standard.md +10 -10
- package/references/harness-ledger.md +6 -6
- package/references/legacy-12-phase-bootstrap.md +2 -2
- package/references/lessons-governance.md +15 -15
- package/references/long-running-task-standard.md +6 -6
- package/references/module-parallel-standard.md +34 -34
- package/references/planning-loop.md +6 -6
- package/references/project-onboarding-audit.md +4 -4
- package/references/regression-system.md +2 -2
- package/references/repo-governance-standard.md +4 -4
- package/references/review-routing-standard.md +1 -1
- package/references/ssot-governance.md +19 -19
- package/references/taskr-gap-analysis.md +5 -5
- package/references/walkthrough-closeout.md +14 -14
- package/references/worktree-parallel.md +3 -3
- package/skills/preset-creator/references/complex-task-skeleton/brief.md +11 -0
- package/skills/preset-creator/references/complex-task-skeleton/task_plan.md +1 -1
- package/skills/preset-creator/references/preset-package-skeleton.md +5 -5
- package/templates/AGENTS.md.template +31 -29
- package/templates/architecture/README.md +4 -4
- package/templates/architecture/service-catalog.md +2 -2
- package/templates/architecture/services/service-template.md +1 -1
- package/templates/dashboard/assets/app-src/00-state.js +12 -0
- package/templates/dashboard/assets/app-src/10-router.js +3 -0
- package/templates/dashboard/assets/app-src/20-overview.js +13 -3
- package/templates/dashboard/assets/app-src/35-task-detail.js +46 -6
- package/templates/dashboard/assets/app-src/40-modules.js +1 -1
- 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 +131 -0
- package/templates/dashboard/assets/app.css +583 -0
- package/templates/dashboard/assets/app.css.manifest.json +1 -0
- package/templates/dashboard/assets/app.js +585 -11
- package/templates/dashboard/assets/app.manifest.json +1 -0
- package/templates/dashboard/assets/css-src/00-foundation.css +4 -0
- package/templates/dashboard/assets/css-src/40-detail-modules-migration.css +62 -0
- package/templates/dashboard/assets/css-src/45-presets.css +516 -0
- package/templates/dashboard/assets/i18n.js +144 -4
- package/templates/development/README.md +10 -10
- package/templates/development/cross-repo-debugging.md +3 -3
- package/templates/development/external-context/service-template.md +2 -2
- package/templates/development/external-source-packs/README.md +4 -4
- package/templates/integrations/README.md +4 -4
- package/templates/integrations/api-contract.md +2 -2
- package/templates/integrations/event-contract.md +2 -2
- package/templates/integrations/third-party/vendor-template.md +2 -2
- package/templates/integrations/webhook-contract.md +2 -2
- package/templates/ledger/Harness-Ledger.md +1 -1
- package/templates/planning/INDEX.md +88 -0
- package/templates/planning/brief.md +1 -1
- package/templates/planning/module_session_prompt.md +2 -1
- package/templates/planning/review.md +0 -18
- package/templates/planning/task_plan.md +5 -44
- package/templates/planning/visual_map.md +13 -9
- package/templates/planning/visual_map.simple.md +52 -0
- package/templates/planning/walkthrough.md +47 -0
- package/templates/reference/docs-library-standard.md +8 -8
- package/templates/reference/execution-workflow-standard.md +29 -2
- package/templates/reference/external-source-intake-standard.md +15 -15
- package/templates/reference/repo-governance-standard.md +1 -1
- package/templates/ssot/Module-Registry.md +1 -1
- package/templates/walkthrough/walkthrough-template.md +2 -2
- package/templates-zh-CN/AGENTS.md.template +31 -29
- package/templates-zh-CN/CLAUDE.md.template +1 -1
- package/templates-zh-CN/architecture/README.md +4 -4
- package/templates-zh-CN/architecture/service-catalog.md +2 -2
- package/templates-zh-CN/architecture/services/service-template.md +1 -1
- package/templates-zh-CN/development/README.md +10 -10
- package/templates-zh-CN/development/cross-repo-debugging.md +3 -3
- package/templates-zh-CN/development/external-context/service-template.md +2 -2
- package/templates-zh-CN/development/external-source-packs/README.md +4 -4
- package/templates-zh-CN/integrations/README.md +4 -4
- package/templates-zh-CN/integrations/api-contract.md +2 -2
- package/templates-zh-CN/integrations/event-contract.md +2 -2
- package/templates-zh-CN/integrations/third-party/vendor-template.md +2 -2
- package/templates-zh-CN/integrations/webhook-contract.md +2 -2
- package/templates-zh-CN/ledger/Harness-Ledger.md +1 -1
- package/templates-zh-CN/lessons/lesson-arch-process-change.md +1 -1
- package/templates-zh-CN/lessons/lesson-new-doc.md +3 -3
- package/templates-zh-CN/lessons/lesson-ref-change.md +4 -4
- package/templates-zh-CN/planning/INDEX.md +87 -0
- package/templates-zh-CN/planning/brief.md +1 -1
- package/templates-zh-CN/planning/module_session_prompt.md +12 -11
- package/templates-zh-CN/planning/review.md +0 -18
- package/templates-zh-CN/planning/task_plan.md +3 -63
- 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/planning/walkthrough.md +47 -0
- package/templates-zh-CN/reference/adversarial-review-standard.md +2 -2
- package/templates-zh-CN/reference/delivery-operating-model-standard.md +3 -3
- package/templates-zh-CN/reference/docs-library-standard.md +28 -28
- package/templates-zh-CN/reference/execution-workflow-standard.md +32 -7
- package/templates-zh-CN/reference/external-source-intake-standard.md +16 -16
- package/templates-zh-CN/reference/harness-ledger-standard.md +6 -6
- package/templates-zh-CN/reference/regression-ssot-governance.md +2 -2
- package/templates-zh-CN/reference/repo-governance-standard.md +1 -1
- package/templates-zh-CN/reference/review-routing-standard.md +1 -1
- package/templates-zh-CN/reference/walkthrough-standard.md +7 -7
- package/templates-zh-CN/reference/worktree-standard.md +1 -1
- package/templates-zh-CN/regression/Cadence-Ledger.md +2 -2
- package/templates-zh-CN/ssot/Delivery-SSoT.md +3 -3
- package/templates-zh-CN/ssot/Module-Registry.md +3 -3
- package/templates-zh-CN/ssot/Regression-SSoT.md +2 -2
- package/templates-zh-CN/walkthrough/walkthrough-template.md +5 -5
- package/tsconfig.dist.json +16 -0
- package/tsconfig.json +25 -0
- package/tsconfig.runtime.json +24 -0
- package/examples/minimal-project/.harness-capabilities.json +0 -8
- package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/progress.md +0 -11
- package/scripts/check-harness.mjs +0 -508
- package/scripts/commands/dashboard-command.mjs +0 -67
- package/scripts/commands/migration-command.mjs +0 -96
- package/scripts/commands/preset-command.mjs +0 -73
- package/scripts/commands/task-command.mjs +0 -327
- package/scripts/harness.mjs +0 -287
- package/scripts/lib/capability-registry.mjs +0 -591
- package/scripts/lib/check-module-parallel.mjs +0 -237
- package/scripts/lib/check-profiles.mjs +0 -418
- package/scripts/lib/check-task-contracts.mjs +0 -47
- package/scripts/lib/core-shared.mjs +0 -196
- package/scripts/lib/dashboard-data.mjs +0 -412
- package/scripts/lib/dashboard-workbench.mjs +0 -257
- package/scripts/lib/dashboard-writer.mjs +0 -198
- package/scripts/lib/git-status-summary.mjs +0 -46
- package/scripts/lib/governance-index-generator.mjs +0 -174
- package/scripts/lib/governance-sync.mjs +0 -514
- package/scripts/lib/governance-table-boundary.mjs +0 -175
- package/scripts/lib/lesson-maintenance.mjs +0 -152
- package/scripts/lib/markdown-utils.mjs +0 -158
- package/scripts/lib/migration-planner.mjs +0 -478
- package/scripts/lib/migration-support.mjs +0 -312
- package/scripts/lib/preset-audit-contracts.mjs +0 -37
- package/scripts/lib/preset-engine.mjs +0 -497
- package/scripts/lib/preset-registry.mjs +0 -627
- package/scripts/lib/preset-resource-contracts.mjs +0 -83
- package/scripts/lib/review-confirm-git-gate.mjs +0 -248
- package/scripts/lib/subagent-authorization-audit.mjs +0 -196
- package/scripts/lib/task-completion-consistency.mjs +0 -16
- package/scripts/lib/task-index.mjs +0 -93
- package/scripts/lib/task-lesson-candidates.mjs +0 -242
- package/scripts/lib/task-lesson-sedimentation.mjs +0 -326
- package/scripts/lib/task-lifecycle/review-confirm.mjs +0 -101
- package/scripts/lib/task-lifecycle/review-gates.mjs +0 -70
- package/scripts/lib/task-lifecycle/text-utils.mjs +0 -24
- package/scripts/lib/task-lifecycle.mjs +0 -649
- package/scripts/lib/task-review-model.mjs +0 -469
- package/scripts/lib/task-scanner.mjs +0 -576
- package/scripts/lib/task-tombstone-commands.mjs +0 -140
- package/scripts/postinstall.mjs +0 -14
- package/templates/walkthrough/Closeout-SSoT.md +0 -43
- package/templates-zh-CN/walkthrough/Closeout-SSoT.md +0 -42
- /package/examples/minimal-project/{docs → coding-agent-harness/governance/generated}/Harness-Ledger.md +0 -0
- /package/examples/minimal-project/{docs/09-PLANNING/TASKS → coding-agent-harness/planning/tasks}/demo-task/brief.md +0 -0
- /package/examples/minimal-project/{docs/09-PLANNING/TASKS → coding-agent-harness/planning/tasks}/demo-task/execution_strategy.md +0 -0
- /package/examples/minimal-project/{docs/09-PLANNING/TASKS → coding-agent-harness/planning/tasks}/demo-task/findings.md +0 -0
- /package/examples/minimal-project/{docs/09-PLANNING/TASKS → coding-agent-harness/planning/tasks}/demo-task/lesson_candidates.md +0 -0
- /package/examples/minimal-project/{docs/09-PLANNING/TASKS → coding-agent-harness/planning/tasks}/demo-task/task_plan.md +0 -0
- /package/examples/minimal-project/{docs/09-PLANNING/TASKS → coding-agent-harness/planning/tasks}/demo-task/visual_map.md +0 -0
|
@@ -15,22 +15,26 @@ Include only diagrams that materially help a human or agent understand the task.
|
|
|
15
15
|
|
|
16
16
|
```mermaid
|
|
17
17
|
flowchart LR
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
INIT01["INIT-01 Scope and Context\nkind=init"] --> EXEC01["EXEC-01 Implementation Slice\nkind=execution"]
|
|
19
|
+
EXEC01 --> GATE01["GATE-01 Agent Review Submission\nkind=gate"]
|
|
20
|
+
GATE01 --> GATE02["GATE-02 Human Review Confirmation\nkind=gate"]
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
## Phase Table
|
|
24
24
|
|
|
25
|
-
| Phase ID | Depends On | State | Completion | Output | Required Evidence | Evidence Status | Blocking Risk | Owner / Handoff |
|
|
26
|
-
| --- | --- | --- | ---: | --- | --- | --- | --- | --- |
|
|
27
|
-
|
|
|
28
|
-
|
|
|
29
|
-
|
|
|
30
|
-
|
|
|
25
|
+
| Phase ID | Kind | Depends On | State | Completion | Output | Required Evidence | Exit Command | Actor | Evidence Status | Blocking Risk | Owner / Handoff |
|
|
26
|
+
| --- | --- | --- | --- | ---: | --- | --- | --- | --- | --- | --- | --- |
|
|
27
|
+
| INIT-01 | init | none | planned | 0 | Approved task plan and execution strategy | `task_plan.md`, `execution_strategy.md` | `harness task-start {{TASK_ID}}` | agent | missing | none | coordinator |
|
|
28
|
+
| EXEC-01 | execution | INIT-01 | planned | 0 | Scoped implementation, document update, and verification evidence | diff, commands, worker handoff, or artifact path | `harness task-phase {{TASK_ID}} EXEC-01 --state done --completion 100 --evidence present` | agent | missing | [risk] | [owner] |
|
|
29
|
+
| GATE-01 | gate | EXEC-01 | planned | 0 | Agent Review Submission | `review.md`, progress update, lesson routing | `harness task-review {{TASK_ID}} --message "<summary>"` | agent | missing | [risk] | coordinator |
|
|
30
|
+
| GATE-02 | gate | GATE-01 | planned | 0 | Human Review Confirmation | review packet and human confirmation | `harness review-confirm {{TASK_ID}} --confirm {{TASK_ID}}` | human | missing | agent must not perform human confirmation | human |
|
|
31
31
|
|
|
32
|
+
Allowed Kind: init, execution, gate.
|
|
33
|
+
Allowed Actor: agent, human, coordinator.
|
|
32
34
|
Allowed Evidence Status: missing, partial, present, waived.
|
|
33
35
|
|
|
36
|
+
Dashboard implementation completion is computed from non-skipped `execution` phases only. `init` and `gate` phases route lifecycle readiness and next actions; they must not make implementation progress look incomplete.
|
|
37
|
+
|
|
34
38
|
## Supporting Maps
|
|
35
39
|
|
|
36
40
|
Add optional diagrams only when useful:
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# [Task Name] - Visual Map
|
|
2
|
+
|
|
3
|
+
Visual Map Contract: v1.0
|
|
4
|
+
|
|
5
|
+
This file is the task's diagram collection. It is not only a phase roadmap.
|
|
6
|
+
Include only diagrams that materially help a human or agent understand the task.
|
|
7
|
+
|
|
8
|
+
## Map Index
|
|
9
|
+
|
|
10
|
+
| ID | Type | Purpose | Required For Understanding | Source Evidence | Promotion Candidate |
|
|
11
|
+
| --- | --- | --- | --- | --- | --- |
|
|
12
|
+
| MAP-01 | phase | Show the execution phases and dependencies | yes | `task_plan.md` | no |
|
|
13
|
+
|
|
14
|
+
## Phase Graph
|
|
15
|
+
|
|
16
|
+
```mermaid
|
|
17
|
+
flowchart LR
|
|
18
|
+
INIT01["INIT-01 Scope and Context\nkind=init"] --> EXEC01["EXEC-01 Implementation Slice\nkind=execution"]
|
|
19
|
+
EXEC01 --> GATE01["GATE-01 Direct Completion\nkind=gate"]
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Phase Table
|
|
23
|
+
|
|
24
|
+
| Phase ID | Kind | Depends On | State | Completion | Output | Required Evidence | Exit Command | Actor | Evidence Status | Blocking Risk | Owner / Handoff |
|
|
25
|
+
| --- | --- | --- | --- | ---: | --- | --- | --- | --- | --- | --- | --- |
|
|
26
|
+
| INIT-01 | init | none | planned | 0 | Task scope is clear enough to execute | `task_plan.md` | `harness task-start {{TASK_ID}}` | agent | missing | none | coordinator |
|
|
27
|
+
| EXEC-01 | execution | INIT-01 | planned | 0 | Simple implementation or documentation change is complete | diff, command, or artifact path | `harness task-phase {{TASK_ID}} EXEC-01 --state done --completion 100 --evidence present` | agent | missing | [risk] | [owner] |
|
|
28
|
+
| GATE-01 | gate | EXEC-01 | planned | 0 | Direct task completion | progress update and final evidence note | `harness task-complete {{TASK_ID}} --message "<summary>"` | agent | missing | [risk] | coordinator |
|
|
29
|
+
|
|
30
|
+
Allowed Kind: init, execution, gate.
|
|
31
|
+
Allowed Actor: agent, human, coordinator.
|
|
32
|
+
Allowed Evidence Status: missing, partial, present, waived.
|
|
33
|
+
|
|
34
|
+
Dashboard implementation completion is computed from non-skipped `execution` phases only. `init` and `gate` phases route lifecycle readiness and next actions; they must not make implementation progress look incomplete.
|
|
35
|
+
|
|
36
|
+
## Supporting Maps
|
|
37
|
+
|
|
38
|
+
Add optional diagrams only when useful:
|
|
39
|
+
|
|
40
|
+
- architecture: module, component, or service structure.
|
|
41
|
+
- sequence: frontend/backend/service/database/agent interaction.
|
|
42
|
+
- data-flow: data movement and ownership.
|
|
43
|
+
- state: state machine or lifecycle.
|
|
44
|
+
- topology: repo, service, worker, or worktree layout.
|
|
45
|
+
- decision: branch and tradeoff tree.
|
|
46
|
+
|
|
47
|
+
## Map Notes
|
|
48
|
+
|
|
49
|
+
- Use `missing` when no evidence has been checked.
|
|
50
|
+
- Use `partial` when some evidence exists but required checks remain.
|
|
51
|
+
- Use `present` when the phase has sufficient evidence for its current claim.
|
|
52
|
+
- Use `waived` only when the reason and owner are recorded in `progress.md`.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Walkthrough: {{TASK_TITLE}}
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Pending closeout.
|
|
6
|
+
|
|
7
|
+
## Scope
|
|
8
|
+
|
|
9
|
+
| Area | Details |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| Changed modules | pending |
|
|
12
|
+
| New files | pending |
|
|
13
|
+
| Removed files | pending |
|
|
14
|
+
| Out of scope | pending |
|
|
15
|
+
|
|
16
|
+
## Verification
|
|
17
|
+
|
|
18
|
+
| Check | Command or Procedure | Result | Evidence |
|
|
19
|
+
| --- | --- | --- | --- |
|
|
20
|
+
| pending | pending | not run | pending |
|
|
21
|
+
|
|
22
|
+
## Review Disposition
|
|
23
|
+
|
|
24
|
+
| Source | Material Findings | Resolution | Evidence |
|
|
25
|
+
| --- | --- | --- | --- |
|
|
26
|
+
| pending | pending | pending | `review.md` |
|
|
27
|
+
|
|
28
|
+
## Residual Risk
|
|
29
|
+
|
|
30
|
+
| Risk | Owner | Accepted? | Follow-up |
|
|
31
|
+
| --- | --- | --- | --- |
|
|
32
|
+
| pending | owner | pending | pending |
|
|
33
|
+
|
|
34
|
+
## Lessons Reflection
|
|
35
|
+
|
|
36
|
+
| Question | Answer |
|
|
37
|
+
| --- | --- |
|
|
38
|
+
| Was a lesson candidate reviewed? | pending |
|
|
39
|
+
| Lessons detail doc | `lesson_candidates.md` |
|
|
40
|
+
|
|
41
|
+
## Closeout Links
|
|
42
|
+
|
|
43
|
+
| Artifact | Link |
|
|
44
|
+
| --- | --- |
|
|
45
|
+
| Task plan | `task_plan.md` |
|
|
46
|
+
| Review | `review.md` |
|
|
47
|
+
| Progress | `progress.md` |
|
|
@@ -20,16 +20,16 @@ Use these directories as a low-entropy context system:
|
|
|
20
20
|
|
|
21
21
|
| Directory | Owns | Must Not Own | Required Schema Signals |
|
|
22
22
|
| --- | --- | --- | --- |
|
|
23
|
-
| `
|
|
24
|
-
| `
|
|
25
|
-
| `
|
|
23
|
+
| `coding-agent-harness/context/architecture/` | system structure, service responsibility, ownership, service catalog, critical flows, ADRs | endpoint payloads, mock instructions, task logs | `Context Doc Type`, `Source Evidence`, `Last Verified`, `Confidence` |
|
|
24
|
+
| `coding-agent-harness/context/development/` | local setup, codebase map, external development context, external source packs, mocks, stubs, cross-repo debugging | long-lived architecture facts, API payload contracts, undigested external document dumps | `Context Doc Type`, `Development Use`, `Do Not Assume`, `Mocks / Stubs`, `Source Evidence`, `Last Verified`, `Confidence` |
|
|
25
|
+
| `coding-agent-harness/context/integrations/` | API/event/webhook/SDK/third-party contracts, auth, payloads, errors, contract tests | global topology, service ownership catalog, debugging notes | `Context Doc Type`, `Contract Type`, `Auth`, `Payload`, `Errors`, `Contract Tests`, `Source Evidence`, `Last Verified`, `Confidence` |
|
|
26
26
|
|
|
27
27
|
Concrete split:
|
|
28
28
|
|
|
29
|
-
- `
|
|
30
|
-
- `
|
|
31
|
-
- `
|
|
32
|
-
- `
|
|
29
|
+
- `coding-agent-harness/context/architecture/service-catalog.md` gives only the service summary and links.
|
|
30
|
+
- `coding-agent-harness/context/integrations/<service>-api-contract.md` owns payload bodies, auth, errors, and contract tests.
|
|
31
|
+
- `coding-agent-harness/context/development/external-context/<service>.md` owns mocks, stubs, unsafe assumptions, and debug notes.
|
|
32
|
+
- `coding-agent-harness/context/development/external-source-packs/` owns external source indexes, digests, and projection status only; final facts must be written back to `context/{architecture,development,integrations}`.
|
|
33
33
|
|
|
34
34
|
## External Source Intake
|
|
35
35
|
|
|
@@ -51,7 +51,7 @@ Raw external material that has not been digested and projected must not become e
|
|
|
51
51
|
- Generated or private artifacts are excluded or explicitly separated.
|
|
52
52
|
- Cross-links point to the source of truth for each subject.
|
|
53
53
|
- New standards include closeout and evidence expectations.
|
|
54
|
-
- `
|
|
54
|
+
- `context/{architecture,development,integrations}` documents use the required schema signals and route misplaced content back to the correct directory.
|
|
55
55
|
- External source packs, when present, have a registry, digests, projection targets, and residuals.
|
|
56
56
|
|
|
57
57
|
## Closeout Expectations
|
|
@@ -13,16 +13,43 @@ Define the standard lifecycle for non-trivial work from intake through planning,
|
|
|
13
13
|
5. Run checks that match the risk surface before claiming completion.
|
|
14
14
|
6. Route material findings through review and do not bury unresolved issues in summaries.
|
|
15
15
|
7. Proactively commit each verified, meaningful slice. A completed slice should not remain only as unstaged or staged working-tree state unless the user explicitly asked to defer commits, checks failed, dirty ownership is unclear, or a documented blocker prevents a clean commit. Deferred commits require a no-commit reason, owner, and next step.
|
|
16
|
-
8. Use CLI lifecycle commands for mechanical Harness writes whenever available. CLI-owned writes use locked, allowlisted auto-commit
|
|
17
|
-
9.
|
|
16
|
+
8. Use CLI lifecycle commands for mechanical Harness writes whenever available. CLI-owned writes use locked, allowlisted auto-commit. `new-task` may preserve unrelated dirty files while committing only its own write scope; overlapping dirty paths or unrelated staged files still block the command. Other lifecycle commands may still require a clean tree. Agent-owned manual edits still need an explicit task commit or deferred-commit rationale.
|
|
17
|
+
9. Treat `visual_map.md` as the lifecycle phase map. `init` phases prepare work, `execution` phases define implementation completion, and `gate` phases define review, human confirmation, lesson routing, and closeout. Follow a phase `Exit Command` only when its `Actor` matches the current operator; agents must not perform `human` gates.
|
|
18
|
+
10. New task directories must carry machine-readable Task Audit Metadata in `INDEX.md`. The normal path is `Created By: harness new-task`; manual creation is allowed only as `manual-exception` with a concrete reason, and historical migration must use `historical-backfill`.
|
|
19
|
+
11. Close the loop by updating walkthrough, SSoT, regression, ledger, or docs artifacts when the work changes durable project knowledge. New non-simple tasks should keep `lesson_candidates.md` reviewable before human review confirmation.
|
|
20
|
+
|
|
21
|
+
## Task Package Structure
|
|
22
|
+
|
|
23
|
+
Use `harness new-task` instead of hand-copying task files. The CLI creates the selected budget file set and records task audit metadata in `INDEX.md` so `harness check` can validate it.
|
|
24
|
+
|
|
25
|
+
| Budget | Required Files |
|
|
26
|
+
| --- | --- |
|
|
27
|
+
| simple | `INDEX.md`, `brief.md`, `task_plan.md`, `visual_map.md`, `progress.md` |
|
|
28
|
+
| standard | simple files plus `execution_strategy.md`, `findings.md`, `lesson_candidates.md`, `review.md` |
|
|
29
|
+
| complex | standard files plus `references/INDEX.md`, `artifacts/INDEX.md` |
|
|
30
|
+
| long-running add-on | `long-running-task-contract.md` when `--long-running` is selected |
|
|
31
|
+
|
|
32
|
+
`INDEX.md` is the task package navigation page and audit metadata SSoT. It points to contract files and optional indexes but does not replace them.
|
|
33
|
+
|
|
34
|
+
Optional directories are created only when triggered:
|
|
35
|
+
|
|
36
|
+
- `references/INDEX.md`: task-local sources, external links, reviewer input packages, and preset-provided required reads.
|
|
37
|
+
- `artifacts/INDEX.md`: command output, screenshots, fixtures, generated reports, reviews, and other evidence.
|
|
38
|
+
- `lessons/LC-*.md`: task-local lesson detail artifacts for candidates marked `needs-promotion`.
|
|
39
|
+
- `slices/<slice-id>/`: multi-slice task material, when a task explicitly uses slice packets.
|
|
40
|
+
|
|
41
|
+
Preset packages must not add or replace root-level base scaffold documents. Presets may append controlled sections to fixed base documents or add isolated resources under `references/**` and `artifacts/**`. Resource rows belong only in `references/INDEX.md` and `artifacts/INDEX.md`; the root `INDEX.md` may show only system-rendered preset summary fields.
|
|
18
42
|
|
|
19
43
|
## Required Checklist
|
|
20
44
|
|
|
21
45
|
- Goal, scope, acceptance criteria, and constraints are written down.
|
|
46
|
+
- Task Audit Metadata is present in `INDEX.md`, or the manual/historical exception reason is explicit.
|
|
47
|
+
- The task package `INDEX.md` is present for new generated tasks.
|
|
22
48
|
- Current repo state and ownership boundaries were checked.
|
|
23
49
|
- Implementation notes identify changed surfaces.
|
|
24
50
|
- Required checks and evidence are captured.
|
|
25
51
|
- Verified slices have commit SHAs, or the no-commit reason, owner, and next step are written down.
|
|
52
|
+
- The current lifecycle gate in `visual_map.md` has either been executed or has a recorded blocker.
|
|
26
53
|
- Review status and material findings are recorded.
|
|
27
54
|
- Residuals are explicit and assigned.
|
|
28
55
|
- Closeout artifacts are updated when required.
|
|
@@ -7,10 +7,10 @@ This standard defines how agents receive, filter, organize, and project large ex
|
|
|
7
7
|
## Core Model
|
|
8
8
|
|
|
9
9
|
```text
|
|
10
|
-
external source material -> source pack index -> digest ->
|
|
10
|
+
external source material -> source pack index -> digest -> context/{architecture,development,integrations} execution projection
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
`
|
|
13
|
+
`context/architecture`, `context/development`, and `context/integrations` only hold facts that have been distilled enough to guide work. Raw external files, long documents, screenshots, exported chats, diagrams, and historical packets first go through `coding-agent-harness/context/development/external-source-packs/`.
|
|
14
14
|
|
|
15
15
|
## When To Ask The User
|
|
16
16
|
|
|
@@ -32,27 +32,27 @@ Recommended questions:
|
|
|
32
32
|
|
|
33
33
|
| Case | Storage |
|
|
34
34
|
| --- | --- |
|
|
35
|
-
| Only 1-4 stable external documents | No separate source pack is required; link them from `Source Evidence` in the relevant `
|
|
36
|
-
| More than 5 documents, multiple topics, or continuing growth | Create `
|
|
35
|
+
| Only 1-4 stable external documents | No separate source pack is required; link them from `Source Evidence` in the relevant `context/{architecture,development,integrations}` docs |
|
|
36
|
+
| More than 5 documents, multiple topics, or continuing growth | Create `coding-agent-harness/context/development/external-source-packs/<source-key>/` |
|
|
37
37
|
| Material contains secrets, customer data, private links, or cannot be committed | Do not copy raw files; record external location, owner, access condition, and digest only |
|
|
38
38
|
| Material is safe to commit | Raw files may go under `raw/`, but only digested facts may be projected into execution docs |
|
|
39
39
|
|
|
40
40
|
Recommended structure:
|
|
41
41
|
|
|
42
42
|
```text
|
|
43
|
-
|
|
43
|
+
coding-agent-harness/context/development/external-source-packs/<source-key>/
|
|
44
44
|
├── README.md # source index and projection status
|
|
45
45
|
├── digests/ # digest for each source or source group
|
|
46
46
|
├── raw/ # commit-safe raw material only
|
|
47
47
|
└── raw-index.md # path/URL/owner index when raw material cannot be committed
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
-
Do not replicate a full `
|
|
50
|
+
Do not replicate a full `context/{architecture,development,integrations}` tree for every microservice. The source pack is the intake layer. The stable execution entries remain:
|
|
51
51
|
|
|
52
|
-
- `
|
|
53
|
-
- `
|
|
54
|
-
- `
|
|
55
|
-
- `
|
|
52
|
+
- `coding-agent-harness/context/architecture/service-catalog.md`
|
|
53
|
+
- `coding-agent-harness/context/architecture/services/<service-key>.md`
|
|
54
|
+
- `coding-agent-harness/context/development/external-context/<service-key>.md`
|
|
55
|
+
- `coding-agent-harness/context/integrations/<contract>.md`
|
|
56
56
|
|
|
57
57
|
## Intake Flow
|
|
58
58
|
|
|
@@ -60,7 +60,7 @@ Do not replicate a full `03/04/06` tree for every microservice. The source pack
|
|
|
60
60
|
2. **Classify**: tag each source as architecture, development, integration, security, operations, product, or unknown.
|
|
61
61
|
3. **Sanitize**: check for secrets, tokens, customer data, personal information, internal accounts, and private links; keep non-committable material as references only.
|
|
62
62
|
4. **Digest**: extract facts, questions, unsafe assumptions, and evidence with the digest template.
|
|
63
|
-
5. **Project**: move stable facts into `
|
|
63
|
+
5. **Project**: move stable facts into `context/{architecture,development,integrations}`, then mark the source as projected in the source pack README.
|
|
64
64
|
6. **Verify**: use code evidence, contract tests, owner confirmation, or runtime checks where feasible; update `Last Verified` and `Confidence`.
|
|
65
65
|
7. **Residual**: keep unverified or conflicting facts in the source pack or in `Do Not Assume`; do not treat them as execution facts.
|
|
66
66
|
|
|
@@ -68,14 +68,14 @@ Do not replicate a full `03/04/06` tree for every microservice. The source pack
|
|
|
68
68
|
|
|
69
69
|
| Source Content | Projection Target |
|
|
70
70
|
| --- | --- |
|
|
71
|
-
| Service responsibility, upstream/downstream relationship, owner, data ownership, topology | `
|
|
72
|
-
| Local mocks, stubs, startup, debugging, cross-repo development behavior | `
|
|
73
|
-
| Endpoint, payload, auth, error, event, webhook, SDK, contract test | `
|
|
71
|
+
| Service responsibility, upstream/downstream relationship, owner, data ownership, topology | `coding-agent-harness/context/architecture/service-catalog.md` or `services/<service-key>.md` |
|
|
72
|
+
| Local mocks, stubs, startup, debugging, cross-repo development behavior | `coding-agent-harness/context/development/external-context/<service-key>.md` |
|
|
73
|
+
| Endpoint, payload, auth, error, event, webhook, SDK, contract test | `coding-agent-harness/context/integrations/<contract>.md` |
|
|
74
74
|
| Unconfirmed, conflicting, stale, or background-only material | Keep in source pack README / digest; do not project into execution docs |
|
|
75
75
|
|
|
76
76
|
## Prohibited
|
|
77
77
|
|
|
78
|
-
- Do not copy large external document sets directly into `
|
|
78
|
+
- Do not copy large external document sets directly into `context/architecture`, `context/development`, or `context/integrations`.
|
|
79
79
|
- Do not treat an external-source digest as verified fact without `Source Evidence`, `Last Verified`, and `Confidence`.
|
|
80
80
|
- Do not keep long raw excerpts, chat logs, or meeting transcripts inside execution docs.
|
|
81
81
|
- Do not commit secrets, production tokens, customer data, personal information, or non-public raw material.
|
|
@@ -12,7 +12,7 @@ Define repository-level rules for branches, commits, pull requests, ownership, g
|
|
|
12
12
|
4. Generated files, caches, build output, local runtime state, and secrets must be ignored or stored in the approved location.
|
|
13
13
|
5. Commit verified, meaningful slices proactively. Deferred commits require an explicit no-commit reason, owner, and next step.
|
|
14
14
|
6. Do not mix unrelated dirty changes into a task commit. CLI-owned Harness writes should use the local Harness commands so their locked, allowlisted auto-commit can protect shared governance files.
|
|
15
|
-
7. Pull requests must follow `
|
|
15
|
+
7. Pull requests must follow `coding-agent-harness/governance/standards/pull-request-standard.md` and describe intent, changed surfaces, version impact, checks run, checks not run, review status, references, and residual risk.
|
|
16
16
|
8. Required checks and material review findings block merge unless an approved exception is recorded.
|
|
17
17
|
9. Merge or release ownership must be explicit when several branches or workers contribute to the same outcome.
|
|
18
18
|
|
|
@@ -20,7 +20,7 @@ Track module ownership, write scope, branch or worktree assignment, and coordina
|
|
|
20
20
|
|
|
21
21
|
| ID | Module | Path Scope | Owner | Status | Branch or Worktree | Task Plan | Shared Files | Depends On | Handoff Evidence | Residual | Updated |
|
|
22
22
|
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
23
|
-
| M-000 | Module title | src/module/** or docs/area/** | owner | reserved | branch or worktree path |
|
|
23
|
+
| M-000 | Module title | src/module/** or docs/area/** | owner | reserved | branch or worktree path | coding-agent-harness/planning/modules/<module>/tasks/.../task_plan.md | none | none | pending | none | YYYY-MM-DD |
|
|
24
24
|
|
|
25
25
|
## Shared-File Register
|
|
26
26
|
|
|
@@ -56,8 +56,8 @@ One sentence describing what changed and why it matters.
|
|
|
56
56
|
|
|
57
57
|
| Artifact | Link |
|
|
58
58
|
| --- | --- |
|
|
59
|
-
| Task plan |
|
|
59
|
+
| Task plan | coding-agent-harness/planning/tasks/.../task_plan.md |
|
|
60
60
|
| Feature or Delivery SSoT | F-000 or D-000 |
|
|
61
61
|
| Harness Ledger | HL-YYYY-MM-DD-001 |
|
|
62
|
-
|
|
|
62
|
+
| Task-local closeout | walkthrough.md |
|
|
63
63
|
| Pull request or commit | link or hash |
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# [项目名称]
|
|
2
2
|
|
|
3
3
|
这个文件是 Agent 进入本仓库时的工作入口。它只负责说明硬规则和阅读路由;
|
|
4
|
-
详细规范放在 `
|
|
4
|
+
详细规范放在 `coding-agent-harness/governance/standards/`,不要把操作手册全部塞进这里。
|
|
5
5
|
|
|
6
6
|
## 项目概况
|
|
7
7
|
|
|
@@ -13,12 +13,13 @@
|
|
|
13
13
|
|
|
14
14
|
## 不可违反的规则
|
|
15
15
|
|
|
16
|
-
1. 遵守 `
|
|
16
|
+
1. 遵守 `coding-agent-harness/governance/standards/engineering-standard.md` 中的架构边界。
|
|
17
17
|
2. 不提交密钥、令牌、私有接口、用户隐私数据或生产凭据。
|
|
18
|
-
3.
|
|
18
|
+
3. 非平凡任务先用 Harness CLI 在 `coding-agent-harness/planning/tasks/` 下建立任务目录。
|
|
19
19
|
4. 声称完成前必须记录证据。
|
|
20
20
|
5. 保护无关工作区改动,不回滚任务范围外文件。
|
|
21
21
|
6. 已验证的、有意义的工作切片要主动提交。除非用户明确暂停提交、检查失败、dirty 归属不清,或安全边界导致无法形成干净提交,否则不要把已完成工作只留在未提交文件里;不能提交时,必须在 progress、handoff 或 closeout 中写明 no-commit reason、owner 和下一步。不要把无关 dirty 改动混入本任务提交。
|
|
22
|
+
7. 最终回复前检查当前任务 `visual_map.md` 的 gate 阶段。如果当前 `Exit Command` 的 `Actor` 是 `agent`,就执行它或记录 blocker。不得执行 `review-confirm` 这类 `human` gate,除非用户已经明确完成或委托了人工确认。
|
|
22
23
|
|
|
23
24
|
## 任务阅读矩阵
|
|
24
25
|
|
|
@@ -26,28 +27,28 @@
|
|
|
26
27
|
|
|
27
28
|
| 任务类型 | 先读文件 |
|
|
28
29
|
| --- | --- |
|
|
29
|
-
| 架构、核心模块、跨模块改动 | `
|
|
30
|
-
| 系统地图、服务职责、外部系统关系 | `
|
|
31
|
-
| 本地开发、mock、stub、跨仓调试 | `
|
|
32
|
-
| API、event、webhook、SDK、第三方契约 | `
|
|
33
|
-
| 测试、冒烟、回归 | `
|
|
34
|
-
| 开发执行、提交、PR、发布 | `
|
|
35
|
-
| 创建或推进任务 | `
|
|
30
|
+
| 架构、核心模块、跨模块改动 | `coding-agent-harness/governance/standards/engineering-standard.md` |
|
|
31
|
+
| 系统地图、服务职责、外部系统关系 | `coding-agent-harness/context/architecture/README.md`、`coding-agent-harness/context/architecture/service-catalog.md` |
|
|
32
|
+
| 本地开发、mock、stub、跨仓调试 | `coding-agent-harness/context/development/README.md`、`coding-agent-harness/context/development/codebase-map.md` |
|
|
33
|
+
| API、event、webhook、SDK、第三方契约 | `coding-agent-harness/context/integrations/README.md` 和相关契约文件 |
|
|
34
|
+
| 测试、冒烟、回归 | `coding-agent-harness/governance/standards/testing-standard.md`、`coding-agent-harness/governance/regression/Regression-SSoT.md` |
|
|
35
|
+
| 开发执行、提交、PR、发布 | `coding-agent-harness/governance/standards/execution-workflow-standard.md`、`coding-agent-harness/governance/standards/repo-governance-standard.md`、`coding-agent-harness/governance/standards/pull-request-standard.md`、`coding-agent-harness/governance/standards/ci-cd-standard.md` |
|
|
36
|
+
| 创建或推进任务 | `coding-agent-harness/planning/tasks/` 下的当前任务目录;如果本项目已配置 Harness CLI,使用 `harness new-task` / lifecycle 命令 |
|
|
36
37
|
| Brief、Execution Strategy、Visual Map | 当前任务的 `brief.md`、`execution_strategy.md`、`visual_map.md` |
|
|
37
|
-
| 长程任务 | `
|
|
38
|
-
| reviewer、subagent、对抗性审查 | `
|
|
39
|
-
| 多人协作、多仓交付、阶段性交付 | `
|
|
40
|
-
| 模块并行 | `
|
|
41
|
-
| 文档治理或 Harness 更新 | `
|
|
42
|
-
| 外部资料摄取 | `
|
|
43
|
-
| Regression SSoT 维护 | `
|
|
44
|
-
| 收口、walkthrough、Lessons | `
|
|
45
|
-
| Worktree、并行开发隔离 | `
|
|
38
|
+
| 长程任务 | 当前任务的 `long-running-task-contract.md`(如存在) |
|
|
39
|
+
| reviewer、subagent、对抗性审查 | 当前任务 `review.md`、`coding-agent-harness/governance/standards/review-routing-standard.md` |
|
|
40
|
+
| 多人协作、多仓交付、阶段性交付 | `coding-agent-harness/governance/standards/delivery-operating-model-standard.md`、`coding-agent-harness/planning/Delivery-SSoT.md` |
|
|
41
|
+
| 模块并行 | `coding-agent-harness/planning/modules/Module-Registry.md` 和相关 module plan |
|
|
42
|
+
| 文档治理或 Harness 更新 | `coding-agent-harness/governance/standards/docs-library-standard.md`、`coding-agent-harness/harness.yaml` |
|
|
43
|
+
| 外部资料摄取 | `coding-agent-harness/governance/standards/external-source-intake-standard.md` |
|
|
44
|
+
| Regression SSoT 维护 | `coding-agent-harness/governance/standards/regression-ssot-governance.md` |
|
|
45
|
+
| 收口、walkthrough、Lessons | `coding-agent-harness/governance/standards/walkthrough-standard.md`、当前任务 `walkthrough.md`、当前任务 `lesson_candidates.md`、`coding-agent-harness/governance/lessons/` |
|
|
46
|
+
| Worktree、并行开发隔离 | `coding-agent-harness/governance/standards/worktree-standard.md` |
|
|
46
47
|
|
|
47
48
|
## 标准执行流程
|
|
48
49
|
|
|
49
50
|
1. 先确认请求、范围和受影响文件。
|
|
50
|
-
2.
|
|
51
|
+
2. 非平凡任务先创建或更新任务计划,再改代码。优先使用 `harness new-task`;CLI 不可用时必须在任务 `INDEX.md` 保留任务审计元数据,并把 `Created By` 设为 `manual-exception`,写清具体原因。
|
|
51
52
|
3. 根据用户目标主动判断是否需要分工;用户不需要知道或主动要求 subagent。
|
|
52
53
|
4. 只读取任务阅读矩阵要求的 reference 文档。
|
|
53
54
|
5. 保留已有项目事实;新增上下文使用 merge / append,不覆盖历史。
|
|
@@ -55,8 +56,9 @@
|
|
|
55
56
|
7. 只在确认范围内实现。
|
|
56
57
|
8. 运行相关检查,并把证据写入任务记录。
|
|
57
58
|
9. 按需触发 review,关闭阻塞发现。
|
|
58
|
-
10.
|
|
59
|
-
11.
|
|
59
|
+
10. 按当前 `visual_map.md` lifecycle gate 的 `Exit Command` / `Actor` 收口。
|
|
60
|
+
11. 写入或更新 walkthrough 与 closeout 记录。
|
|
61
|
+
12. 只更新本任务实际触达的 SSoT / ledger;任务生命周期总账优先由 Harness CLI 生成,不手写任务行。
|
|
60
62
|
|
|
61
63
|
## 协作规则
|
|
62
64
|
|
|
@@ -70,14 +72,14 @@
|
|
|
70
72
|
|
|
71
73
|
## 单一事实源
|
|
72
74
|
|
|
73
|
-
- Harness Ledger:`
|
|
74
|
-
- Delivery SSoT:`
|
|
75
|
-
- Module Registry:`
|
|
76
|
-
- Regression SSoT:`
|
|
77
|
-
- Cadence Ledger:`
|
|
75
|
+
- Harness Ledger:`coding-agent-harness/governance/generated/Harness-Ledger.md`(任务生命周期总账,由 CLI 生成)
|
|
76
|
+
- Delivery SSoT:`coding-agent-harness/planning/Delivery-SSoT.md`
|
|
77
|
+
- Module Registry:`coding-agent-harness/planning/modules/Module-Registry.md`
|
|
78
|
+
- Regression SSoT:`coding-agent-harness/governance/regression/Regression-SSoT.md`
|
|
79
|
+
- Cadence Ledger:`coding-agent-harness/governance/regression/Cadence-Ledger.md`
|
|
78
80
|
- Lesson Candidates:当前任务 `lesson_candidates.md`
|
|
79
|
-
- Lesson Detail Docs:`
|
|
80
|
-
- Closeout
|
|
81
|
+
- Lesson Detail Docs:`coding-agent-harness/governance/lessons/`
|
|
82
|
+
- Generated Closeout Index:`coding-agent-harness/governance/generated/Closeout-Index.md`
|
|
81
83
|
|
|
82
84
|
## 本地命令
|
|
83
85
|
|
|
@@ -6,7 +6,7 @@ Claude Code 开始任何任务前应当:
|
|
|
6
6
|
|
|
7
7
|
1. 先读取 `AGENTS.md`。
|
|
8
8
|
2. 按 `AGENTS.md` 的任务阅读矩阵选择当前任务需要的文件。
|
|
9
|
-
3. 只加载必要的 `
|
|
9
|
+
3. 只加载必要的 `coding-agent-harness/governance/standards/` 标准文件和任务目录上下文。
|
|
10
10
|
4. 把本文件视为 Claude Code 兼容入口,而不是第二份项目规范。
|
|
11
11
|
|
|
12
12
|
不要在这里复制项目规则。长期有效的项目指令应维护在 `AGENTS.md` 及其引用文档中,避免两套规则逐渐漂移。
|
|
@@ -24,8 +24,8 @@ Keep the English field names and file names because CLI checks rely on them.
|
|
|
24
24
|
## Boundary
|
|
25
25
|
|
|
26
26
|
- 系统结构、服务责任、归属关系、关键流程放这里。
|
|
27
|
-
- Payload、endpoint 参数、event schema、SDK 细节放 `
|
|
28
|
-
- 本地启动、mock、stub、跨仓调试经验放 `
|
|
27
|
+
- Payload、endpoint 参数、event schema、SDK 细节放 `coding-agent-harness/context/integrations/`。
|
|
28
|
+
- 本地启动、mock、stub、跨仓调试经验放 `coding-agent-harness/context/development/`。
|
|
29
29
|
|
|
30
30
|
## Structure Contract
|
|
31
31
|
|
|
@@ -46,6 +46,6 @@ Keep the English field names and file names because CLI checks rely on them.
|
|
|
46
46
|
|
|
47
47
|
1. 这个服务负责什么、拥有什么数据。
|
|
48
48
|
2. 它和本仓有什么关系。
|
|
49
|
-
3. Agent 修改本仓前还需要读哪些 `
|
|
49
|
+
3. Agent 修改本仓前还需要读哪些 `context/development` 和 `context/integrations` 文档。
|
|
50
50
|
|
|
51
|
-
不要在 `
|
|
51
|
+
不要在 `context/architecture` 里堆接口字段、mock 指令或临时调试记录。那些内容分别放到 `context/integrations` 和 `context/development`。
|
|
@@ -12,6 +12,6 @@ Confidence: low
|
|
|
12
12
|
|
|
13
13
|
## Boundary Rule
|
|
14
14
|
|
|
15
|
-
这个目录只放服务责任、接口摘要和跳转链接。Payload、auth、error code、event schema 放 `
|
|
15
|
+
这个目录只放服务责任、接口摘要和跳转链接。Payload、auth、error code、event schema 放 `coding-agent-harness/context/integrations/`。
|
|
16
16
|
|
|
17
|
-
一个服务或微服务只占一行。只要该服务影响本仓开发或判断,就补 `services/<service-key>.md`、`
|
|
17
|
+
一个服务或微服务只占一行。只要该服务影响本仓开发或判断,就补 `services/<service-key>.md`、`coding-agent-harness/context/development/external-context/<service-key>.md` 和相关 `coding-agent-harness/context/integrations/<contract>.md` 链接。
|
|
@@ -9,7 +9,7 @@ Confidence: low
|
|
|
9
9
|
|
|
10
10
|
| Catalog Row | Development Context | Source Pack | Integration Contracts | Last Verified | Confidence |
|
|
11
11
|
| --- | --- | --- | --- | --- | --- |
|
|
12
|
-
| `
|
|
12
|
+
| `coding-agent-harness/context/architecture/service-catalog.md` | `coding-agent-harness/context/development/external-context/<service-key>.md` | `coding-agent-harness/context/development/external-source-packs/<source-key>/README.md` 或 N/A | `coding-agent-harness/context/integrations/<contract>.md` | unknown | low |
|
|
13
13
|
|
|
14
14
|
## Responsibility
|
|
15
15
|
|
|
@@ -14,8 +14,8 @@ Keep the English field names and section headings because CLI checks rely on the
|
|
|
14
14
|
## Boundary
|
|
15
15
|
|
|
16
16
|
- 本地启动、代码地图、外部服务开发摘要、mock、stub、跨仓调试放这里。
|
|
17
|
-
- 长期系统结构放 `
|
|
18
|
-
- API、event、webhook 等具体契约放 `
|
|
17
|
+
- 长期系统结构放 `coding-agent-harness/context/architecture/`。
|
|
18
|
+
- API、event、webhook 等具体契约放 `coding-agent-harness/context/integrations/`。
|
|
19
19
|
|
|
20
20
|
## Structure Contract
|
|
21
21
|
|
|
@@ -32,21 +32,21 @@ Keep the English field names and section headings because CLI checks rely on the
|
|
|
32
32
|
|
|
33
33
|
如果本仓依赖多个微服务,不要把所有外部知识写进一个大文档。只要某个外部服务会影响本仓开发或测试,就创建:
|
|
34
34
|
|
|
35
|
-
- `
|
|
36
|
-
- `
|
|
37
|
-
- `
|
|
35
|
+
- `coding-agent-harness/context/architecture/services/<service-key>.md`:该服务是什么、负责什么。
|
|
36
|
+
- `coding-agent-harness/context/development/external-context/<service-key>.md`:本仓开发时如何 mock、stub、调试它。
|
|
37
|
+
- `coding-agent-harness/context/integrations/<contract>.md`:具体 API/event/webhook 契约。
|
|
38
38
|
|
|
39
|
-
`
|
|
39
|
+
`context/development` 只放“开发时怎么处理这个外部服务”。不要在这里维护完整系统拓扑,也不要把 payload schema 塞进来。
|
|
40
40
|
|
|
41
41
|
## External Source Pack Rule
|
|
42
42
|
|
|
43
|
-
如果外部团队给了多份文档、截图、导出包、会议纪要或链接,不要直接塞进 `
|
|
43
|
+
如果外部团队给了多份文档、截图、导出包、会议纪要或链接,不要直接塞进 `context/{architecture,development,integrations}`。先读 `coding-agent-harness/governance/standards/external-source-intake-standard.md`,再决定是否创建 `external-source-packs/<source-key>/`。
|
|
44
44
|
|
|
45
45
|
`external-source-packs/` 只负责资料索引、摘要和投影状态。稳定结论必须回写到:
|
|
46
46
|
|
|
47
|
-
- `
|
|
48
|
-
- `
|
|
49
|
-
- `
|
|
47
|
+
- `coding-agent-harness/context/architecture/services/<service-key>.md`
|
|
48
|
+
- `coding-agent-harness/context/development/external-context/<service-key>.md`
|
|
49
|
+
- `coding-agent-harness/context/integrations/<contract>.md`
|
|
50
50
|
|
|
51
51
|
## External Context Index
|
|
52
52
|
|
|
@@ -8,9 +8,9 @@ Confidence: low
|
|
|
8
8
|
## Debug Flow
|
|
9
9
|
|
|
10
10
|
1. 先定位失败的 interface 或 flow。
|
|
11
|
-
2. 读 `
|
|
12
|
-
3. 读对应的 `
|
|
13
|
-
4. 读 `
|
|
11
|
+
2. 读 `coding-agent-harness/context/architecture/service-catalog.md`,确认归属和上下游服务。
|
|
12
|
+
3. 读对应的 `coding-agent-harness/context/integrations/` 契约。
|
|
13
|
+
4. 读 `coding-agent-harness/context/development/external-context/<service-key>.md`,使用其中的 mock、stub 和本地调试说明。
|
|
14
14
|
|
|
15
15
|
## Known Failure Modes
|
|
16
16
|
|
|
@@ -9,7 +9,7 @@ Confidence: low
|
|
|
9
9
|
|
|
10
10
|
| Service Profile | Source Pack | Integration Contracts | Last Verified | Confidence |
|
|
11
11
|
| --- | --- | --- | --- | --- |
|
|
12
|
-
| `
|
|
12
|
+
| `coding-agent-harness/context/architecture/services/<service-key>.md` | `coding-agent-harness/context/development/external-source-packs/<source-key>/README.md` 或 N/A | `coding-agent-harness/context/integrations/<contract>.md` | unknown | low |
|
|
13
13
|
|
|
14
14
|
## Development Use
|
|
15
15
|
|
|
@@ -30,4 +30,4 @@ Confidence: low
|
|
|
30
30
|
|
|
31
31
|
## Placement Rule
|
|
32
32
|
|
|
33
|
-
本文件只写本仓开发、测试、调试这个外部服务时需要的上下文。服务职责放 `
|
|
33
|
+
本文件只写本仓开发、测试、调试这个外部服务时需要的上下文。服务职责放 `context/architecture`,接口字段和 schema 放 `context/integrations`。
|
|
@@ -7,18 +7,18 @@ Confidence: low
|
|
|
7
7
|
|
|
8
8
|
## Purpose
|
|
9
9
|
|
|
10
|
-
这个目录只承载外部资料的摄取、索引和摘要。稳定事实必须投影到 `
|
|
10
|
+
这个目录只承载外部资料的摄取、索引和摘要。稳定事实必须投影到 `context/architecture`、`coding-agent-harness/context/development/external-context` 或 `context/integrations` 后才算进入 Harness 执行上下文。
|
|
11
11
|
|
|
12
|
-
先读 `
|
|
12
|
+
先读 `coding-agent-harness/governance/standards/external-source-intake-standard.md`,再新增资料包。
|
|
13
13
|
|
|
14
14
|
## Source Packs
|
|
15
15
|
|
|
16
|
-
| Source Key | External Project / Service | Raw Storage Mode | Source Count | Digest Status | Projected To
|
|
16
|
+
| Source Key | External Project / Service | Raw Storage Mode | Source Count | Digest Status | Projected To context/{architecture,development,integrations} | Owner | Last Verified | Confidence |
|
|
17
17
|
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
18
18
|
|
|
19
19
|
## Placement Rule
|
|
20
20
|
|
|
21
|
-
- 资料量小于 5 份时,优先在 `
|
|
21
|
+
- 资料量小于 5 份时,优先在 `context/{architecture,development,integrations}` 的 `Source Evidence` 中引用,不必建资料包。
|
|
22
22
|
- 资料很多、跨多个主题或会持续增长时,创建 `<source-key>/README.md` 和 `digests/`。
|
|
23
23
|
- `raw/` 只能放允许入仓、无密钥、无隐私、无客户数据的原始材料。
|
|
24
24
|
- 不能入仓的资料只记录外部路径、owner、访问条件和 digest。
|