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
|
@@ -7,6 +7,8 @@ window.HarnessI18n = {
|
|
|
7
7
|
"reviewQueue": "Lifecycle Queue Workbench",
|
|
8
8
|
"moduleView": "Modules",
|
|
9
9
|
"readiness": "Readiness",
|
|
10
|
+
"snapshotStatus": "Snapshot status",
|
|
11
|
+
"snapshot": "Snapshot",
|
|
10
12
|
"tasks": "Tasks",
|
|
11
13
|
"blockers": "Blockers",
|
|
12
14
|
"advice": "Advice",
|
|
@@ -23,6 +25,8 @@ window.HarnessI18n = {
|
|
|
23
25
|
"missingBriefs": "tasks still need human visibility briefs.",
|
|
24
26
|
"reviewAdvice": "Continue, but keep adoption advice visible.",
|
|
25
27
|
"noBlockers": "No blockers in this snapshot.",
|
|
28
|
+
"snapshotNotValidated": "Snapshot only; run validated status before release decisions.",
|
|
29
|
+
"workbenchDataOnly": "Workbench is active; run validated status before release decisions.",
|
|
26
30
|
"firstLook": "First look",
|
|
27
31
|
"projectFlow": "Project Flow",
|
|
28
32
|
"projectProgress": "Project Progress",
|
|
@@ -132,6 +136,7 @@ window.HarnessI18n = {
|
|
|
132
136
|
"state_pass": "pass",
|
|
133
137
|
"state_warn": "warn",
|
|
134
138
|
"state_fail": "fail",
|
|
139
|
+
"state_snapshot": "snapshot",
|
|
135
140
|
"state_in_progress": "in progress",
|
|
136
141
|
"state_planned": "planned",
|
|
137
142
|
"state_review": "review",
|
|
@@ -254,7 +259,7 @@ window.HarnessI18n = {
|
|
|
254
259
|
"noReviewTasks": "No tasks are currently in review.",
|
|
255
260
|
"reviewAlreadyConfirmed": "Human review is already confirmed.",
|
|
256
261
|
"reviewBlocked": "Close P0-P2 open or release-blocking findings before confirming.",
|
|
257
|
-
"reviewWalkthroughRequired": "Add
|
|
262
|
+
"reviewWalkthroughRequired": "Add the task-local walkthrough.md before confirming human review.",
|
|
258
263
|
"reviewQueueRequired": "This task is not in the canonical Review queue.",
|
|
259
264
|
"reviewWorkbenchReady": "Confirm the human review when the evidence and findings are checked.",
|
|
260
265
|
"reviewConfirmChecklist": "I checked the walkthrough, task review evidence, and open findings.",
|
|
@@ -263,7 +268,72 @@ window.HarnessI18n = {
|
|
|
263
268
|
"reviewConfirmTextMismatch": "Type the task id shown in the input hint.",
|
|
264
269
|
"reviewSubmitting": "Submitting review confirmation...",
|
|
265
270
|
"reviewCompleteSuccess": "Review confirmed. Reloading snapshot...",
|
|
266
|
-
"reviewCompleteFailed": "Review confirmation failed"
|
|
271
|
+
"reviewCompleteFailed": "Review confirmation failed",
|
|
272
|
+
"presetCatalog": "Presets",
|
|
273
|
+
"presetCatalogSubtitle": "Manage project, user, and bundled task method packages. Precedence is project first, then user, then bundled.",
|
|
274
|
+
"presetSearch": "Search presets",
|
|
275
|
+
"presetSearchPlaceholder": "Search id, purpose, kind, source, or path",
|
|
276
|
+
"presetSourceFilter": "Preset source filter",
|
|
277
|
+
"allPresets": "All",
|
|
278
|
+
"presetSourceProject": "Project",
|
|
279
|
+
"presetSourceUser": "User",
|
|
280
|
+
"presetSourceBuiltin": "Builtin",
|
|
281
|
+
"presetSource_project": "Project",
|
|
282
|
+
"presetSource_user": "User",
|
|
283
|
+
"presetSource_builtin": "Builtin",
|
|
284
|
+
"presetEffective": "Effective",
|
|
285
|
+
"presetShadowed": "Shadowed",
|
|
286
|
+
"presetSources": "Preset Sources",
|
|
287
|
+
"presetSourcesHint": "Roots are read in precedence order. Higher layers override lower layers with the same id.",
|
|
288
|
+
"presetPriorityTitle": "Preset precedence",
|
|
289
|
+
"presetCollection": "Preset collection",
|
|
290
|
+
"presetCollectionHint": "Select a preset to inspect its manifest and actions.",
|
|
291
|
+
"presetLayerStack": "Layer stack for this id",
|
|
292
|
+
"presetLayerStackHint": "Project presets override user presets. User presets override bundled presets.",
|
|
293
|
+
"presetContextActions": "Selected preset actions",
|
|
294
|
+
"presetCheckHint": "Validate the currently selected preset manifest.",
|
|
295
|
+
"presetShadowedActionHint": "This layer is shadowed. CLI check and inspect commands resolve the effective preset by id, so they are disabled here.",
|
|
296
|
+
"presetCheckSelected": "Check selected preset",
|
|
297
|
+
"presetUninstallSelected": "Uninstall selected layer",
|
|
298
|
+
"presetUninstallHint": "Scope is locked to the selected project or user layer.",
|
|
299
|
+
"presetBuiltinImmutable": "Bundled presets are package defaults and cannot be uninstalled.",
|
|
300
|
+
"presetImportTitle": "Import preset",
|
|
301
|
+
"presetImportHint": "Install a local folder, .zip archive, or bundled preset id into a project or user layer.",
|
|
302
|
+
"presetRestoreBundled": "Restore bundled presets",
|
|
303
|
+
"presetRestoreBundledHint": "Copies bundled presets into the selected local layer. CLI name: preset seed.",
|
|
304
|
+
"presetCommandsEffectiveOnly": "CLI inspect/check commands resolve the effective preset by id. This shadowed layer is shown for comparison only.",
|
|
305
|
+
"noPresets": "No presets found.",
|
|
306
|
+
"version": "Version",
|
|
307
|
+
"manifestVersion": "Manifest version",
|
|
308
|
+
"manifestPath": "Manifest path",
|
|
309
|
+
"source": "Source",
|
|
310
|
+
"scope": "Scope",
|
|
311
|
+
"taskKind": "Task kind",
|
|
312
|
+
"budgets": "Budgets",
|
|
313
|
+
"inputs": "Inputs",
|
|
314
|
+
"writeScopes": "Write scopes",
|
|
315
|
+
"requiredReads": "Required reads",
|
|
316
|
+
"presetActions": "Preset Actions",
|
|
317
|
+
"presetWorkbenchRequired": "Use the dynamic workbench to manage presets. Static snapshots are read-only.",
|
|
318
|
+
"presetCheck": "Check preset",
|
|
319
|
+
"presetInstall": "Install preset",
|
|
320
|
+
"presetSeed": "Restore bundled presets",
|
|
321
|
+
"presetUninstall": "Uninstall preset",
|
|
322
|
+
"presetInstallSourcePlaceholder": "Local folder, .zip, or bundled preset id",
|
|
323
|
+
"forceOverwrite": "Force overwrite",
|
|
324
|
+
"confirmPresetId": "Confirm preset id",
|
|
325
|
+
"copyPresetId": "Copy preset ID",
|
|
326
|
+
"copyIdShort": "Copy ID",
|
|
327
|
+
"copyCommand": "Copy command",
|
|
328
|
+
"useSelectedId": "Use selected ID",
|
|
329
|
+
"presetConfirmRequired": "Use the selected ID before uninstalling.",
|
|
330
|
+
"presetActionRunning": "Running preset action",
|
|
331
|
+
"presetActionSuccess": "Preset action completed",
|
|
332
|
+
"presetActionFailed": "Preset action failed",
|
|
333
|
+
"created": "created",
|
|
334
|
+
"skipped": "skipped",
|
|
335
|
+
"removed": "removed",
|
|
336
|
+
"notInstalled": "not installed"
|
|
267
337
|
},
|
|
268
338
|
"zh": {
|
|
269
339
|
"eyebrow": "Coding Agent Harness 控制台",
|
|
@@ -273,6 +343,8 @@ window.HarnessI18n = {
|
|
|
273
343
|
"reviewQueue": "生命周期队列工作台",
|
|
274
344
|
"moduleView": "模块",
|
|
275
345
|
"readiness": "发布状态",
|
|
346
|
+
"snapshotStatus": "快照状态",
|
|
347
|
+
"snapshot": "快照",
|
|
276
348
|
"tasks": "任务",
|
|
277
349
|
"blockers": "阻塞",
|
|
278
350
|
"advice": "建议",
|
|
@@ -289,6 +361,8 @@ window.HarnessI18n = {
|
|
|
289
361
|
"missingBriefs": "个任务缺少给人看的 brief。",
|
|
290
362
|
"reviewAdvice": "可以继续,但升级建议必须保持可见。",
|
|
291
363
|
"noBlockers": "当前快照没有阻塞项。",
|
|
364
|
+
"snapshotNotValidated": "这里只是快照;发布决策前请运行完整验证状态。",
|
|
365
|
+
"workbenchDataOnly": "动态 Workbench 已连接;发布决策前请运行完整验证状态。",
|
|
292
366
|
"firstLook": "第一眼",
|
|
293
367
|
"projectFlow": "项目流程图",
|
|
294
368
|
"projectProgress": "项目进度",
|
|
@@ -391,6 +465,7 @@ window.HarnessI18n = {
|
|
|
391
465
|
"state_pass": "通过",
|
|
392
466
|
"state_warn": "警告",
|
|
393
467
|
"state_fail": "失败",
|
|
468
|
+
"state_snapshot": "快照",
|
|
394
469
|
"state_in_progress": "进行中",
|
|
395
470
|
"state_planned": "计划中",
|
|
396
471
|
"state_review": "审查中",
|
|
@@ -520,7 +595,7 @@ window.HarnessI18n = {
|
|
|
520
595
|
"noReviewTasks": "当前没有处在审查阶段的任务。",
|
|
521
596
|
"reviewAlreadyConfirmed": "人工审查已经确认。",
|
|
522
597
|
"reviewBlocked": "先关闭 P0-P2 开放项或阻塞发布的发现,再确认审查。",
|
|
523
|
-
"reviewWalkthroughRequired": "
|
|
598
|
+
"reviewWalkthroughRequired": "先补齐任务本地 walkthrough.md,再确认人工审查。",
|
|
524
599
|
"reviewQueueRequired": "这个任务不在 canonical Review 队列中。",
|
|
525
600
|
"reviewWorkbenchReady": "确认前请核对审查证据与开放发现。",
|
|
526
601
|
"reviewConfirmChecklist": "我已核对 Walkthrough、任务审查证据和开放发现。",
|
|
@@ -529,6 +604,71 @@ window.HarnessI18n = {
|
|
|
529
604
|
"reviewConfirmTextMismatch": "请输入提示中的任务 ID。",
|
|
530
605
|
"reviewSubmitting": "正在提交审查确认...",
|
|
531
606
|
"reviewCompleteSuccess": "审查已确认,正在刷新快照...",
|
|
532
|
-
"reviewCompleteFailed": "审查确认失败"
|
|
607
|
+
"reviewCompleteFailed": "审查确认失败",
|
|
608
|
+
"presetCatalog": "Preset",
|
|
609
|
+
"presetCatalogSubtitle": "管理项目级、用户级和内置任务方法包。优先级是项目级、用户级、内置。",
|
|
610
|
+
"presetSearch": "搜索 preset",
|
|
611
|
+
"presetSearchPlaceholder": "搜索 ID、用途、类型、来源或路径",
|
|
612
|
+
"presetSourceFilter": "Preset 来源筛选",
|
|
613
|
+
"allPresets": "全部",
|
|
614
|
+
"presetSourceProject": "项目级",
|
|
615
|
+
"presetSourceUser": "用户级",
|
|
616
|
+
"presetSourceBuiltin": "内置",
|
|
617
|
+
"presetSource_project": "项目级",
|
|
618
|
+
"presetSource_user": "用户级",
|
|
619
|
+
"presetSource_builtin": "内置",
|
|
620
|
+
"presetEffective": "生效",
|
|
621
|
+
"presetShadowed": "被覆盖",
|
|
622
|
+
"presetSources": "Preset 来源",
|
|
623
|
+
"presetSourcesHint": "系统按优先级读取来源;同名时高优先级会覆盖低优先级。",
|
|
624
|
+
"presetPriorityTitle": "Preset 优先级",
|
|
625
|
+
"presetCollection": "Preset 列表",
|
|
626
|
+
"presetCollectionHint": "选择一个 preset,查看 manifest 详情和可用操作。",
|
|
627
|
+
"presetLayerStack": "同名层级",
|
|
628
|
+
"presetLayerStackHint": "项目级覆盖用户级,用户级覆盖内置。",
|
|
629
|
+
"presetContextActions": "当前 preset 操作",
|
|
630
|
+
"presetCheckHint": "校验当前选中的 preset manifest。",
|
|
631
|
+
"presetShadowedActionHint": "当前层级已被覆盖。CLI 检查和详情命令会按 ID 解析到生效 preset,因此这里禁用。",
|
|
632
|
+
"presetCheckSelected": "检查当前 preset",
|
|
633
|
+
"presetUninstallSelected": "卸载当前层级",
|
|
634
|
+
"presetUninstallHint": "范围会锁定到当前选中的项目级或用户级层。",
|
|
635
|
+
"presetBuiltinImmutable": "内置 preset 是包默认内容,不能卸载。",
|
|
636
|
+
"presetImportTitle": "导入 preset",
|
|
637
|
+
"presetImportHint": "把本地文件夹、.zip 压缩包或内置 preset ID 安装到项目级或用户级。",
|
|
638
|
+
"presetRestoreBundled": "恢复内置 preset",
|
|
639
|
+
"presetRestoreBundledHint": "把包内置 presets 写入选中的本地层级。CLI 名称是 preset seed。",
|
|
640
|
+
"presetCommandsEffectiveOnly": "CLI 详情/检查命令会按 ID 解析到生效 preset;当前被覆盖层只用于对比查看。",
|
|
641
|
+
"noPresets": "没有找到 preset。",
|
|
642
|
+
"version": "版本",
|
|
643
|
+
"manifestVersion": "Manifest 版本",
|
|
644
|
+
"manifestPath": "Manifest 路径",
|
|
645
|
+
"source": "来源",
|
|
646
|
+
"scope": "范围",
|
|
647
|
+
"taskKind": "任务类型",
|
|
648
|
+
"budgets": "预算",
|
|
649
|
+
"inputs": "输入项",
|
|
650
|
+
"writeScopes": "写入范围",
|
|
651
|
+
"requiredReads": "必读引用",
|
|
652
|
+
"presetActions": "Preset 操作",
|
|
653
|
+
"presetWorkbenchRequired": "管理 preset 需要使用动态 workbench;静态快照只读。",
|
|
654
|
+
"presetCheck": "检查 preset",
|
|
655
|
+
"presetInstall": "安装 preset",
|
|
656
|
+
"presetSeed": "恢复内置 preset",
|
|
657
|
+
"presetUninstall": "卸载 preset",
|
|
658
|
+
"presetInstallSourcePlaceholder": "本机文件夹、.zip 或内置 preset ID",
|
|
659
|
+
"forceOverwrite": "强制覆盖",
|
|
660
|
+
"confirmPresetId": "确认 preset ID",
|
|
661
|
+
"copyPresetId": "复制 preset ID",
|
|
662
|
+
"copyIdShort": "复制 ID",
|
|
663
|
+
"copyCommand": "复制命令",
|
|
664
|
+
"useSelectedId": "使用当前 ID",
|
|
665
|
+
"presetConfirmRequired": "卸载前请先使用当前 ID 完成确认。",
|
|
666
|
+
"presetActionRunning": "正在执行 preset 操作",
|
|
667
|
+
"presetActionSuccess": "Preset 操作完成",
|
|
668
|
+
"presetActionFailed": "Preset 操作失败",
|
|
669
|
+
"created": "已创建",
|
|
670
|
+
"skipped": "已跳过",
|
|
671
|
+
"removed": "已移除",
|
|
672
|
+
"notInstalled": "未安装"
|
|
533
673
|
}
|
|
534
674
|
};
|
|
@@ -12,8 +12,8 @@ This folder is the development input pack. It tells agents how to work in this r
|
|
|
12
12
|
## Boundary
|
|
13
13
|
|
|
14
14
|
- Put local setup, codebase map, external service development summaries, mocks, stubs, and cross-repo debugging here.
|
|
15
|
-
- Put long-lived system structure in `
|
|
16
|
-
- Put concrete API/event/webhook contracts in `
|
|
15
|
+
- Put long-lived system structure in `coding-agent-harness/context/architecture/`.
|
|
16
|
+
- Put concrete API/event/webhook contracts in `coding-agent-harness/context/integrations/`.
|
|
17
17
|
|
|
18
18
|
## Structure Contract
|
|
19
19
|
|
|
@@ -30,21 +30,21 @@ This folder is the development input pack. It tells agents how to work in this r
|
|
|
30
30
|
|
|
31
31
|
If this repository depends on multiple microservices, do not write all external knowledge into one large document. For any external service that affects local development or testing, create:
|
|
32
32
|
|
|
33
|
-
- `
|
|
34
|
-
- `
|
|
35
|
-
- `
|
|
33
|
+
- `coding-agent-harness/context/architecture/services/<service-key>.md`: what the service is and what it owns.
|
|
34
|
+
- `coding-agent-harness/context/development/external-context/<service-key>.md`: how this repository mocks, stubs, or debugs it.
|
|
35
|
+
- `coding-agent-harness/context/integrations/<contract>.md`: concrete API/event/webhook contracts.
|
|
36
36
|
|
|
37
|
-
`
|
|
37
|
+
`context/development` only answers how to work with the external service during development. Do not maintain full system topology here, and do not put payload schemas here.
|
|
38
38
|
|
|
39
39
|
## External Source Pack Rule
|
|
40
40
|
|
|
41
|
-
If an external team provides many documents, screenshots, exported packets, meeting notes, or links, do not place them directly into `
|
|
41
|
+
If an external team provides many documents, screenshots, exported packets, meeting notes, or links, do not place them directly into `context/{architecture,development,integrations}`. Read `coding-agent-harness/governance/standards/external-source-intake-standard.md` first, then decide whether `external-source-packs/<source-key>/` is needed.
|
|
42
42
|
|
|
43
43
|
`external-source-packs/` owns source indexes, digests, and projection status only. Stable conclusions must be written back to:
|
|
44
44
|
|
|
45
|
-
- `
|
|
46
|
-
- `
|
|
47
|
-
- `
|
|
45
|
+
- `coding-agent-harness/context/architecture/services/<service-key>.md`
|
|
46
|
+
- `coding-agent-harness/context/development/external-context/<service-key>.md`
|
|
47
|
+
- `coding-agent-harness/context/integrations/<contract>.md`
|
|
48
48
|
|
|
49
49
|
## External Context Index
|
|
50
50
|
|
|
@@ -8,9 +8,9 @@ Confidence: low
|
|
|
8
8
|
## Debug Flow
|
|
9
9
|
|
|
10
10
|
1. Identify the failing interface or flow.
|
|
11
|
-
2. Read `
|
|
12
|
-
3. Read the matching `
|
|
13
|
-
4. Use the matching `
|
|
11
|
+
2. Read `coding-agent-harness/context/architecture/service-catalog.md` for ownership and upstream/downstream services.
|
|
12
|
+
3. Read the matching `coding-agent-harness/context/integrations/` contract.
|
|
13
|
+
4. Use the matching `coding-agent-harness/context/development/external-context/<service-key>.md` notes for mocks and local debugging.
|
|
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` or 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
|
-
This file only covers local development, testing, and debugging context for this external service. Put service responsibility in `
|
|
33
|
+
This file only covers local development, testing, and debugging context for this external service. Put service responsibility in `context/architecture`; put interface fields and schemas in `context/integrations`.
|
|
@@ -7,18 +7,18 @@ Confidence: low
|
|
|
7
7
|
|
|
8
8
|
## Purpose
|
|
9
9
|
|
|
10
|
-
This directory is only for external source intake, indexing, and digests. Stable facts become Harness execution context only after they are projected into `
|
|
10
|
+
This directory is only for external source intake, indexing, and digests. Stable facts become Harness execution context only after they are projected into `context/architecture`, `coding-agent-harness/context/development/external-context`, or `context/integrations`.
|
|
11
11
|
|
|
12
|
-
Read `
|
|
12
|
+
Read `coding-agent-harness/governance/standards/external-source-intake-standard.md` before adding a source pack.
|
|
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
|
-
- If there are fewer than 5 source documents, prefer linking them from `Source Evidence` in `
|
|
21
|
+
- If there are fewer than 5 source documents, prefer linking them from `Source Evidence` in `context/{architecture,development,integrations}`; a source pack may be unnecessary.
|
|
22
22
|
- If the material is large, multi-topic, or expected to grow, create `<source-key>/README.md` and `digests/`.
|
|
23
23
|
- `raw/` may contain only commit-safe material with no secrets, personal data, or customer data.
|
|
24
24
|
- Non-committable material should be represented by external path, owner, access condition, and digest only.
|
|
@@ -11,8 +11,8 @@ This folder owns concrete interface contracts: APIs, events, webhooks, SDK usage
|
|
|
11
11
|
|
|
12
12
|
## Boundary
|
|
13
13
|
|
|
14
|
-
- Put service topology and ownership in `
|
|
15
|
-
- Put development mocks and debugging notes in `
|
|
14
|
+
- Put service topology and ownership in `coding-agent-harness/context/architecture/`.
|
|
15
|
+
- Put development mocks and debugging notes in `coding-agent-harness/context/development/`.
|
|
16
16
|
- Put endpoint, payload, error, auth, event, webhook, and SDK contracts here.
|
|
17
17
|
|
|
18
18
|
## Structure Contract
|
|
@@ -28,8 +28,8 @@ This folder owns concrete interface contracts: APIs, events, webhooks, SDK usage
|
|
|
28
28
|
|
|
29
29
|
Every interface contract must be its own file and link back to the related service:
|
|
30
30
|
|
|
31
|
-
- Service ownership and topology: `
|
|
32
|
-
- Local mocks, stubs, and debugging: `
|
|
31
|
+
- Service ownership and topology: `coding-agent-harness/context/architecture/service-catalog.md` or `services/<service-key>.md`
|
|
32
|
+
- Local mocks, stubs, and debugging: `coding-agent-harness/context/development/external-context/<service-key>.md`
|
|
33
33
|
- Concrete payloads, auth, errors, and contract tests: this folder
|
|
34
34
|
|
|
35
35
|
Do not mix multiple services into one large "integration notes" document. Multi-service systems should have multiple contract files; the Contract Index below is the navigation layer for humans and agents.
|
|
@@ -13,7 +13,7 @@ API
|
|
|
13
13
|
|
|
14
14
|
| Service Profile | Development Context | Contract Index | Last Verified | Confidence |
|
|
15
15
|
| --- | --- | --- | --- | --- |
|
|
16
|
-
| `
|
|
16
|
+
| `coding-agent-harness/context/architecture/services/<service-key>.md` | `coding-agent-harness/context/development/external-context/<service-key>.md` | `coding-agent-harness/context/integrations/README.md` | unknown | low |
|
|
17
17
|
|
|
18
18
|
## Auth
|
|
19
19
|
|
|
@@ -39,4 +39,4 @@ API
|
|
|
39
39
|
|
|
40
40
|
## Placement Rule
|
|
41
41
|
|
|
42
|
-
This file describes one API contract only. Put service responsibility in `
|
|
42
|
+
This file describes one API contract only. Put service responsibility in `context/architecture`; put local mock/stub/debug details in `context/development`.
|
|
@@ -13,7 +13,7 @@ Event
|
|
|
13
13
|
|
|
14
14
|
| Service Profile | Development Context | Contract Index | Last Verified | Confidence |
|
|
15
15
|
| --- | --- | --- | --- | --- |
|
|
16
|
-
| `
|
|
16
|
+
| `coding-agent-harness/context/architecture/services/<service-key>.md` | `coding-agent-harness/context/development/external-context/<service-key>.md` | `coding-agent-harness/context/integrations/README.md` | unknown | low |
|
|
17
17
|
|
|
18
18
|
## Topic / Channel
|
|
19
19
|
|
|
@@ -43,4 +43,4 @@ Event
|
|
|
43
43
|
|
|
44
44
|
## Placement Rule
|
|
45
45
|
|
|
46
|
-
This file describes one event contract only. Put service responsibility in `
|
|
46
|
+
This file describes one event contract only. Put service responsibility in `context/architecture`; put local mock/stub/debug details in `context/development`.
|
|
@@ -13,7 +13,7 @@ Third-party service
|
|
|
13
13
|
|
|
14
14
|
| Service Profile | Development Context | Contract Index | Last Verified | Confidence |
|
|
15
15
|
| --- | --- | --- | --- | --- |
|
|
16
|
-
| `
|
|
16
|
+
| `coding-agent-harness/context/architecture/services/<vendor-key>.md` | `coding-agent-harness/context/development/external-context/<vendor-key>.md` | `coding-agent-harness/context/integrations/README.md` | unknown | low |
|
|
17
17
|
|
|
18
18
|
## Auth
|
|
19
19
|
|
|
@@ -39,4 +39,4 @@ Third-party service
|
|
|
39
39
|
|
|
40
40
|
## Placement Rule
|
|
41
41
|
|
|
42
|
-
This file describes one third-party integration only. Put account/permission/SDK/limit facts here; put business responsibility and system topology in `
|
|
42
|
+
This file describes one third-party integration only. Put account/permission/SDK/limit facts here; put business responsibility and system topology in `context/architecture`.
|
|
@@ -13,7 +13,7 @@ Webhook
|
|
|
13
13
|
|
|
14
14
|
| Service Profile | Development Context | Contract Index | Last Verified | Confidence |
|
|
15
15
|
| --- | --- | --- | --- | --- |
|
|
16
|
-
| `
|
|
16
|
+
| `coding-agent-harness/context/architecture/services/<service-key>.md` | `coding-agent-harness/context/development/external-context/<service-key>.md` | `coding-agent-harness/context/integrations/README.md` | unknown | low |
|
|
17
17
|
|
|
18
18
|
## Auth
|
|
19
19
|
|
|
@@ -38,4 +38,4 @@ Webhook
|
|
|
38
38
|
|
|
39
39
|
## Placement Rule
|
|
40
40
|
|
|
41
|
-
This file describes one webhook contract only. Put service responsibility in `
|
|
41
|
+
This file describes one webhook contract only. Put service responsibility in `context/architecture`; put local mock/stub/debug details in `context/development`.
|
|
@@ -12,7 +12,7 @@ Repo Governance / CI-CD changes remain routed through their reference standards
|
|
|
12
12
|
|
|
13
13
|
| ID | Scope | Module | Task | State | Queues | Plan | Review | Lessons Check | Closeout | Residual | Updated |
|
|
14
14
|
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
15
|
-
| HL-YYYY-MM-DD-001 | task | none | Short operational title | planned | none |
|
|
15
|
+
| HL-YYYY-MM-DD-001 | task | none | Short operational title | planned | none | coding-agent-harness/planning/tasks/.../task_plan.md | pending | pending | pending | none | YYYY-MM-DD |
|
|
16
16
|
|
|
17
17
|
## Field Rules
|
|
18
18
|
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# {{TASK_TITLE}} - Task Package Index
|
|
2
|
+
|
|
3
|
+
Task Contract: harness-task/v1
|
|
4
|
+
|
|
5
|
+
## Task Identity
|
|
6
|
+
|
|
7
|
+
| Field | Value |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| Task ID | `{{TASK_ID}}` |
|
|
10
|
+
| Budget | `{{TASK_BUDGET}}` |
|
|
11
|
+
| Preset | `{{TASK_PRESET}}` |
|
|
12
|
+
| Module | `{{TASK_MODULE}}` |
|
|
13
|
+
| Long-running | `{{TASK_LONG_RUNNING}}` |
|
|
14
|
+
| Created | {{DATE}} |
|
|
15
|
+
|
|
16
|
+
## Task Audit Metadata
|
|
17
|
+
|
|
18
|
+
| Field | Value |
|
|
19
|
+
| --- | --- |
|
|
20
|
+
| Created By | {{TASK_AUDIT_CREATED_BY}} |
|
|
21
|
+
| Created At | {{TASK_AUDIT_CREATED_AT}} |
|
|
22
|
+
| Command Shape | {{TASK_AUDIT_COMMAND_SHAPE}} |
|
|
23
|
+
| Budget | {{TASK_AUDIT_BUDGET}} |
|
|
24
|
+
| Template Source | {{TASK_AUDIT_TEMPLATE_SOURCE}} |
|
|
25
|
+
| Task Creator | {{TASK_AUDIT_TASK_CREATOR}} |
|
|
26
|
+
| Task Creator Source | {{TASK_AUDIT_TASK_CREATOR_SOURCE}} |
|
|
27
|
+
| Human Review Status | {{TASK_AUDIT_HUMAN_REVIEW_STATUS}} |
|
|
28
|
+
| Confirmation ID | {{TASK_AUDIT_CONFIRMATION_ID}} |
|
|
29
|
+
| Confirmed At | {{TASK_AUDIT_CONFIRMED_AT}} |
|
|
30
|
+
| Reviewer | {{TASK_AUDIT_REVIEWER}} |
|
|
31
|
+
| Reviewer Email | {{TASK_AUDIT_REVIEWER_EMAIL}} |
|
|
32
|
+
| Confirm Text | {{TASK_AUDIT_CONFIRM_TEXT}} |
|
|
33
|
+
| Evidence Checked | {{TASK_AUDIT_EVIDENCE_CHECKED}} |
|
|
34
|
+
| Review Commit SHA | {{TASK_AUDIT_REVIEW_COMMIT_SHA}} |
|
|
35
|
+
| Audit Source | {{TASK_AUDIT_AUDIT_SOURCE}} |
|
|
36
|
+
| Audit Status | {{TASK_AUDIT_AUDIT_STATUS}} |
|
|
37
|
+
| Exception Reason | {{TASK_AUDIT_EXCEPTION_REASON}} |
|
|
38
|
+
| Message | {{TASK_AUDIT_MESSAGE}} |
|
|
39
|
+
| Migration Status | {{TASK_AUDIT_MIGRATION_STATUS}} |
|
|
40
|
+
| Migrated From | {{TASK_AUDIT_MIGRATED_FROM}} |
|
|
41
|
+
| Legacy Extra Fields | {{TASK_AUDIT_LEGACY_EXTRA_FIELDS}} |
|
|
42
|
+
| Migration Notes | {{TASK_AUDIT_MIGRATION_NOTES}} |
|
|
43
|
+
|
|
44
|
+
## Core Contract Files
|
|
45
|
+
|
|
46
|
+
| File | Purpose |
|
|
47
|
+
| --- | --- |
|
|
48
|
+
| `brief.md` | Human-readable task summary and context entry. |
|
|
49
|
+
| `task_plan.md` | Current task goal, scope, selected budget, acceptance, and operating decisions. |
|
|
50
|
+
| `visual_map.md` | Phase map, evidence status, next lifecycle commands, and supporting diagrams. |
|
|
51
|
+
| `progress.md` | Execution log, verification evidence, decisions, and handoff notes. |
|
|
52
|
+
| `walkthrough.md` | Task-local closeout summary, verification, review disposition, residual risk, and links. |
|
|
53
|
+
|
|
54
|
+
## Standard Task Files
|
|
55
|
+
|
|
56
|
+
These files exist for standard and complex tasks.
|
|
57
|
+
|
|
58
|
+
| File | Purpose |
|
|
59
|
+
| --- | --- |
|
|
60
|
+
| `execution_strategy.md` | Execution mode, ownership, conflict control, and evidence strategy. |
|
|
61
|
+
| `findings.md` | Findings, research notes, accepted risks, and unresolved questions. |
|
|
62
|
+
| `lesson_candidates.md` | Task-local lesson candidate decisions before closeout. |
|
|
63
|
+
| `review.md` | Agent review submission, adversarial review, findings, evidence, and routing. |
|
|
64
|
+
|
|
65
|
+
## Optional Indexes
|
|
66
|
+
|
|
67
|
+
| Index | Purpose |
|
|
68
|
+
| --- | --- |
|
|
69
|
+
| `references/INDEX.md` | References and preset-provided required reads. |
|
|
70
|
+
| `artifacts/INDEX.md` | Generated outputs, evidence bundles, screenshots, reports, and command artifacts. |
|
|
71
|
+
|
|
72
|
+
## Preset Summary
|
|
73
|
+
|
|
74
|
+
This section is system-rendered. Presets may not add custom root-level files or arbitrary root `INDEX.md` content.
|
|
75
|
+
|
|
76
|
+
| Field | Value |
|
|
77
|
+
| --- | --- |
|
|
78
|
+
| Preset | `{{TASK_PRESET}}` |
|
|
79
|
+
| Preset Version | `{{TASK_PRESET_VERSION}}` |
|
|
80
|
+
| Evidence Bundle | `{{TASK_EVIDENCE_BUNDLE}}` |
|
|
81
|
+
| Resource Indexes | `references/INDEX.md`; `artifacts/INDEX.md` |
|
|
82
|
+
|
|
83
|
+
## Update Rules
|
|
84
|
+
|
|
85
|
+
- Update status and decisions in `progress.md`.
|
|
86
|
+
- Keep task-specific goals and acceptance in `task_plan.md`.
|
|
87
|
+
- Put large command output, screenshots, reports, and generated files in `artifacts/INDEX.md`.
|
|
88
|
+
- Put source material, external links, and preset required reads in `references/INDEX.md`.
|
|
@@ -24,7 +24,7 @@ State the user-visible or project-visible result this task must deliver.
|
|
|
24
24
|
|
|
25
25
|
- Owner: coordinator
|
|
26
26
|
- Lifecycle state: not_started
|
|
27
|
-
- Required files: `task_plan.md`, `execution_strategy.md`, `visual_map.md`, `progress.md`, `findings.md`, `review.md`
|
|
27
|
+
- Required files: `INDEX.md`, `task_plan.md`, `execution_strategy.md`, `visual_map.md`, `progress.md`, `findings.md`, `review.md`
|
|
28
28
|
- Required closeout: verification evidence recorded in `progress.md`
|
|
29
29
|
|
|
30
30
|
## First Next Step
|
|
@@ -34,11 +34,12 @@ Do not edit shared SSoT files, coordinator-owned integration files, or unrelated
|
|
|
34
34
|
|
|
35
35
|
- Keep `task.state`, `lifecycleState`, `reviewStatus`, and `closeoutStatus` separate when reporting progress.
|
|
36
36
|
- `done` means the implementation step finished. It is not `closed` until closeout evidence is recorded.
|
|
37
|
+
- Use the current task `visual_map.md` phase table as the lifecycle map. At the end of a slice, inspect the current gate phase and follow its `Exit Command` only when its `Actor` is `agent`.
|
|
37
38
|
- If review is required, update `review.md`. Human review completion must be confirmed through the local dashboard workbench or by the coordinator with `harness review-confirm`; do not mark it complete while open P0/P1/P2 findings remain.
|
|
38
39
|
|
|
39
40
|
## Shared Sync Rule
|
|
40
41
|
|
|
41
|
-
Do not update Module Registry, Harness Ledger, Closeout
|
|
42
|
+
Do not update Module Registry, Harness Ledger, Closeout Index, Regression SSoT, or Cadence Ledger from a worker session unless the coordinator assigned the shared lock.
|
|
42
43
|
|
|
43
44
|
## Stop Rule
|
|
44
45
|
|
|
@@ -61,24 +61,6 @@ Do not keep sample findings. If there are no material findings, leave only the h
|
|
|
61
61
|
|
|
62
62
|
[If no material findings remain, state what evidence was checked and why no material finding remains.]
|
|
63
63
|
|
|
64
|
-
## Human Review Confirmation
|
|
65
|
-
|
|
66
|
-
This section must only be completed by a human reviewer or by a command/workbench action acting on explicit human confirmation. Agent review submission, self-review, and subagent review do not satisfy this gate.
|
|
67
|
-
|
|
68
|
-
| Field | Value |
|
|
69
|
-
| --- | --- |
|
|
70
|
-
| Confirmation ID | [generated by review-confirm] |
|
|
71
|
-
| Confirmed At | [timestamp] |
|
|
72
|
-
| Reviewer | [human name] |
|
|
73
|
-
| Reviewer Email | [email, if available] |
|
|
74
|
-
| Task Key | {{TASK_ID}} |
|
|
75
|
-
| Confirm Text | [must match the task id or confirmation phrase required by the command] |
|
|
76
|
-
| Evidence Checked | [review packet / tests / diff summary] |
|
|
77
|
-
| Commit SHA | [confirmation commit SHA generated by review-confirm] |
|
|
78
|
-
| Audit Status | committed / blocked |
|
|
79
|
-
|
|
80
|
-
Do not fill this section when the task still belongs in Missing Materials, Blocked, or Lessons routing. `review-confirm` and the Dashboard Workbench must reject dirty Git state, missing commit identity, hook failures, or writes outside the current task `review.md` / `progress.md` allowlist.
|
|
81
|
-
|
|
82
64
|
## Evidence Checked
|
|
83
65
|
|
|
84
66
|
| Evidence ID | Type | Path | Summary |
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# [Task Name]
|
|
2
2
|
|
|
3
3
|
Task Contract: harness-task/v1
|
|
4
|
+
Task Package Index: required
|
|
4
5
|
|
|
5
6
|
## Goal
|
|
6
7
|
|
|
@@ -11,58 +12,18 @@ Task Contract: harness-task/v1
|
|
|
11
12
|
- In scope: [specific files, modules, behavior, or docs]
|
|
12
13
|
- Out of scope: [explicit exclusions]
|
|
13
14
|
|
|
14
|
-
##
|
|
15
|
-
|
|
16
|
-
| Budget | Use When | Required Structure |
|
|
17
|
-
| --- | --- | --- |
|
|
18
|
-
| simple | One owner, no subagent, L0/L1 evidence, no formal review gate | `brief.md`, `task_plan.md`, `visual_map.md`, `progress.md` |
|
|
19
|
-
| standard | Normal feature, fix, or documentation change | `brief.md`, `task_plan.md`, `execution_strategy.md`, `visual_map.md`, `findings.md`, `lesson_candidates.md`, `progress.md`, `review.md` |
|
|
20
|
-
| complex | Multi-hour work, L2/L3 evidence, subagent/reviewer, or optional artifact/reference indexes | Standard files plus `references/INDEX.md` and `artifacts/INDEX.md` |
|
|
15
|
+
## Selected Budget
|
|
21
16
|
|
|
22
17
|
Selected budget: {{TASK_BUDGET}}
|
|
23
18
|
|
|
19
|
+
Rationale: [why this budget fits this task]
|
|
20
|
+
|
|
24
21
|
## Context Packet
|
|
25
22
|
|
|
26
23
|
| ID | Type | Path | Why It Matters | Used By |
|
|
27
24
|
| --- | --- | --- | --- | --- |
|
|
28
25
|
| C-001 | public-doc / private-plan / external / code | PUBLIC:path or PRIVATE:path or TARGET:path or URL:https://example.com | [why this source matters] | coordinator / reviewer / worker |
|
|
29
26
|
|
|
30
|
-
## Required Files
|
|
31
|
-
|
|
32
|
-
Do not hand-copy this template to create task directories. Use `harness new-task`
|
|
33
|
-
so the selected budget creates the correct file set and `harness check` can
|
|
34
|
-
enforce it.
|
|
35
|
-
|
|
36
|
-
| Budget | Required Files |
|
|
37
|
-
| --- | --- |
|
|
38
|
-
| simple | `brief.md`, `task_plan.md`, `visual_map.md`, `progress.md` |
|
|
39
|
-
| standard | simple files plus `execution_strategy.md`, `findings.md`, `lesson_candidates.md`, `review.md` |
|
|
40
|
-
| complex | standard files plus `references/INDEX.md`, `artifacts/INDEX.md` |
|
|
41
|
-
| long-running add-on | `long-running-task-contract.md` when `--long-running` is selected |
|
|
42
|
-
|
|
43
|
-
Optional subdirectories are created only when triggered:
|
|
44
|
-
|
|
45
|
-
- `lessons/LC-*.md`: task-local detail artifacts for lesson candidates marked `needs-promotion`.
|
|
46
|
-
- `references/INDEX.md`: complex-task source package and reference index.
|
|
47
|
-
- `artifacts/INDEX.md`: complex-task generated evidence and artifact index.
|
|
48
|
-
|
|
49
|
-
File purposes:
|
|
50
|
-
|
|
51
|
-
| Contract File | Purpose |
|
|
52
|
-
| --- | --- |
|
|
53
|
-
| `brief.md` | Human-readable task summary and current context packet |
|
|
54
|
-
| `task_plan.md` | Goal, scope, budget, acceptance, and operating decisions |
|
|
55
|
-
| `execution_strategy.md` | Operating model, allocation, conflict control, and evidence strategy |
|
|
56
|
-
| `visual_map.md` | Diagram collection: phase map, optional architecture/sequence/data-flow/state diagrams, completion state, evidence state, and blocking risk |
|
|
57
|
-
| `progress.md` | Execution log, decisions, and handoff |
|
|
58
|
-
| `findings.md` | Findings, research notes, and unresolved risks |
|
|
59
|
-
| `lesson_candidates.md` | Task-local lesson candidate queue. Human review must accept no-candidate, reject candidates, or queue promotion before review confirmation |
|
|
60
|
-
| `lessons/LC-*.md` | Optional task-local lesson detail artifacts written while source context is fresh and linked from `Detail Artifact` |
|
|
61
|
-
| `review.md` | Agent review submission, adversarial review, or specialist review report |
|
|
62
|
-
| `references/INDEX.md` | Complex-task source package and reference index |
|
|
63
|
-
| `artifacts/INDEX.md` | Complex-task generated evidence and artifact index |
|
|
64
|
-
| `long-running-task-contract.md` | Continuous execution permission, loop rules, and stop conditions |
|
|
65
|
-
|
|
66
27
|
## Steps
|
|
67
28
|
|
|
68
29
|
1. [First concrete step]
|
|
@@ -108,4 +69,4 @@ File purposes:
|
|
|
108
69
|
|
|
109
70
|
- Global sync owner: coordinator / n/a
|
|
110
71
|
- Global sync status: pending-coordinator-pass / synced / n/a
|
|
111
|
-
- Shared updates needed: [Module Registry / Harness Ledger / Closeout
|
|
72
|
+
- Shared updates needed: [Module Registry / Harness Ledger / Closeout Index / Regression SSoT / none]
|