coding-agent-harness 1.0.1 → 1.0.4

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.
Files changed (262) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/CONTRIBUTING.md +98 -0
  3. package/README.en-US.md +14 -0
  4. package/README.md +230 -80
  5. package/README.zh-CN.md +290 -0
  6. package/SKILL.md +132 -198
  7. package/docs-release/README.md +80 -9
  8. package/docs-release/architecture/overview.md +298 -28
  9. package/docs-release/architecture/overview.zh-CN.md +292 -0
  10. package/docs-release/assets/dashboard-overview.png +0 -0
  11. package/docs-release/assets/harness-architecture.svg +163 -0
  12. package/docs-release/assets/harness-workflow.svg +64 -0
  13. package/docs-release/guides/agent-installation.en-US.md +237 -0
  14. package/docs-release/guides/agent-installation.md +149 -27
  15. package/docs-release/guides/contributing.md +100 -0
  16. package/docs-release/guides/contributing.zh-CN.md +99 -0
  17. package/docs-release/guides/document-audience-and-surfaces.en-US.md +113 -0
  18. package/docs-release/guides/document-audience-and-surfaces.md +113 -0
  19. package/docs-release/guides/full-legacy-migration-subagent-strategy.md +334 -0
  20. package/docs-release/guides/full-legacy-migration-subagent-strategy.zh-CN.md +334 -0
  21. package/docs-release/guides/legacy-migration-agent-prompt.md +373 -0
  22. package/docs-release/guides/legacy-migration-agent-prompt.zh-CN.md +350 -0
  23. package/docs-release/guides/migration-playbook.en-US.md +324 -0
  24. package/docs-release/guides/migration-playbook.md +328 -0
  25. package/docs-release/guides/parent-control-repository-pattern.en-US.md +254 -0
  26. package/docs-release/guides/parent-control-repository-pattern.md +254 -0
  27. package/docs-release/guides/preset-development.md +214 -0
  28. package/docs-release/guides/repository-operating-models.en-US.md +197 -0
  29. package/docs-release/guides/repository-operating-models.md +197 -0
  30. package/docs-release/guides/task-state-machine.en-US.md +207 -0
  31. package/docs-release/guides/task-state-machine.md +214 -0
  32. package/docs-release/intl/README.md +15 -0
  33. package/docs-release/intl/de-DE.md +18 -0
  34. package/docs-release/intl/en-US.md +18 -0
  35. package/docs-release/intl/es-ES.md +18 -0
  36. package/docs-release/intl/fr-FR.md +18 -0
  37. package/docs-release/intl/ja-JP.md +18 -0
  38. package/docs-release/intl/ko-KR.md +18 -0
  39. package/docs-release/intl/zh-CN.md +18 -0
  40. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/brief.md +13 -0
  41. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/findings.md +7 -0
  42. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/lesson_candidates.md +24 -0
  43. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/progress.md +1 -1
  44. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/task_plan.md +4 -2
  45. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/{visual_roadmap.md → visual_map.md} +9 -1
  46. package/package.json +10 -3
  47. package/presets/legacy-migration/checks/preset-check.mjs +3 -0
  48. package/presets/legacy-migration/preset.yaml +134 -0
  49. package/presets/legacy-migration/scripts/plan-work-queue.mjs +4 -0
  50. package/presets/legacy-migration/scripts/scaffold-task-contracts.mjs +4 -0
  51. package/presets/legacy-migration/templates/execution_strategy.append.md +18 -0
  52. package/presets/legacy-migration/templates/findings.seed.md +17 -0
  53. package/presets/legacy-migration/templates/review.seed.md +12 -0
  54. package/presets/legacy-migration/templates/task_plan.append.md +9 -0
  55. package/presets/legacy-migration/templates/visual_map.append.md +12 -0
  56. package/presets/legacy-migration/workbench/dashboard-panels.yaml +2 -0
  57. package/presets/legacy-migration/workbench/migration-queue.schema.json +23 -0
  58. package/presets/lesson-sedimentation/preset.yaml +23 -0
  59. package/presets/lesson-sedimentation/templates/prompt.md +23 -0
  60. package/presets/module/preset.yaml +25 -0
  61. package/presets/module/templates/execution_strategy.append.md +8 -0
  62. package/presets/module/templates/task_plan.append.md +17 -0
  63. package/presets/standard-task/preset.yaml +31 -0
  64. package/presets/standard-task/templates/task_plan.append.md +7 -0
  65. package/references/adversarial-review-standard.md +2 -2
  66. package/references/agents-md-pattern.md +5 -5
  67. package/references/delivery-operating-model-standard.md +3 -3
  68. package/references/docs-directory-standard.md +53 -10
  69. package/references/external-source-intake-standard.md +75 -0
  70. package/references/harness-ledger.md +53 -94
  71. package/references/legacy-12-phase-bootstrap.md +41 -0
  72. package/references/lessons-governance.md +100 -88
  73. package/references/module-parallel-standard.md +14 -14
  74. package/references/planning-loop.md +51 -7
  75. package/references/project-onboarding-audit.md +10 -0
  76. package/references/pull-request-standard.md +118 -0
  77. package/references/repo-governance-standard.md +12 -1
  78. package/references/review-routing-standard.md +7 -1
  79. package/references/ssot-governance.md +67 -59
  80. package/references/taskr-gap-analysis.md +600 -0
  81. package/references/testing-standard.md +50 -0
  82. package/references/walkthrough-closeout.md +10 -9
  83. package/scripts/check-harness.mjs +111 -331
  84. package/scripts/commands/dashboard-command.mjs +67 -0
  85. package/scripts/commands/migration-command.mjs +96 -0
  86. package/scripts/commands/preset-command.mjs +73 -0
  87. package/scripts/commands/task-command.mjs +327 -0
  88. package/scripts/harness.mjs +106 -20
  89. package/scripts/lib/capability-registry.mjs +591 -0
  90. package/scripts/lib/check-module-parallel.mjs +237 -0
  91. package/scripts/lib/check-profiles.mjs +418 -0
  92. package/scripts/lib/check-task-contracts.mjs +47 -0
  93. package/scripts/lib/core-shared.mjs +196 -0
  94. package/scripts/lib/dashboard-data.mjs +412 -0
  95. package/scripts/lib/dashboard-workbench.mjs +257 -0
  96. package/scripts/lib/dashboard-writer.mjs +107 -4
  97. package/scripts/lib/git-status-summary.mjs +46 -0
  98. package/scripts/lib/governance-index-generator.mjs +174 -0
  99. package/scripts/lib/governance-sync.mjs +514 -0
  100. package/scripts/lib/governance-table-boundary.mjs +175 -0
  101. package/scripts/lib/harness-core.mjs +15 -1318
  102. package/scripts/lib/lesson-maintenance.mjs +152 -0
  103. package/scripts/lib/markdown-utils.mjs +158 -0
  104. package/scripts/lib/migration-planner.mjs +478 -0
  105. package/scripts/lib/migration-support.mjs +312 -0
  106. package/scripts/lib/preset-audit-contracts.mjs +37 -0
  107. package/scripts/lib/preset-engine.mjs +497 -0
  108. package/scripts/lib/preset-registry.mjs +627 -0
  109. package/scripts/lib/preset-resource-contracts.mjs +83 -0
  110. package/scripts/lib/review-confirm-git-gate.mjs +248 -0
  111. package/scripts/lib/status-dashboard-renderer.mjs +102 -0
  112. package/scripts/lib/subagent-authorization-audit.mjs +196 -0
  113. package/scripts/lib/task-completion-consistency.mjs +16 -0
  114. package/scripts/lib/task-index.mjs +93 -0
  115. package/scripts/lib/task-lesson-candidates.mjs +242 -0
  116. package/scripts/lib/task-lesson-sedimentation.mjs +326 -0
  117. package/scripts/lib/task-lifecycle/review-confirm.mjs +101 -0
  118. package/scripts/lib/task-lifecycle/review-gates.mjs +70 -0
  119. package/scripts/lib/task-lifecycle/text-utils.mjs +24 -0
  120. package/scripts/lib/task-lifecycle.mjs +649 -0
  121. package/scripts/lib/task-review-model.mjs +469 -0
  122. package/scripts/lib/task-scanner.mjs +576 -0
  123. package/scripts/lib/task-tombstone-commands.mjs +140 -0
  124. package/scripts/postinstall.mjs +14 -0
  125. package/skills/preset-creator/SKILL.md +179 -0
  126. package/skills/preset-creator/references/complex-task-skeleton/README.md +31 -0
  127. package/skills/preset-creator/references/complex-task-skeleton/artifacts/INDEX.md +12 -0
  128. package/skills/preset-creator/references/complex-task-skeleton/brief.md +32 -0
  129. package/skills/preset-creator/references/complex-task-skeleton/execution_strategy.md +71 -0
  130. package/skills/preset-creator/references/complex-task-skeleton/findings.md +24 -0
  131. package/skills/preset-creator/references/complex-task-skeleton/lesson_candidates.md +70 -0
  132. package/skills/preset-creator/references/complex-task-skeleton/long-running-task-contract.md +76 -0
  133. package/skills/preset-creator/references/complex-task-skeleton/progress.md +33 -0
  134. package/skills/preset-creator/references/complex-task-skeleton/references/INDEX.md +13 -0
  135. package/skills/preset-creator/references/complex-task-skeleton/review.md +107 -0
  136. package/skills/preset-creator/references/complex-task-skeleton/task_plan.md +111 -0
  137. package/{templates/planning/visual_roadmap.md → skills/preset-creator/references/complex-task-skeleton/visual_map.md} +24 -2
  138. package/skills/preset-creator/references/preset-package-skeleton.md +296 -0
  139. package/templates/AGENTS.md.template +51 -36
  140. package/templates/architecture/Architecture-SSoT.md +21 -0
  141. package/templates/architecture/README.md +49 -0
  142. package/templates/architecture/critical-flows.md +22 -0
  143. package/templates/architecture/local-repo-context.md +20 -0
  144. package/templates/architecture/service-catalog.md +17 -0
  145. package/templates/architecture/services/service-template.md +31 -0
  146. package/templates/architecture/system-map.md +22 -0
  147. package/templates/dashboard/assets/app-src/00-state.js +42 -0
  148. package/templates/dashboard/assets/app-src/10-router.js +77 -0
  149. package/templates/dashboard/assets/app-src/20-overview.js +241 -0
  150. package/templates/dashboard/assets/app-src/30-tasks.js +409 -0
  151. package/templates/dashboard/assets/app-src/35-task-detail.js +246 -0
  152. package/templates/dashboard/assets/app-src/40-modules.js +58 -0
  153. package/templates/dashboard/assets/app-src/45-review.js +347 -0
  154. package/templates/dashboard/assets/app-src/50-migration.js +183 -0
  155. package/templates/dashboard/assets/app-src/60-shared.js +61 -0
  156. package/templates/dashboard/assets/app-src/90-bindings.js +524 -0
  157. package/templates/dashboard/assets/app.css +3107 -300
  158. package/templates/dashboard/assets/app.css.manifest.json +9 -0
  159. package/templates/dashboard/assets/app.js +2068 -306
  160. package/templates/dashboard/assets/app.manifest.json +12 -0
  161. package/templates/dashboard/assets/css-src/00-foundation.css +342 -0
  162. package/templates/dashboard/assets/css-src/10-panels-flow.css +236 -0
  163. package/templates/dashboard/assets/css-src/20-briefs-controls.css +398 -0
  164. package/templates/dashboard/assets/css-src/30-task-index.css +739 -0
  165. package/templates/dashboard/assets/css-src/35-review-workspace.css +507 -0
  166. package/templates/dashboard/assets/css-src/40-detail-modules-migration.css +427 -0
  167. package/templates/dashboard/assets/css-src/50-responsive-overrides.css +551 -0
  168. package/templates/dashboard/assets/i18n.js +531 -44
  169. package/templates/dashboard/assets/mermaid-renderer.js +58 -8
  170. package/templates/development/README.md +52 -0
  171. package/templates/development/codebase-map.md +11 -0
  172. package/templates/development/cross-repo-debugging.md +18 -0
  173. package/templates/development/external-context/service-template.md +33 -0
  174. package/templates/development/external-source-packs/README.md +24 -0
  175. package/templates/development/external-source-packs/digest-template.md +28 -0
  176. package/templates/development/local-setup.md +16 -0
  177. package/templates/development/stubs-and-mocks.md +11 -0
  178. package/templates/integrations/README.md +40 -0
  179. package/templates/integrations/api-contract.md +42 -0
  180. package/templates/integrations/event-contract.md +46 -0
  181. package/templates/integrations/third-party/vendor-template.md +42 -0
  182. package/templates/integrations/webhook-contract.md +41 -0
  183. package/templates/ledger/Harness-Ledger.md +13 -25
  184. package/templates/lessons/lesson-arch-process-change.md +1 -1
  185. package/templates/lessons/lesson-new-doc.md +1 -1
  186. package/templates/lessons/lesson-ref-change.md +1 -1
  187. package/templates/planning/brief.md +32 -0
  188. package/templates/planning/execution_strategy.md +31 -0
  189. package/templates/planning/lesson_candidates.md +70 -0
  190. package/templates/planning/long-running-task-contract.md +7 -0
  191. package/templates/planning/module_brief.md +25 -0
  192. package/templates/planning/module_session_prompt.md +6 -0
  193. package/templates/planning/optional/artifacts/INDEX.md +3 -3
  194. package/templates/planning/optional/references/INDEX.md +3 -3
  195. package/templates/planning/review.md +59 -0
  196. package/templates/planning/task_plan.md +40 -15
  197. package/templates/planning/visual_map.md +50 -0
  198. package/templates/reference/docs-library-standard.md +31 -0
  199. package/templates/reference/execution-workflow-standard.md +5 -2
  200. package/templates/reference/external-source-intake-standard.md +82 -0
  201. package/templates/reference/harness-ledger-standard.md +1 -0
  202. package/templates/reference/pull-request-standard.md +80 -0
  203. package/templates/reference/repo-governance-standard.md +8 -5
  204. package/templates/reference/review-routing-standard.md +6 -0
  205. package/templates/reference/walkthrough-standard.md +3 -1
  206. package/templates/verifier/verifier-output.md +1 -1
  207. package/templates/walkthrough/walkthrough-template.md +2 -2
  208. package/templates-zh-CN/AGENTS.md.template +73 -70
  209. package/templates-zh-CN/architecture/Architecture-SSoT.md +21 -0
  210. package/templates-zh-CN/architecture/README.md +51 -0
  211. package/templates-zh-CN/architecture/critical-flows.md +24 -0
  212. package/templates-zh-CN/architecture/local-repo-context.md +20 -0
  213. package/templates-zh-CN/architecture/service-catalog.md +17 -0
  214. package/templates-zh-CN/architecture/services/service-template.md +31 -0
  215. package/templates-zh-CN/architecture/system-map.md +22 -0
  216. package/templates-zh-CN/development/README.md +54 -0
  217. package/templates-zh-CN/development/codebase-map.md +11 -0
  218. package/templates-zh-CN/development/cross-repo-debugging.md +18 -0
  219. package/templates-zh-CN/development/external-context/service-template.md +33 -0
  220. package/templates-zh-CN/development/external-source-packs/README.md +24 -0
  221. package/templates-zh-CN/development/external-source-packs/digest-template.md +28 -0
  222. package/templates-zh-CN/development/local-setup.md +16 -0
  223. package/templates-zh-CN/development/stubs-and-mocks.md +11 -0
  224. package/templates-zh-CN/integrations/README.md +42 -0
  225. package/templates-zh-CN/integrations/api-contract.md +42 -0
  226. package/templates-zh-CN/integrations/event-contract.md +46 -0
  227. package/templates-zh-CN/integrations/third-party/vendor-template.md +42 -0
  228. package/templates-zh-CN/integrations/webhook-contract.md +41 -0
  229. package/templates-zh-CN/ledger/Harness-Ledger.md +17 -40
  230. package/templates-zh-CN/planning/brief.md +32 -0
  231. package/templates-zh-CN/planning/execution_strategy.md +30 -0
  232. package/templates-zh-CN/planning/lesson_candidates.md +70 -0
  233. package/templates-zh-CN/planning/long-running-task-contract.md +1 -1
  234. package/templates-zh-CN/planning/module_brief.md +25 -0
  235. package/templates-zh-CN/planning/module_plan.md +2 -2
  236. package/templates-zh-CN/planning/module_session_prompt.md +4 -3
  237. package/templates-zh-CN/planning/review.md +59 -1
  238. package/templates-zh-CN/planning/task_plan.md +37 -11
  239. package/templates-zh-CN/planning/{visual_roadmap.md → visual_map.md} +21 -2
  240. package/templates-zh-CN/reference/adversarial-review-standard.md +1 -1
  241. package/templates-zh-CN/reference/docs-library-standard.md +36 -1
  242. package/templates-zh-CN/reference/execution-workflow-standard.md +10 -2
  243. package/templates-zh-CN/reference/external-source-intake-standard.md +82 -0
  244. package/templates-zh-CN/reference/harness-ledger-standard.md +7 -4
  245. package/templates-zh-CN/reference/pull-request-standard.md +106 -0
  246. package/templates-zh-CN/reference/repo-governance-standard.md +4 -1
  247. package/templates-zh-CN/reference/review-routing-standard.md +8 -1
  248. package/templates-zh-CN/reference/walkthrough-standard.md +6 -5
  249. package/templates-zh-CN/walkthrough/Closeout-SSoT.md +2 -2
  250. package/templates-zh-CN/walkthrough/walkthrough-template.md +2 -2
  251. package/scripts/smoke-dashboard.mjs +0 -70
  252. package/scripts/test-harness.mjs +0 -483
  253. package/templates/ssot/Feature-SSoT.md +0 -43
  254. package/templates/ssot/Lessons-SSoT.md +0 -44
  255. package/templates-zh-CN/dashboard/assets/app.css +0 -399
  256. package/templates-zh-CN/dashboard/assets/app.js +0 -435
  257. package/templates-zh-CN/dashboard/assets/i18n.js +0 -47
  258. package/templates-zh-CN/dashboard/assets/markdown-reader.js +0 -116
  259. package/templates-zh-CN/dashboard/assets/mermaid-renderer.js +0 -59
  260. package/templates-zh-CN/dashboard/index.html +0 -18
  261. package/templates-zh-CN/ssot/Feature-SSoT.md +0 -49
  262. package/templates-zh-CN/ssot/Lessons-SSoT.md +0 -49
@@ -0,0 +1,207 @@
1
+ # Task State Machine And Lifecycle Queues
2
+
3
+ Chinese mirror: `docs-release/guides/task-state-machine.md`
4
+
5
+ Coding Agent Harness does not model task state as a single field. The Dashboard derives the visible lifecycle from multiple files:
6
+
7
+ - `progress.md` stores raw `task.state` and execution evidence.
8
+ - `review.md` stores Agent Review Submission, material findings, and Human Review Confirmation.
9
+ - `lesson_candidates.md` records lesson candidate decisions and sedimentation routing.
10
+ - `10-WALKTHROUGH/Closeout-SSoT.md` records closeout status and links walkthrough evidence.
11
+ - Tombstone / supersede metadata records whether a task was soft-deleted, merged, archived, or replaced.
12
+ - The scanner derives `lifecycleState`, `reviewStatus`, `closeoutStatus`, `taskQueues[]`, `queueReasons[]`, and `repairPrompt` from those files.
13
+
14
+ The older `reviewQueueState` model was enough for a single review page. After PF-024, the public model is a set of lifecycle queues: Review, Missing Materials, Blocked, Lessons, Confirmed / Finalized, and Soft-deleted / Superseded.
15
+
16
+ ## Raw Task Command Flow
17
+
18
+ ```mermaid
19
+ stateDiagram-v2
20
+ [*] --> not_started: new-task
21
+ not_started --> in_progress: task-start
22
+ planned --> in_progress: task-start
23
+ in_progress --> in_progress: task-log / task-phase
24
+ in_progress --> blocked: task-block
25
+ blocked --> in_progress: blocker fixed
26
+ in_progress --> review_submitted: task-review
27
+ review_submitted --> missing_materials: returned for materials
28
+ missing_materials --> in_progress: repair materials
29
+ review_submitted --> blocked: blocking finding
30
+ review_submitted --> human_confirmed: review-confirm
31
+ human_confirmed --> finalized: task-complete + closeout
32
+ finalized --> [*]
33
+ ```
34
+
35
+ `task-review` means the agent submitted a review packet. It does not mean human approval. `review-confirm` is the Human Review Confirmation gate. `task-complete` / closeout is not a substitute for review confirmation.
36
+
37
+ ## Derived State
38
+
39
+ ```mermaid
40
+ flowchart TB
41
+ Progress["progress.md<br/>task.state + evidence"]
42
+ Review["review.md<br/>Agent Review Submission + findings + Human Review Confirmation"]
43
+ Lessons["lesson_candidates.md<br/>decision + sedimentation route"]
44
+ Closeout["Closeout-SSoT.md<br/>closeout row + walkthrough"]
45
+ Tombstone["tombstone / supersede metadata"]
46
+ Scanner["scanner"]
47
+
48
+ Progress --> Scanner
49
+ Review --> Scanner
50
+ Lessons --> Scanner
51
+ Closeout --> Scanner
52
+ Tombstone --> Scanner
53
+
54
+ Scanner --> Lifecycle["lifecycleState"]
55
+ Scanner --> ReviewStatus["reviewStatus"]
56
+ Scanner --> CloseoutStatus["closeoutStatus"]
57
+ Scanner --> Queues["taskQueues[]"]
58
+ Scanner --> Reasons["queueReasons[]"]
59
+ Scanner --> Prompt["repairPrompt"]
60
+ ```
61
+
62
+ | Field | Source | Purpose |
63
+ | --- | --- | --- |
64
+ | `task.state` | `progress.md` | Raw execution stage. |
65
+ | `reviewStatus` | `review.md` + findings + Human Review Confirmation | Separates missing review, agent-submitted review, blockers, and human confirmation. |
66
+ | `closeoutStatus` | `Closeout-SSoT.md` | Separates missing, pending, and closed closeout. |
67
+ | `lifecycleState` | scanner-derived | Main Dashboard lifecycle meaning. |
68
+ | `taskQueues[]` | scanner-derived | Which lifecycle queues include the task. A task can be visible in more than one governance queue. |
69
+ | `queueReasons[]` | scanner-derived | Why the task entered a queue, including source file, field, and repair action. |
70
+ | `repairPrompt` | scanner-derived | A copyable, scoped repair prompt for a Coding Agent. |
71
+
72
+ ## Lifecycle Matrix
73
+
74
+ | Condition | `lifecycleState` | Meaning |
75
+ | --- | --- | --- |
76
+ | Tombstone, superseded-by, archive, or abandoned marker exists | `soft-deleted-superseded` | Hidden by default, but preserved for audit and replacement tracing. |
77
+ | Open P0-P2 finding, invalid transition, audit failure, or failed human-review gate | `blocked` | Cannot enter human confirmation until the blocker is fixed or waived. |
78
+ | Standard / complex task is missing required files, sections, evidence, lesson decision, or review submission | `missing-materials` | Needs agent repair; not part of the human review queue. |
79
+ | `task-review` was submitted, materials are ready, and Human Review Confirmation is missing | `review-submitted` | Truly waiting for human review. |
80
+ | Human Review Confirmation exists, but closeout / ledger / lessons are not fully closed | `confirmed-finalization-pending` | Accountability moved to the reviewer, but governance closeout remains. |
81
+ | Human Review Confirmation exists, and closeout / ledger / lesson routing are complete | `finalized` | Truly complete and traceable. |
82
+ | `task.state = blocked` without a review blocker | `active-blocked` | Execution is blocked. |
83
+ | `task.state = in_progress` | `active` | Work is active. |
84
+ | `task.state = planned/not_started` | `ready` | Work has not started; not in human review by default. |
85
+
86
+ ## Review Status
87
+
88
+ | `reviewStatus` | Meaning |
89
+ | --- | --- |
90
+ | `missing` | No usable review document or Agent Review Submission exists. |
91
+ | `required` | Review document exists, but the packet is not ready for human review. |
92
+ | `submitted` | An agent submitted a review packet. This is not human confirmation. |
93
+ | `blocked-open-findings` | There is an open P0-P2 finding or a finding that blocks release / confirmation. |
94
+ | `confirmed` | `Human Review Confirmation` exists. |
95
+
96
+ Agent self-review, subagent review, and coordinator review can only move a task toward `submitted`. Only `review-confirm` or an explicit Dashboard Workbench human confirmation writes `Human Review Confirmation`.
97
+
98
+ ## Lifecycle Queues
99
+
100
+ The Dashboard lifecycle workbench is a set of queues, not one mixed review list.
101
+
102
+ ```mermaid
103
+ flowchart TD
104
+ Task["task facts"]
105
+ Task --> Deleted{"tombstone / superseded / archived?"}
106
+ Deleted -->|yes| QDeleted["Soft-deleted / Superseded"]
107
+ Deleted -->|no| Blocker{"blocking finding or invalid transition?"}
108
+ Blocker -->|yes| QBlocked["Blocked"]
109
+ Blocker -->|no| Missing{"required materials missing?"}
110
+ Missing -->|yes| QMissing["Missing Materials"]
111
+ Missing -->|no| Submitted{"Agent Review Submission exists?"}
112
+ Submitted -->|yes + not human confirmed| QReview["Review"]
113
+ Submitted -->|no| Out["not in human review queue"]
114
+ Submitted -->|yes + human confirmed| Confirmed{"finalization complete?"}
115
+ Confirmed -->|no| QConfirmed["Confirmed / Finalized"]
116
+ Confirmed -->|yes| QFinal["Confirmed / Finalized"]
117
+ Task --> Lessons{"lesson candidate needs decision or sedimentation?"}
118
+ Lessons -->|yes| QLessons["Lessons"]
119
+ ```
120
+
121
+ | Queue | Entry condition | Primary owner | Exit condition |
122
+ | --- | --- | --- | --- |
123
+ | Review | Review packet submitted, materials ready, and no human confirmation yet. | human | Human confirms or returns it. |
124
+ | Missing Materials | Missing file, section, evidence, lesson decision, review submission, or incomplete phase. | agent | Agent repairs materials and resubmits review. |
125
+ | Blocked | Blocking finding, state conflict, Git audit failure, completion gate failure, or human waiver required. | agent + human | Fixed, closed, or explicitly waived. |
126
+ | Lessons | Lesson candidate needs decision, task-local retention, rejection, dry-run promotion, or a sedimentation task. | human + agent | Decision is complete, or a traceable sedimentation task exists. |
127
+ | Confirmed / Finalized | Human-confirmed, or finalized and ready for read-only tracing. | coordinator | Closeout, ledger, and lesson routing are complete; then read-only. |
128
+ | Soft-deleted / Superseded | Task was soft-deleted, replaced, merged, archived, or abandoned. | coordinator | Read-only tracing; reopen only when needed. |
129
+
130
+ The Review queue only waits for human confirmation. Missing materials, blockers, lesson sedimentation, confirmed-but-not-finalized work, and historical superseded tasks must not masquerade as Review queue items.
131
+
132
+ ## Global Table Boundary
133
+
134
+ Global governance tables only keep index, state, route, and audit summary. They help the Dashboard find the source of truth, but they do not carry module-local facts, long evidence, execution logs, or temporary repair prompts.
135
+
136
+ | Layer | Should record | Should not record |
137
+ | --- | --- | --- |
138
+ | Global tables: Harness Ledger, Closeout SSoT, Regression SSoT, Cadence Ledger, Delivery SSoT | Current state, owner, task/module/detail links, regression gate, delivery sequence, closeout or audit summary | Module-internal steps, undecided lesson candidates, full command output, long evidence paragraphs, review transcripts, temporary repair prompts |
139
+ | Module layer: Module Registry, `module_plan.md` | Module boundary, module steps, handoff, current blockers, and local evidence indexes | Final promoted lesson body or cross-module release audit ledger |
140
+ | Task layer: `brief.md`, `task_plan.md`, `progress.md`, `review.md`, `lesson_candidates.md`, `lessons/LC-*.md`, `artifacts/INDEX.md` | Execution detail, evidence, agent review, candidate lessons, task-local lesson detail, repair prompts, and raw artifact routing | Cross-task ledgers or promoted lesson detail bodies |
141
+
142
+ The checker enforces this boundary for new global table rows. Overloaded rows that already existed before 2026-05-24 are surfaced in Dashboard migration advice as `legacy-report-only`; they are not automatically deleted or bulk-rewritten. New rows that continue placing task/module-local detail in global tables are reported as `governance-table-entropy` failures. Lesson candidates stay in `lesson_candidates.md`; candidates that enter `needs-promotion` must link a task-local `lessons/LC-*.md` detail artifact, and accepted reusable lessons live in `docs/01-GOVERNANCE/lessons/*.md`. The fix is to keep the global summary row and move detail into module/task/detail documents linked from that row.
143
+
144
+ ## Human Confirmation Loop
145
+
146
+ ```mermaid
147
+ sequenceDiagram
148
+ autonumber
149
+ participant Agent as Agent / coordinator
150
+ participant Human as Human reviewer
151
+ participant UI as Dashboard Workbench
152
+ participant API as workbench API
153
+ participant Lifecycle as task lifecycle writer
154
+ participant Docs as markdown files
155
+ participant Scanner as scanner
156
+
157
+ Agent->>Docs: write Agent Review Submission + evidence
158
+ Agent->>UI: submit task-review
159
+ Human->>UI: open Review queue item
160
+ UI->>API: POST /api/tasks/review-complete
161
+ API->>Scanner: read current task facts
162
+ Scanner-->>API: taskQueues, queueReasons, reviewStatus
163
+ alt not in Review queue
164
+ API-->>UI: reject with target queue
165
+ else missing material or blocker
166
+ API-->>UI: reject with repairPrompt
167
+ else accepted
168
+ API->>Lifecycle: confirmTaskReview()
169
+ Lifecycle->>Lifecycle: verify clean Git state, identity, hooks, allowlist
170
+ Lifecycle->>Docs: write Human Review Confirmation
171
+ Lifecycle->>Docs: append review-confirm log
172
+ Lifecycle->>Lifecycle: commit allowlisted review/progress files
173
+ Lifecycle->>Docs: record confirmation commit SHA + committed audit status
174
+ API->>Scanner: regenerate dashboard snapshot
175
+ API-->>UI: confirmed task
176
+ end
177
+ ```
178
+
179
+ Strict rule: an agent can prepare review evidence and submit the task for review, but the task is not human-confirmed until the Human Review Confirmation block exists. Confirmation must use gated auto-commit: the CLI and Workbench reject dirty Git state, missing commit identity, hook/preflight failure, or writes outside the current task `review.md` / `progress.md` allowlist, and return recovery guidance.
180
+
181
+ CLI-owned mechanical writes and agent-owned manual slices have different boundaries. `new-task`, `task-*`, `task-phase`, `module-step`, `review-confirm`, `lesson-sediment`, and `lesson-promote --apply` acquire a lock, restrict writes to an allowlist, and auto-commit in a clean Git root. When an agent manually edits code, templates, or task docs, it still needs to proactively commit after verification; if it cannot commit, it must record the no-commit reason, owner, and next step, and must not mix unrelated dirty changes into the task commit.
182
+
183
+ ## Lesson Sedimentation
184
+
185
+ Lesson promotion does not write a shared Lessons table. The Dashboard or CLI should prefer a dry-run or follow-up sedimentation task so the assignee first:
186
+
187
+ - Classifies scope and boundary reason.
188
+ - Reads the task-local detail artifact referenced by the candidate row instead of reconstructing the lesson from the brief row.
189
+ - Checks conflicts against existing lesson candidates, lesson detail docs, reference standards, templates, and checkers.
190
+ - Proposes a target diff or no-action reason.
191
+ - Writes the promoted lesson detail doc or standard update only after human approval.
192
+
193
+ `needs-promotion` should not block human review confirmation by itself, but it must enter the Lessons queue and remain traceable in closeout / ledger records.
194
+
195
+ ## Soft Delete And Supersede
196
+
197
+ The document library does not hard-delete task directories by default.
198
+
199
+ | State | Meaning | Requirement |
200
+ | --- | --- | --- |
201
+ | `active` | Normal task. | Dashboard shows it by default. |
202
+ | `soft-deleted` | Task was abandoned but the directory stays. | Write a tombstone with operator, timestamp, reason, and reopen eligibility. |
203
+ | `superseded` | Task was replaced or merged into a newer task. | Old task records `Superseded By`; new task records `Supersedes`. |
204
+ | `archived` | Task moved to archive. | Reference checks must pass first, and a redirect stub or generated index entry must remain. |
205
+ | `hard-deleted` | Physically deleted. | Forbidden by default; allowed only for mistaken tasks with no references, ledger, progress, or review evidence. |
206
+
207
+ The Soft-deleted / Superseded queue is read-only tracing. It tells users why a task is not active and which task replaced it.
@@ -0,0 +1,214 @@
1
+ # 任务状态机与生命周期队列
2
+
3
+ English mirror: `docs-release/guides/task-state-machine.en-US.md`
4
+
5
+ Coding Agent Harness 的任务状态不是一个单字段。Dashboard 里看到的生命周期由多个文件共同推导:
6
+
7
+ - `progress.md` 记录原始 `task.state` 和执行证据。
8
+ - `review.md` 记录 Agent Review Submission、material findings 和 Human Review Confirmation。
9
+ - `lesson_candidates.md` 记录 lesson candidate 的人工判定和后续沉淀路由。
10
+ - `10-WALKTHROUGH/Closeout-SSoT.md` 记录任务是否完成收口,并链接 walkthrough。
11
+ - Tombstone / supersede 信息记录任务是否被软删除、合并、归档或替代。
12
+ - Scanner 从这些文件推导 `lifecycleState`、`reviewStatus`、`closeoutStatus`、`taskQueues[]`、`queueReasons[]` 和 `repairPrompt`。
13
+
14
+ 旧版 `reviewQueueState` 只适合表示单一审查页面。PF-024 后,公开模型改为多个生命周期队列:Review、Missing Materials、Blocked、Lessons、Confirmed / Finalized、Soft-deleted / Superseded。
15
+
16
+ ## 原始任务命令流
17
+
18
+ ```mermaid
19
+ stateDiagram-v2
20
+ [*] --> not_started: new-task
21
+ not_started --> in_progress: task-start
22
+ planned --> in_progress: task-start
23
+ in_progress --> in_progress: task-log / task-phase
24
+ in_progress --> blocked: task-block
25
+ blocked --> in_progress: blocker fixed
26
+ in_progress --> review_submitted: task-review
27
+ review_submitted --> missing_materials: returned for materials
28
+ missing_materials --> in_progress: repair materials
29
+ review_submitted --> blocked: blocking finding
30
+ review_submitted --> human_confirmed: review-confirm
31
+ human_confirmed --> finalized: task-complete + closeout
32
+ finalized --> [*]
33
+ ```
34
+
35
+ `task-review` 表示 Agent 提交审查材料包,不表示人工批准。`review-confirm` 才表示 Human Review Confirmation。`task-complete` / closeout 也不是 review confirmation 的替代品。
36
+
37
+ ## 派生状态
38
+
39
+ ```mermaid
40
+ flowchart TB
41
+ Progress["progress.md<br/>task.state + evidence"]
42
+ Review["review.md<br/>Agent Review Submission + findings + Human Review Confirmation"]
43
+ Lessons["lesson_candidates.md<br/>decision + sedimentation route"]
44
+ Closeout["Closeout-SSoT.md<br/>closeout row + walkthrough"]
45
+ Tombstone["tombstone / supersede metadata"]
46
+ Scanner["scanner"]
47
+
48
+ Progress --> Scanner
49
+ Review --> Scanner
50
+ Lessons --> Scanner
51
+ Closeout --> Scanner
52
+ Tombstone --> Scanner
53
+
54
+ Scanner --> Lifecycle["lifecycleState"]
55
+ Scanner --> ReviewStatus["reviewStatus"]
56
+ Scanner --> CloseoutStatus["closeoutStatus"]
57
+ Scanner --> Queues["taskQueues[]"]
58
+ Scanner --> Reasons["queueReasons[]"]
59
+ Scanner --> Prompt["repairPrompt"]
60
+ ```
61
+
62
+ | 字段 | 来源 | 作用 |
63
+ | --- | --- | --- |
64
+ | `task.state` | `progress.md` | 原始执行阶段。 |
65
+ | `reviewStatus` | `review.md` + findings + Human Review Confirmation | 区分缺审查、Agent 已提交审查、阻塞、人工确认。 |
66
+ | `closeoutStatus` | `Closeout-SSoT.md` | 区分收口缺失、待处理、已关闭。 |
67
+ | `lifecycleState` | scanner 派生 | Dashboard 的主生命周期语义。 |
68
+ | `taskQueues[]` | scanner 派生 | 任务属于哪些生命周期队列。一个任务可同时在多个治理队列中可见。 |
69
+ | `queueReasons[]` | scanner 派生 | 为什么进入队列,以及对应源文件、字段和修复动作。 |
70
+ | `repairPrompt` | scanner 派生 | 可复制给 Coding Agent 的受限修复提示。 |
71
+
72
+ ## 生命周期矩阵
73
+
74
+ | 条件 | `lifecycleState` | 含义 |
75
+ | --- | --- | --- |
76
+ | 有 tombstone、superseded-by、archive 或 abandoned 标记 | `soft-deleted-superseded` | 默认隐藏,但保留审计和替代链。 |
77
+ | 有 open P0-P2 finding、非法状态转换、审计失败或人审门禁失败 | `blocked` | 不能进入人工确认,必须先修 blocker 或记录 waiver。 |
78
+ | 标准/复杂任务缺必需文件、章节、证据、lesson decision 或 review submission | `missing-materials` | 需要 Agent 补材料,不属于人审队列。 |
79
+ | 已执行 `task-review`,材料齐全,且未 Human Review Confirmation | `review-submitted` | 真正等待人审。 |
80
+ | 已 Human Review Confirmation,但 closeout / ledger / lessons 仍未全部收口 | `confirmed-finalization-pending` | 责任已转移给确认人,但治理收口仍待完成。 |
81
+ | 已 Human Review Confirmation,且 closeout / ledger / lesson routing 完成 | `finalized` | 真正完成,可只读追溯。 |
82
+ | `task.state = blocked` 但没有 review blocker | `active-blocked` | 执行阻塞。 |
83
+ | `task.state = in_progress` | `active` | 执行中。 |
84
+ | `task.state = planned/not_started` | `ready` | 准备中,默认不进入人审队列。 |
85
+
86
+ ## 审查状态
87
+
88
+ | `reviewStatus` | 含义 |
89
+ | --- | --- |
90
+ | `missing` | 没有可用 review 文档或缺 Agent Review Submission。 |
91
+ | `required` | 有 review 文档,但还没有足够材料可提交人审。 |
92
+ | `submitted` | Agent 已提交审查材料包;这不是人工确认。 |
93
+ | `blocked-open-findings` | 有 open P0-P2 finding,或 finding 阻塞发布 / 确认。 |
94
+ | `confirmed` | 已写入 `Human Review Confirmation`。 |
95
+
96
+ Agent 自查、subagent 审查和 coordinator 审查都只能让任务接近 `submitted`。只有 `review-confirm` 或 Workbench 的明确人工确认动作会写入 `Human Review Confirmation`。
97
+
98
+ ## 生命周期队列
99
+
100
+ Dashboard 的 lifecycle workbench 是多个队列,不是一个混合 review 列表。
101
+
102
+ ```mermaid
103
+ flowchart TD
104
+ Task["task facts"]
105
+ Task --> Deleted{"tombstone / superseded / archived?"}
106
+ Deleted -->|yes| QDeleted["Soft-deleted / Superseded"]
107
+ Deleted -->|no| Blocker{"blocking finding or invalid transition?"}
108
+ Blocker -->|yes| QBlocked["Blocked"]
109
+ Blocker -->|no| Missing{"required materials missing?"}
110
+ Missing -->|yes| QMissing["Missing Materials"]
111
+ Missing -->|no| Submitted{"Agent Review Submission exists?"}
112
+ Submitted -->|yes + not human confirmed| QReview["Review"]
113
+ Submitted -->|no| Out["not in human review queue"]
114
+ Submitted -->|yes + human confirmed| Confirmed{"finalization complete?"}
115
+ Confirmed -->|no| QConfirmed["Confirmed / Finalized"]
116
+ Confirmed -->|yes| QFinal["Confirmed / Finalized"]
117
+ Task --> Lessons{"lesson candidate needs decision or sedimentation?"}
118
+ Lessons -->|yes| QLessons["Lessons"]
119
+ ```
120
+
121
+ | 队列 | 进入条件 | 主要责任方 | 退出条件 |
122
+ | --- | --- | --- | --- |
123
+ | Review | 已提交 review packet,材料齐,且未人工确认。 | human | 人工确认或退回。 |
124
+ | Missing Materials | 缺文件、缺章节、缺证据、缺 lesson decision、缺 review submission 或 phase 未完成。 | agent | 补齐材料并重新提交 review。 |
125
+ | Blocked | 有 blocking finding、状态矛盾、Git 审计失败、完成门禁失败或需要 human waiver。 | agent + human | 修复、关闭、或人工豁免。 |
126
+ | Lessons | lesson candidate 需要判定、保留、拒绝、dry-run promotion 或创建沉淀任务。 | human + agent | 决策完成,或创建可追踪沉淀任务。 |
127
+ | Confirmed / Finalized | 已人工确认,或已结项需要只读追溯。 | coordinator | closeout、ledger、lesson routing 全部完成;之后只读。 |
128
+ | Soft-deleted / Superseded | 任务被软删除、替代、合并、归档或废弃。 | coordinator | 只读追溯;必要时 reopen。 |
129
+
130
+ Review 队列只等人确认。缺材料、阻塞、lesson 沉淀、已确认待结项、历史替代任务都不应伪装成 Review 队列项。
131
+
132
+ ## 全局表边界
133
+
134
+ 全局治理表只保留索引、状态、路由和审计摘要。它们帮助 Dashboard 找到事实位置,
135
+ 但不承载模块局部事实、长证据、执行流水或临时修复提示。
136
+
137
+ | 层级 | 应该记录什么 | 不应该记录什么 |
138
+ | --- | --- | --- |
139
+ | 全局表:Harness Ledger、Closeout SSoT、Regression SSoT、Cadence Ledger、Delivery SSoT | 当前状态、负责人、任务/模块/详情文档链接、回归 gate、交付顺序、收口或审计摘要 | 模块内步骤、未判定 lesson candidate、完整命令输出、长证据段落、review transcript、临时 repair prompt |
140
+ | 模块层:Module Registry、`module_plan.md` | 模块边界、模块内步骤、handoff、当前阻塞和局部证据索引 | 已 promotion 的全局 lesson 正文、跨模块发布审计总账 |
141
+ | 任务层:`brief.md`、`task_plan.md`、`progress.md`、`review.md`、`lesson_candidates.md`、`lessons/LC-*.md`、`artifacts/INDEX.md` | 执行细节、证据、agent review、候选 lesson、task-local lesson 详情、修复提示和 raw artifact 路由 | 跨任务总账或 promoted lesson 详情正文 |
142
+
143
+ Checker 对新增全局表行执行该边界。2026-05-24 之前已经存在的过载行默认作为
144
+ `legacy-report-only` 出现在 Dashboard 迁移建议里,不会被自动删除或批量改写。
145
+ 新增行如果把 task/module 局部细节继续塞进全局表,会作为 `governance-table-entropy`
146
+ 失败项报告。Lesson candidate 留在 `lesson_candidates.md`;进入 `needs-promotion`
147
+ 的候选必须链接任务本地 `lessons/LC-*.md` 详情文件,已接受的经验再写入
148
+ `docs/01-GOVERNANCE/lessons/*.md` promoted 详情文档。修复方式是保留必要全局摘要行,
149
+ 把细节移动到 module/task/detail 文档并在全局表中链接过去。
150
+
151
+ ## 人工确认闭环
152
+
153
+ ```mermaid
154
+ sequenceDiagram
155
+ autonumber
156
+ participant Agent as Agent / coordinator
157
+ participant Human as Human reviewer
158
+ participant UI as Dashboard Workbench
159
+ participant API as workbench API
160
+ participant Lifecycle as task lifecycle writer
161
+ participant Docs as markdown files
162
+ participant Scanner as scanner
163
+
164
+ Agent->>Docs: write Agent Review Submission + evidence
165
+ Agent->>UI: submit task-review
166
+ Human->>UI: open Review queue item
167
+ UI->>API: POST /api/tasks/review-complete
168
+ API->>Scanner: read current task facts
169
+ Scanner-->>API: taskQueues, queueReasons, reviewStatus
170
+ alt not in Review queue
171
+ API-->>UI: reject with target queue
172
+ else missing material or blocker
173
+ API-->>UI: reject with repairPrompt
174
+ else accepted
175
+ API->>Lifecycle: confirmTaskReview()
176
+ Lifecycle->>Lifecycle: verify Git clean, identity, hooks, allowlist
177
+ Lifecycle->>Docs: write Human Review Confirmation
178
+ Lifecycle->>Docs: append review-confirm log
179
+ Lifecycle->>Lifecycle: commit allowlisted review/progress files
180
+ Lifecycle->>Docs: record confirmation commit SHA + committed audit status
181
+ API->>Scanner: regenerate dashboard snapshot
182
+ API-->>UI: confirmed task
183
+ end
184
+ ```
185
+
186
+ 严格规则:Agent 可以准备 review evidence,也可以提交审查;但任务只有在 Human Review Confirmation block 存在后,才算人工确认。确认动作必须通过 gated auto-commit:Git 状态不干净、提交身份缺失、hook/preflight 失败,或待写文件超出当前任务 `review.md` / `progress.md` 白名单时,CLI 和 Workbench 都会拒绝并返回恢复建议。
187
+
188
+ CLI-owned 机械写入和 agent-owned 手工切片是两条边界。`new-task`、`task-*`、`task-phase`、`module-step`、`review-confirm`、`lesson-sediment` 和 `lesson-promote --apply` 会在干净 Git root 中加锁、限制写入范围并自动提交。Agent 手工编辑代码、模板或任务文档时仍要在验证后主动提交;无法提交时必须记录 no-commit reason、owner 和下一步,不能把 unrelated dirty changes 混入任务提交。
189
+
190
+ ## Lesson 沉淀
191
+
192
+ Lesson promotion 默认不写共享 Lessons 表。Dashboard 或 CLI 应优先创建 dry-run 或后续沉淀任务,让执行者先完成:
193
+
194
+ - 分类 scope 和边界原因。
195
+ - 读取候选行的 `Detail Artifact` 指向的任务本地详情文件,不从表格 brief 复写正文。
196
+ - 检查既有 lesson candidate、lesson detail doc、reference standard、template、checker 是否冲突。
197
+ - 给出目标 diff 或 no-action 理由。
198
+ - 由人工批准后再写 promoted lesson 详情文档或标准文档。
199
+
200
+ `needs-promotion` 不应阻塞人审确认本身,但必须进入 Lessons 队列,并在 closeout / ledger 中可追踪。
201
+
202
+ ## 软删除与替代
203
+
204
+ 文档库默认不 hard delete 任务目录。
205
+
206
+ | 状态 | 含义 | 要求 |
207
+ | --- | --- | --- |
208
+ | `active` | 正常任务。 | Dashboard 默认显示。 |
209
+ | `soft-deleted` | 任务被废弃但保留目录。 | 写 tombstone,记录操作者、时间、原因和 reopen eligibility。 |
210
+ | `superseded` | 任务被新任务替代或合并。 | 旧任务记录 `Superseded By`,新任务记录 `Supersedes`。 |
211
+ | `archived` | 任务移入归档。 | 必须先通过引用检查,并留下 redirect stub 或 generated index entry。 |
212
+ | `hard-deleted` | 物理删除。 | 默认禁止;只允许误创建且无引用、无 ledger、无 progress、无 review 证据的任务。 |
213
+
214
+ Soft-deleted / Superseded 队列用于只读追溯,帮助用户看清“为什么这个任务不在活跃队列里”以及替代任务是谁。
@@ -0,0 +1,15 @@
1
+ # International Introductions
2
+
3
+ Coding Agent Harness uses English as the canonical public language and maintains full executable templates in English and Simplified Chinese.
4
+
5
+ These lightweight introductions help international readers understand the project quickly. For implementation details, use the English docs first.
6
+
7
+ | Language | Intro | Support Level |
8
+ | --- | --- | --- |
9
+ | English | [`en-US.md`](en-US.md) | Full docs and templates |
10
+ | Simplified Chinese | [`zh-CN.md`](zh-CN.md) | Full docs and templates |
11
+ | Japanese | [`ja-JP.md`](ja-JP.md) | Intro only |
12
+ | Korean | [`ko-KR.md`](ko-KR.md) | Intro only |
13
+ | French | [`fr-FR.md`](fr-FR.md) | Intro only |
14
+ | Spanish | [`es-ES.md`](es-ES.md) | Intro only |
15
+ | German | [`de-DE.md`](de-DE.md) | Intro only |
@@ -0,0 +1,18 @@
1
+ # Coding Agent Harness
2
+
3
+ Coding Agent Harness legt die Arbeit von Coding Agents im Repository ab, nicht nur im Chatverlauf. Plaene, Fortschritt, Reviews, Migrationsnotizen und Dashboard-Zustaende bleiben beim Code.
4
+
5
+ Die vollstaendige UI und die ausfuehrbaren Templates werden derzeit in English und Simplified Chinese gepflegt.
6
+
7
+ ## So funktioniert es
8
+
9
+ 1. Installieren Sie den Skill oder starten Sie die CLI mit `npx`.
10
+ 2. Der Agent analysiert das Repository und schlaegt einen Initialisierungs- oder Migrationsplan vor.
11
+ 3. Das lokale Dashboard zeigt Aufgaben, Warnungen, Nachweise und Review-Status.
12
+ 4. Vor der Uebergabe laufen die harness checks.
13
+
14
+ ## Sprachunterstuetzung
15
+
16
+ Ausfuehrbare Templates und vollstaendige Dokumentation werden derzeit in English und Simplified Chinese gepflegt. Diese Seite ist eine kurze Einfuehrung.
17
+
18
+ Start here: [`../../README.md`](../../README.md).
@@ -0,0 +1,18 @@
1
+ # Coding Agent Harness
2
+
3
+ Coding Agent Harness keeps coding-agent work inside the repository instead of leaving it buried in chat history. Plans, progress, reviews, migration notes, and dashboard snapshots stay with the code.
4
+
5
+ ![Dashboard overview](../assets/dashboard-overview.png)
6
+
7
+ ## How It Works
8
+
9
+ 1. Install the Skill or run the CLI with `npx`.
10
+ 2. Let the agent diagnose the repository and propose an initialization or migration plan.
11
+ 3. Review tasks, warnings, evidence, and handoff state in the local Dashboard.
12
+ 4. Run harness checks before delivery.
13
+
14
+ ## Language Support
15
+
16
+ English and Simplified Chinese have full README, guide, and executable template support. Other languages currently provide short introductions and route users to the English documentation.
17
+
18
+ Start with the canonical README: [`../../README.md`](../../README.md).
@@ -0,0 +1,18 @@
1
+ # Coding Agent Harness
2
+
3
+ Coding Agent Harness deja el trabajo de los agentes de programacion dentro del repositorio, no solo en el historial del chat. Planes, progreso, revisiones, notas de migracion y estados del Dashboard quedan junto al codigo.
4
+
5
+ La interfaz completa y las plantillas ejecutables se mantienen actualmente en English y Simplified Chinese.
6
+
7
+ ## Como funciona
8
+
9
+ 1. Instala el Skill o ejecuta la CLI con `npx`.
10
+ 2. El agente diagnostica el repositorio y propone un plan de inicializacion o migracion.
11
+ 3. El Dashboard local muestra tareas, advertencias, evidencia y estado de revision.
12
+ 4. Ejecuta las verificaciones de harness antes de entregar.
13
+
14
+ ## Idiomas
15
+
16
+ Las plantillas ejecutables y la documentacion completa se mantienen en English y Simplified Chinese. Esta pagina es una introduccion breve.
17
+
18
+ Start here: [`../../README.md`](../../README.md).
@@ -0,0 +1,18 @@
1
+ # Coding Agent Harness
2
+
3
+ Coding Agent Harness garde le travail des agents de code dans le depot, pas seulement dans l'historique de discussion. Plans, progression, revues, notes de migration et etats du Dashboard restent avec le code.
4
+
5
+ L'interface complete et les modeles executables sont actuellement maintenus en English et Simplified Chinese.
6
+
7
+ ## Fonctionnement
8
+
9
+ 1. Installez le Skill ou lancez le CLI avec `npx`.
10
+ 2. L'agent analyse le depot et propose un plan d'initialisation ou de migration.
11
+ 3. Le Dashboard local affiche les taches, alertes, preuves et etats de revue.
12
+ 4. Les verifications harness confirment l'etat avant livraison.
13
+
14
+ ## Langues
15
+
16
+ Les modeles executables et la documentation complete sont maintenus en English et Simplified Chinese. Cette page est une introduction courte.
17
+
18
+ Start here: [`../../README.md`](../../README.md).
@@ -0,0 +1,18 @@
1
+ # Coding Agent Harness
2
+
3
+ Coding Agent Harness は、コーディングエージェントの作業をチャット履歴ではなくリポジトリに残すための仕組みです。計画、進捗、レビュー、移行メモ、Dashboard の状態がコードと一緒に残ります。
4
+
5
+ UI と実行可能なテンプレートは、現在 English と Simplified Chinese を中心に保守されています。
6
+
7
+ ## 使い方
8
+
9
+ 1. Skill をインストールするか、`npx` で CLI を実行します。
10
+ 2. エージェントがリポジトリを診断し、初期化または移行計画を提示します。
11
+ 3. ローカル Dashboard でタスク、警告、証拠、レビュー状態を確認します。
12
+ 4. 受け渡し前に harness check を実行します。
13
+
14
+ ## 言語サポート
15
+
16
+ 実行可能なテンプレートと詳細ドキュメントは、現在 English と Simplified Chinese を中心に保守されています。このページは概要紹介です。
17
+
18
+ Start here: [`../../README.md`](../../README.md).
@@ -0,0 +1,18 @@
1
+ # Coding Agent Harness
2
+
3
+ Coding Agent Harness는 코딩 에이전트의 작업을 채팅 기록이 아니라 저장소 안에 남기기 위한 도구입니다. 계획, 진행 상황, 리뷰, 마이그레이션 메모, Dashboard 상태가 코드와 함께 남습니다.
4
+
5
+ 전체 UI와 실행 가능한 템플릿은 현재 English와 Simplified Chinese를 중심으로 유지됩니다.
6
+
7
+ ## 사용 방식
8
+
9
+ 1. Skill을 설치하거나 `npx`로 CLI를 실행합니다.
10
+ 2. 에이전트가 저장소를 진단하고 초기화 또는 마이그레이션 계획을 제안합니다.
11
+ 3. 로컬 Dashboard에서 작업, 경고, 증거, 리뷰 상태를 확인합니다.
12
+ 4. 전달 전에 harness check를 실행합니다.
13
+
14
+ ## 언어 지원
15
+
16
+ 실행 가능한 템플릿과 자세한 문서는 현재 English와 Simplified Chinese를 중심으로 유지됩니다. 이 페이지는 간단한 소개입니다.
17
+
18
+ Start here: [`../../README.md`](../../README.md).
@@ -0,0 +1,18 @@
1
+ # Coding Agent Harness
2
+
3
+ Coding Agent Harness 把 Coding Agent 的计划、进度、审查、迁移记录和 Dashboard 快照留在仓库里,而不是散在聊天记录里。
4
+
5
+ ![Dashboard overview](../assets/dashboard-overview.png)
6
+
7
+ ## 怎么用
8
+
9
+ 1. 安装 Skill,或用 `npx` 运行 CLI。
10
+ 2. 让 Agent 先诊断仓库,再给出初始化或迁移计划。
11
+ 3. 在本地 Dashboard 里查看任务、风险、证据和审查状态。
12
+ 4. 交付前运行 harness 检查。
13
+
14
+ ## 语言支持
15
+
16
+ 英文和简体中文提供完整 README、指南和可执行模板。其他语言目前是简介和入口页,具体实施请优先阅读英文文档。
17
+
18
+ 中文 README:[`../../README.zh-CN.md`](../../README.zh-CN.md)。
@@ -0,0 +1,13 @@
1
+ # Demo task
2
+
3
+ ## Brief
4
+
5
+ Minimal example task used by the dashboard smoke tests.
6
+
7
+ ## Task ID
8
+
9
+ `demo-task`
10
+
11
+ ## Outcome
12
+
13
+ Show a readable task summary in the static dashboard without requiring an editor.
@@ -0,0 +1,7 @@
1
+ # Demo Task Findings
2
+
3
+ ## Findings
4
+
5
+ | ID | Severity | Finding | Status | Owner |
6
+ | --- | --- | --- | --- | --- |
7
+ | F-001 | P3 | Minimal project fixture has no open implementation findings. | closed | coordinator |
@@ -0,0 +1,24 @@
1
+ # Demo Task - Lesson Candidates
2
+
3
+ ## Candidate Status
4
+
5
+ | Field | Value |
6
+ | --- | --- |
7
+ | Schema version | lesson-candidate-v1 |
8
+ | Task-level status | no-candidate-accepted |
9
+ | Review gate | candidate-file-present |
10
+ | Review decision | accepted-no-candidate |
11
+ | Promotion state | not-promoted |
12
+ | Closeout token | checked-candidate:LC-20260101-000 |
13
+ | Source task | demo-task |
14
+ | Owner | coordinator |
15
+ | Last updated | 2026-01-01 |
16
+
17
+ ## Candidates
18
+
19
+ | ID | Row Status | Title | Why It Might Matter | Review Decision | Promotion Target |
20
+ | --- | --- | --- | --- | --- | --- |
21
+
22
+ ## No-Candidate Reason
23
+
24
+ The example task exists only to demonstrate dashboard parsing and does not produce a reusable governance lesson.
@@ -8,4 +8,4 @@ in-progress
8
8
 
9
9
  | Date | Update | Evidence |
10
10
  | --- | --- | --- |
11
- | 2026-05-18 | Created example roadmap | report:TARGET:docs/09-PLANNING/TASKS/demo-task/visual_roadmap.md:example phase table |
11
+ | 2026-05-18 | Created example visual map | report:TARGET:docs/09-PLANNING/TASKS/demo-task/visual_map.md:example phase table |
@@ -1,8 +1,10 @@
1
1
  # Demo Task
2
2
 
3
+ Task Contract: harness-task/v1
4
+
3
5
  ## Goal
4
6
 
5
- Show the v1.0 visual roadmap contract.
7
+ Show the v1.0 visual map contract.
6
8
 
7
9
  ## Scope
8
10
 
@@ -11,4 +13,4 @@ Public example only.
11
13
  ## Execution & Visualization Files
12
14
 
13
15
  - `execution_strategy.md`
14
- - `visual_roadmap.md`
16
+ - `visual_map.md`