agentic-flow-kit 1.8.7 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (936) hide show
  1. package/README.md +113 -148
  2. package/bin/flow-kit.mjs +5 -2
  3. package/locales/en/installer.json +25 -0
  4. package/locales/en/overrides/.agents/commands/deploy.md +52 -0
  5. package/locales/en/overrides/.agents/commands/maintain.md +76 -0
  6. package/locales/en/overrides/.agents/commands/new-task.md +89 -0
  7. package/locales/en/overrides/.agents/commands/pipeline-run.md +56 -0
  8. package/locales/en/overrides/.agents/commands/pr-review.md +30 -0
  9. package/locales/en/overrides/.agents/commands/review.md +93 -0
  10. package/locales/en/overrides/.agents/commands/stages.md +256 -0
  11. package/locales/en/overrides/.agents/notes/pr-review-cost-discipline.md +48 -0
  12. package/locales/en/overrides/.agents/notes/process-order-rule.md +21 -0
  13. package/locales/en/overrides/.agents/notes/runtime-env.local.example.md +21 -0
  14. package/locales/en/overrides/.agents/pipelines/_TEMPLATE.md +75 -0
  15. package/locales/en/overrides/.agents/pipelines/pipeline-closing.md +28 -0
  16. package/locales/en/overrides/.agents/roles/implementer.md +28 -0
  17. package/locales/en/overrides/.agents/roles/independent-reviewer.md +39 -0
  18. package/locales/en/overrides/.agents/roles/pr-adjudicator.md +27 -0
  19. package/locales/en/overrides/.agents/roles/pr-finder.md +51 -0
  20. package/locales/en/overrides/.agents/roles/pr-verifier.md +44 -0
  21. package/locales/en/overrides/.agents/roles/ui-verifier.md +22 -0
  22. package/locales/en/overrides/.agents/roles/wiki-compiler.md +47 -0
  23. package/locales/en/overrides/.agents/skills/arena/SKILL.md +50 -0
  24. package/locales/en/overrides/.agents/skills/autonomous-run/SKILL.md +45 -0
  25. package/locales/en/overrides/.agents/skills/blast-radius/SKILL.md +53 -0
  26. package/locales/en/overrides/.agents/skills/csharp-quality-gates/SKILL.md +109 -0
  27. package/locales/en/overrides/.agents/skills/dev-tour/SKILL.md +98 -0
  28. package/locales/en/overrides/.agents/skills/dream/SKILL.md +63 -0
  29. package/locales/en/overrides/.agents/skills/eval/SKILL.md +42 -0
  30. package/locales/en/overrides/.agents/skills/interrogate/SKILL.md +49 -0
  31. package/locales/en/overrides/.agents/skills/number-vetting/SKILL.md +35 -0
  32. package/locales/en/overrides/.agents/skills/page-refactor/SKILL.md +192 -0
  33. package/locales/en/overrides/.agents/skills/papercut-fix/SKILL.md +92 -0
  34. package/locales/en/overrides/.agents/skills/pause-safely/SKILL.md +31 -0
  35. package/locales/en/overrides/.agents/skills/perf/SKILL.md +42 -0
  36. package/locales/en/overrides/.agents/skills/review-method/SKILL.md +92 -0
  37. package/locales/en/overrides/.agents/skills/session-resume/SKILL.md +69 -0
  38. package/locales/en/overrides/.agents/skills/shipyard-workflow-closeout/SKILL.md +109 -0
  39. package/locales/en/overrides/.agents/skills/show-me-your-work/SKILL.md +57 -0
  40. package/locales/en/overrides/.agents/skills/tfs-pr/SKILL.md +95 -0
  41. package/locales/en/overrides/.agents/skills/verify-ui/SKILL.md +116 -0
  42. package/locales/en/overrides/.agents/skills/visual-parity/SKILL.md +35 -0
  43. package/locales/en/overrides/.agents/skills/why/SKILL.md +56 -0
  44. package/locales/en/overrides/.agents/skills/wiki/SKILL.md +53 -0
  45. package/locales/en/overrides/.claude/agents/implementer.md +9 -0
  46. package/locales/en/overrides/.claude/agents/independent-reviewer.md +10 -0
  47. package/locales/en/overrides/.claude/agents/pr-adjudicator.md +10 -0
  48. package/locales/en/overrides/.claude/agents/pr-finder.md +10 -0
  49. package/locales/en/overrides/.claude/agents/pr-verifier.md +10 -0
  50. package/locales/en/overrides/.claude/agents/ui-verifier.md +10 -0
  51. package/locales/en/overrides/.claude/agents/wiki-compiler.md +10 -0
  52. package/locales/en/overrides/.claude/commands/wf-deploy.md +8 -0
  53. package/locales/en/overrides/.claude/commands/wf-maintain.md +8 -0
  54. package/locales/en/overrides/.claude/commands/wf-new-task.md +8 -0
  55. package/locales/en/overrides/.claude/commands/wf-pipeline-run.md +8 -0
  56. package/locales/en/overrides/.claude/commands/wf-pr-review.md +8 -0
  57. package/locales/en/overrides/.claude/commands/wf-review.md +8 -0
  58. package/locales/en/overrides/.claude/commands/wf-stages.md +8 -0
  59. package/locales/en/overrides/.cline/agents/implementer.yml +13 -0
  60. package/locales/en/overrides/.cline/agents/independent-reviewer.yml +11 -0
  61. package/locales/en/overrides/.cline/agents/pr-adjudicator.yml +11 -0
  62. package/locales/en/overrides/.cline/agents/pr-finder.yml +11 -0
  63. package/locales/en/overrides/.cline/agents/pr-verifier.yml +11 -0
  64. package/locales/en/overrides/.cline/agents/ui-verifier.yml +8 -0
  65. package/locales/en/overrides/.cline/agents/wiki-compiler.yml +14 -0
  66. package/locales/en/overrides/.cline/workflows/wf-deploy.md +8 -0
  67. package/locales/en/overrides/.cline/workflows/wf-maintain.md +8 -0
  68. package/locales/en/overrides/.cline/workflows/wf-new-task.md +8 -0
  69. package/locales/en/overrides/.cline/workflows/wf-pipeline-run.md +8 -0
  70. package/locales/en/overrides/.cline/workflows/wf-pr-review.md +8 -0
  71. package/locales/en/overrides/.cline/workflows/wf-review.md +8 -0
  72. package/locales/en/overrides/.cline/workflows/wf-stages.md +8 -0
  73. package/locales/en/overrides/.codebuddy/CODEBUDDY.md +7 -0
  74. package/locales/en/overrides/.codebuddy/agents/implementer.md +9 -0
  75. package/locales/en/overrides/.codebuddy/agents/independent-reviewer.md +10 -0
  76. package/locales/en/overrides/.codebuddy/agents/pr-adjudicator.md +10 -0
  77. package/locales/en/overrides/.codebuddy/agents/pr-finder.md +10 -0
  78. package/locales/en/overrides/.codebuddy/agents/pr-verifier.md +10 -0
  79. package/locales/en/overrides/.codebuddy/agents/ui-verifier.md +11 -0
  80. package/locales/en/overrides/.codebuddy/agents/wiki-compiler.md +10 -0
  81. package/locales/en/overrides/.codebuddy/commands/wf-deploy.md +8 -0
  82. package/locales/en/overrides/.codebuddy/commands/wf-maintain.md +8 -0
  83. package/locales/en/overrides/.codebuddy/commands/wf-new-task.md +8 -0
  84. package/locales/en/overrides/.codebuddy/commands/wf-pipeline-run.md +8 -0
  85. package/locales/en/overrides/.codebuddy/commands/wf-pr-review.md +8 -0
  86. package/locales/en/overrides/.codebuddy/commands/wf-review.md +8 -0
  87. package/locales/en/overrides/.codebuddy/commands/wf-stages.md +8 -0
  88. package/locales/en/overrides/.codebuddy/rules/backend-scope.md +5 -0
  89. package/locales/en/overrides/.codebuddy/rules/frontend-scope.md +5 -0
  90. package/locales/en/overrides/.codebuddy/skills/tfs-pr/SKILL.md +6 -0
  91. package/locales/en/overrides/.commandcode/agents/implementer.md +10 -0
  92. package/locales/en/overrides/.commandcode/agents/independent-reviewer.md +9 -0
  93. package/locales/en/overrides/.commandcode/agents/pr-adjudicator.md +9 -0
  94. package/locales/en/overrides/.commandcode/agents/pr-finder.md +9 -0
  95. package/locales/en/overrides/.commandcode/agents/pr-verifier.md +9 -0
  96. package/locales/en/overrides/.commandcode/agents/ui-verifier.md +10 -0
  97. package/locales/en/overrides/.commandcode/agents/wiki-compiler.md +10 -0
  98. package/locales/en/overrides/.commandcode/commands/wf-deploy.md +7 -0
  99. package/locales/en/overrides/.commandcode/commands/wf-maintain.md +7 -0
  100. package/locales/en/overrides/.commandcode/commands/wf-new-task.md +7 -0
  101. package/locales/en/overrides/.commandcode/commands/wf-pipeline-run.md +7 -0
  102. package/locales/en/overrides/.commandcode/commands/wf-pr-review.md +7 -0
  103. package/locales/en/overrides/.commandcode/commands/wf-review.md +7 -0
  104. package/locales/en/overrides/.commandcode/commands/wf-stages.md +7 -0
  105. package/locales/en/overrides/.opencode/agents/implementer.md +51 -0
  106. package/locales/en/overrides/.opencode/agents/independent-reviewer.md +18 -0
  107. package/locales/en/overrides/.opencode/agents/pr-adjudicator.md +18 -0
  108. package/locales/en/overrides/.opencode/agents/pr-finder.md +18 -0
  109. package/locales/en/overrides/.opencode/agents/pr-verifier.md +18 -0
  110. package/locales/en/overrides/.opencode/agents/ui-verifier.md +45 -0
  111. package/locales/en/overrides/.opencode/agents/wiki-compiler.md +51 -0
  112. package/locales/en/overrides/.opencode/commands/wf-deploy.md +7 -0
  113. package/locales/en/overrides/.opencode/commands/wf-maintain.md +7 -0
  114. package/locales/en/overrides/.opencode/commands/wf-new-task.md +7 -0
  115. package/locales/en/overrides/.opencode/commands/wf-pipeline-run.md +7 -0
  116. package/locales/en/overrides/.opencode/commands/wf-pr-review.md +7 -0
  117. package/locales/en/overrides/.opencode/commands/wf-review.md +7 -0
  118. package/locales/en/overrides/.opencode/commands/wf-stages.md +7 -0
  119. package/locales/en/overrides/.pi/agents/implementer.md +11 -0
  120. package/locales/en/overrides/.pi/agents/independent-reviewer.md +12 -0
  121. package/locales/en/overrides/.pi/agents/pr-adjudicator.md +12 -0
  122. package/locales/en/overrides/.pi/agents/pr-finder.md +11 -0
  123. package/locales/en/overrides/.pi/agents/pr-verifier.md +11 -0
  124. package/locales/en/overrides/.pi/agents/ui-verifier.md +11 -0
  125. package/locales/en/overrides/.pi/agents/wiki-compiler.md +11 -0
  126. package/locales/en/overrides/.qoder/agents/implementer.md +9 -0
  127. package/locales/en/overrides/.qoder/agents/independent-reviewer.md +10 -0
  128. package/locales/en/overrides/.qoder/agents/pr-adjudicator.md +10 -0
  129. package/locales/en/overrides/.qoder/agents/pr-finder.md +10 -0
  130. package/locales/en/overrides/.qoder/agents/pr-verifier.md +10 -0
  131. package/locales/en/overrides/.qoder/agents/ui-verifier.md +10 -0
  132. package/locales/en/overrides/.qoder/agents/wiki-compiler.md +10 -0
  133. package/locales/en/overrides/.qoder/commands/wf-deploy.md +8 -0
  134. package/locales/en/overrides/.qoder/commands/wf-maintain.md +8 -0
  135. package/locales/en/overrides/.qoder/commands/wf-new-task.md +8 -0
  136. package/locales/en/overrides/.qoder/commands/wf-pipeline-run.md +8 -0
  137. package/locales/en/overrides/.qoder/commands/wf-pr-review.md +8 -0
  138. package/locales/en/overrides/.qoder/commands/wf-review.md +8 -0
  139. package/locales/en/overrides/.qoder/commands/wf-stages.md +8 -0
  140. package/locales/en/overrides/.qwen/agents/implementer.md +10 -0
  141. package/locales/en/overrides/.qwen/agents/independent-reviewer.md +10 -0
  142. package/locales/en/overrides/.qwen/agents/pr-adjudicator.md +10 -0
  143. package/locales/en/overrides/.qwen/agents/pr-finder.md +10 -0
  144. package/locales/en/overrides/.qwen/agents/pr-verifier.md +10 -0
  145. package/locales/en/overrides/.qwen/agents/ui-verifier.md +10 -0
  146. package/locales/en/overrides/.qwen/agents/wiki-compiler.md +13 -0
  147. package/locales/en/overrides/.qwen/commands/wf-deploy.md +7 -0
  148. package/locales/en/overrides/.qwen/commands/wf-maintain.md +7 -0
  149. package/locales/en/overrides/.qwen/commands/wf-new-task.md +7 -0
  150. package/locales/en/overrides/.qwen/commands/wf-pipeline-run.md +7 -0
  151. package/locales/en/overrides/.qwen/commands/wf-pr-review.md +7 -0
  152. package/locales/en/overrides/.qwen/commands/wf-review.md +7 -0
  153. package/locales/en/overrides/.qwen/commands/wf-stages.md +7 -0
  154. package/locales/en/overrides/.trae/agents/implementer.md +9 -0
  155. package/locales/en/overrides/.trae/agents/independent-reviewer.md +10 -0
  156. package/locales/en/overrides/.trae/agents/pr-adjudicator.md +10 -0
  157. package/locales/en/overrides/.trae/agents/pr-finder.md +10 -0
  158. package/locales/en/overrides/.trae/agents/pr-verifier.md +10 -0
  159. package/locales/en/overrides/.trae/agents/ui-verifier.md +10 -0
  160. package/locales/en/overrides/.trae/agents/wiki-compiler.md +10 -0
  161. package/locales/en/overrides/.trae/commands/wf-deploy.md +8 -0
  162. package/locales/en/overrides/.trae/commands/wf-maintain.md +8 -0
  163. package/locales/en/overrides/.trae/commands/wf-new-task.md +8 -0
  164. package/locales/en/overrides/.trae/commands/wf-pipeline-run.md +8 -0
  165. package/locales/en/overrides/.trae/commands/wf-pr-review.md +8 -0
  166. package/locales/en/overrides/.trae/commands/wf-review.md +8 -0
  167. package/locales/en/overrides/.trae/commands/wf-stages.md +8 -0
  168. package/locales/en/overrides/.trae/rules/backend-scope.md +5 -0
  169. package/locales/en/overrides/.trae/rules/frontend-scope.md +5 -0
  170. package/locales/en/overrides/.zcode/agents/implementer.md +8 -0
  171. package/locales/en/overrides/.zcode/agents/independent-reviewer.md +8 -0
  172. package/locales/en/overrides/.zcode/agents/ui-verifier.md +8 -0
  173. package/locales/en/overrides/.zcode/agents/wiki-compiler.md +8 -0
  174. package/locales/en/overrides/AGENTS.md +52 -0
  175. package/locales/en/overrides/CLAUDE.md +20 -0
  176. package/locales/en/overrides/wiki/INDEX.md +33 -0
  177. package/locales/en/overrides/wiki/drafts-archive/README.md +6 -0
  178. package/locales/en/overrides/wiki//346/225/260/346/215/256/347/273/264/346/212/244/README.md +22 -0
  179. package/locales/en/overrides/wiki//347/237/245/350/257/206/346/262/211/346/267/200/346/200/273/350/247/210.html +230 -0
  180. package/locales/en/overrides/workflow/INDEX.md +13 -0
  181. package/locales/en/overrides/workflow/README.md +67 -0
  182. package/locales/en/overrides/workflow/archive/README.md +3 -0
  183. package/locales/en/overrides/workflow/delegations.md +4 -0
  184. package/locales/en/overrides/workflow/effective-policy.md +4 -0
  185. package/locales/en/overrides/workflow/gate-cost.md +4 -0
  186. package/locales/en/overrides/workflow/incidents/_TEMPLATE.md +49 -0
  187. package/locales/en/overrides/workflow/intents/_TEMPLATE.md +43 -0
  188. package/locales/en/overrides/workflow/metrics.md +4 -0
  189. package/locales/en/overrides/workflow/papercuts.md +3 -0
  190. package/locales/en/overrides/workflow/plans/_TEMPLATE.md +47 -0
  191. package/locales/en/overrides/workflow/regression-checklist.md +3 -0
  192. package/locales/en/overrides/workflow/specs/_TEMPLATE.md +86 -0
  193. package/locales/en/overrides/workflow/verify-evidence.md +4 -0
  194. package/locales/zh-CN/installer.json +25 -0
  195. package/package.json +23 -36
  196. package/schemas/install-manifest.schema.json +24 -0
  197. package/schemas/project-profile.schema.json +28 -0
  198. package/src/cli/args.mjs +41 -0
  199. package/src/cli/main.mjs +72 -0
  200. package/src/commands/add-host.mjs +29 -0
  201. package/src/commands/doctor.mjs +80 -0
  202. package/src/commands/install.mjs +149 -0
  203. package/src/commands/upgrade.mjs +30 -0
  204. package/src/git/config.mjs +61 -0
  205. package/src/hosts/registry.mjs +26 -0
  206. package/src/i18n.mjs +32 -0
  207. package/src/install/apply.mjs +124 -0
  208. package/src/install/manifest.mjs +40 -0
  209. package/src/install/plan.mjs +83 -0
  210. package/src/render/tokens.mjs +58 -0
  211. package/templates/engine/.agents/board/dev-tour.html +1940 -0
  212. package/templates/engine/.agents/board/index.html +835 -0
  213. package/templates/engine/.agents/commands/deploy.md +52 -0
  214. package/templates/engine/.agents/commands/maintain.md +76 -0
  215. package/templates/engine/.agents/commands/new-task.md +89 -0
  216. package/templates/engine/.agents/commands/pipeline-run.md +56 -0
  217. package/templates/engine/.agents/commands/pr-review.md +30 -0
  218. package/templates/engine/.agents/commands/review.md +93 -0
  219. package/templates/engine/.agents/commands/stages.md +256 -0
  220. package/templates/engine/.agents/config/commit-msg-rules.json +7 -0
  221. package/templates/engine/.agents/config/engine.json +11 -0
  222. package/templates/engine/.agents/config/gate-budgets.json +5 -0
  223. package/templates/engine/.agents/config/mechanism-registry.md +62 -0
  224. package/templates/engine/.agents/config/model-roles.json +26 -0
  225. package/templates/engine/.agents/config/model-roles.local.example.json +7 -0
  226. package/templates/engine/.agents/config/pr-review.json +67 -0
  227. package/templates/engine/.agents/config/principles.md +32 -0
  228. package/templates/engine/.agents/config/workflow-enums.txt +25 -0
  229. package/templates/engine/.agents/hooks/check-architecture.mjs +168 -0
  230. package/templates/engine/.agents/hooks/check-audit-fields.mjs +56 -0
  231. package/templates/engine/.agents/hooks/check-commit-plan-ref.mjs +84 -0
  232. package/templates/engine/.agents/hooks/check-confirm-order.mjs +281 -0
  233. package/templates/engine/.agents/hooks/check-delete-guard.mjs +63 -0
  234. package/templates/engine/.agents/hooks/check-notify-guard.mjs +55 -0
  235. package/templates/engine/.agents/hooks/commit-check.cjs +208 -0
  236. package/templates/engine/.agents/hooks/gates.json +33 -0
  237. package/templates/engine/.agents/hooks/local-pre-commit.mjs +27 -0
  238. package/templates/engine/.agents/hooks/pre-shell-check.cjs +361 -0
  239. package/templates/engine/.agents/hooks/pre-write-check.cjs +220 -0
  240. package/templates/engine/.agents/notes/gate-diet.md +75 -0
  241. package/templates/engine/.agents/notes/pr-review-cost-discipline.md +48 -0
  242. package/templates/engine/.agents/notes/process-order-rule.md +21 -0
  243. package/templates/engine/.agents/notes/runtime-env.local.example.md +21 -0
  244. package/templates/engine/.agents/pipelines/_TEMPLATE.md +75 -0
  245. package/templates/engine/.agents/pipelines/pipeline-closing.md +28 -0
  246. package/templates/engine/.agents/pipelines//347/244/272/344/276/213-/345/271/266/350/241/214/345/256/236/347/216/260/350/257/204/345/256/241.md +16 -0
  247. package/templates/engine/.agents/roles/implementer.md +28 -0
  248. package/templates/engine/.agents/roles/independent-reviewer.md +39 -0
  249. package/templates/engine/.agents/roles/pr-adjudicator.md +27 -0
  250. package/templates/engine/.agents/roles/pr-finder.md +51 -0
  251. package/templates/engine/.agents/roles/pr-verifier.md +44 -0
  252. package/templates/engine/.agents/roles/ui-verifier.md +22 -0
  253. package/templates/engine/.agents/roles/wiki-compiler.md +47 -0
  254. package/templates/engine/.agents/scripts/agg-delegations.mjs +439 -0
  255. package/templates/engine/.agents/scripts/agg-judgments.mjs +301 -0
  256. package/templates/engine/.agents/scripts/agg-kb-usage.mjs +196 -0
  257. package/templates/engine/.agents/scripts/append-compensation.mjs +109 -0
  258. package/templates/engine/.agents/scripts/archive-sweep.mjs +229 -0
  259. package/templates/engine/.agents/scripts/auto-tour.mjs +77 -0
  260. package/templates/engine/.agents/scripts/board-port.mjs +17 -0
  261. package/templates/engine/.agents/scripts/check-doc-body-drift.mjs +102 -0
  262. package/templates/engine/.agents/scripts/check-engine-artifacts.mjs +54 -0
  263. package/templates/engine/.agents/scripts/check-hook-wiring.mjs +75 -0
  264. package/templates/engine/.agents/scripts/check-lane-surface.mjs +393 -0
  265. package/templates/engine/.agents/scripts/check-ledger-doc-presence.mjs +71 -0
  266. package/templates/engine/.agents/scripts/check-ledger-invariant.mjs +873 -0
  267. package/templates/engine/.agents/scripts/check-local-gate-config.mjs +95 -0
  268. package/templates/engine/.agents/scripts/check-local-gates.mjs +248 -0
  269. package/templates/engine/.agents/scripts/check-loop-kit.mjs +550 -0
  270. package/templates/engine/.agents/scripts/check-loop-rev-semantics.mjs +59 -0
  271. package/templates/engine/.agents/scripts/check-loop-sections/s01-pairing.mjs +116 -0
  272. package/templates/engine/.agents/scripts/check-loop-sections/s03x-regr-evidence.mjs +38 -0
  273. package/templates/engine/.agents/scripts/check-loop-sections/s08-acceptance.mjs +130 -0
  274. package/templates/engine/.agents/scripts/check-loop-sections/s15-fingerprint.mjs +152 -0
  275. package/templates/engine/.agents/scripts/check-loop-sections/s23-convergence-audit.mjs +182 -0
  276. package/templates/engine/.agents/scripts/check-loop-sections/s29-regr-enforcer.mjs +69 -0
  277. package/templates/engine/.agents/scripts/check-loop.mjs +131 -0
  278. package/templates/engine/.agents/scripts/check-regression-consistency.mjs +252 -0
  279. package/templates/engine/.agents/scripts/check-schema-residue.mjs +144 -0
  280. package/templates/engine/.agents/scripts/check-scope-range.mjs +156 -0
  281. package/templates/engine/.agents/scripts/check-scope.mjs +121 -0
  282. package/templates/engine/.agents/scripts/check-scripts-syntax.mjs +138 -0
  283. package/templates/engine/.agents/scripts/check-secrets-lite.mjs +239 -0
  284. package/templates/engine/.agents/scripts/check-secrets.mjs +104 -0
  285. package/templates/engine/.agents/scripts/check-test-impact-map.mjs +107 -0
  286. package/templates/engine/.agents/scripts/ci-assert-frontend-deps.mjs +42 -0
  287. package/templates/engine/.agents/scripts/ci-commit-hygiene.mjs +86 -0
  288. package/templates/engine/.agents/scripts/ci-install-gitleaks.mjs +75 -0
  289. package/templates/engine/.agents/scripts/ci-push-before.mjs +49 -0
  290. package/templates/engine/.agents/scripts/closeout.mjs +127 -0
  291. package/templates/engine/.agents/scripts/compact-ledgers.mjs +70 -0
  292. package/templates/engine/.agents/scripts/confirm-doc.mjs +737 -0
  293. package/templates/engine/.agents/scripts/delegation-presence.mjs +38 -0
  294. package/templates/engine/.agents/scripts/dev-tour-model.mjs +1398 -0
  295. package/templates/engine/.agents/scripts/dream-run.mjs +283 -0
  296. package/templates/engine/.agents/scripts/ensure-board.mjs +187 -0
  297. package/templates/engine/.agents/scripts/failure-attribution.mjs +11 -0
  298. package/templates/engine/.agents/scripts/fill-intent.mjs +60 -0
  299. package/templates/engine/.agents/scripts/fill-plan.mjs +105 -0
  300. package/templates/engine/.agents/scripts/fill-spec.mjs +72 -0
  301. package/templates/engine/.agents/scripts/gen-dev-tour.mjs +191 -0
  302. package/templates/engine/.agents/scripts/gen-effective-policy.mjs +113 -0
  303. package/templates/engine/.agents/scripts/gen-engine-map.mjs +292 -0
  304. package/templates/engine/.agents/scripts/gen-narrative-claims.mjs +275 -0
  305. package/templates/engine/.agents/scripts/gen-verify-evidence.mjs +115 -0
  306. package/templates/engine/.agents/scripts/gen-wiki-board.mjs +221 -0
  307. package/templates/engine/.agents/scripts/gen-workflow-index.mjs +201 -0
  308. package/templates/engine/.agents/scripts/gen-workflow-metrics.mjs +692 -0
  309. package/templates/engine/.agents/scripts/git-merge-jsonl.mjs +62 -0
  310. package/templates/engine/.agents/scripts/judgment-ledger.mjs +68 -0
  311. package/templates/engine/.agents/scripts/kb-cache-evict.mjs +50 -0
  312. package/templates/engine/.agents/scripts/kb-search.mjs +423 -0
  313. package/templates/engine/.agents/scripts/lane-surface-audit.mjs +145 -0
  314. package/templates/engine/.agents/scripts/ledger-loader.mjs +77 -0
  315. package/templates/engine/.agents/scripts/ledger-shards.mjs +346 -0
  316. package/templates/engine/.agents/scripts/metrics-core.mjs +131 -0
  317. package/templates/engine/.agents/scripts/pipeline-run.mjs +964 -0
  318. package/templates/engine/.agents/scripts/policy.mjs +250 -0
  319. package/templates/engine/.agents/scripts/pr-create.mjs +54 -0
  320. package/templates/engine/.agents/scripts/pr-review.mjs +1551 -0
  321. package/templates/engine/.agents/scripts/quote-grounding.mjs +233 -0
  322. package/templates/engine/.agents/scripts/regen-ledgers.mjs +59 -0
  323. package/templates/engine/.agents/scripts/rewrite-file.mjs +135 -0
  324. package/templates/engine/.agents/scripts/rule-budget.mjs +246 -0
  325. package/templates/engine/.agents/scripts/stage-gates.mjs +812 -0
  326. package/templates/engine/.agents/scripts/test-impact-lib.mjs +451 -0
  327. package/templates/engine/.agents/scripts/test-impact.mjs +105 -0
  328. package/templates/engine/.agents/scripts/trust-mode.mjs +130 -0
  329. package/templates/engine/.agents/scripts/verify-scope.mjs +163 -0
  330. package/templates/engine/.agents/scripts/verify-wiki-consistency.mjs +264 -0
  331. package/templates/engine/.agents/scripts/verify.mjs +847 -0
  332. package/templates/engine/.agents/scripts/warn-format.mjs +57 -0
  333. package/templates/engine/.agents/scripts/wf-journal.mjs +230 -0
  334. package/templates/engine/.agents/scripts/workflow-board-server.mjs +696 -0
  335. package/templates/engine/.agents/scripts/workflow-enums.mjs +70 -0
  336. package/templates/engine/.agents/scripts/workflows-check.mjs +260 -0
  337. package/templates/engine/.agents/settings.json +33 -0
  338. package/templates/engine/.agents/skills/arena/SKILL.md +50 -0
  339. package/templates/engine/.agents/skills/autonomous-run/SKILL.md +45 -0
  340. package/templates/engine/.agents/skills/blast-radius/SKILL.md +53 -0
  341. package/templates/engine/.agents/skills/csharp-quality-gates/SKILL.md +109 -0
  342. package/templates/engine/.agents/skills/csharp-quality-gates/scripts/quality-gates.mjs +430 -0
  343. package/templates/engine/.agents/skills/dev-tour/SKILL.md +98 -0
  344. package/templates/engine/.agents/skills/dream/SKILL.md +63 -0
  345. package/templates/engine/.agents/skills/eval/SKILL.md +42 -0
  346. package/templates/engine/.agents/skills/eval/scripts/eval-score.mjs +59 -0
  347. package/templates/engine/.agents/skills/interrogate/SKILL.md +49 -0
  348. package/templates/engine/.agents/skills/interrogate/scripts/interrogate-plan.mjs +72 -0
  349. package/templates/engine/.agents/skills/number-vetting/SKILL.md +35 -0
  350. package/templates/engine/.agents/skills/page-refactor/SKILL.md +192 -0
  351. package/templates/engine/.agents/skills/page-refactor/references/templates.md +989 -0
  352. package/templates/engine/.agents/skills/papercut-fix/SKILL.md +92 -0
  353. package/templates/engine/.agents/skills/papercut-fix/references/response-template.md +81 -0
  354. package/templates/engine/.agents/skills/pause-safely/SKILL.md +31 -0
  355. package/templates/engine/.agents/skills/perf/SKILL.md +42 -0
  356. package/templates/engine/.agents/skills/review-method/SKILL.md +92 -0
  357. package/templates/engine/.agents/skills/review-method/golden-set.md +61 -0
  358. package/templates/engine/.agents/skills/session-resume/SKILL.md +69 -0
  359. package/templates/engine/.agents/skills/session-resume/scripts/worktree-audit.mjs +110 -0
  360. package/templates/engine/.agents/skills/shipyard-workflow-closeout/SKILL.md +109 -0
  361. package/templates/engine/.agents/skills/show-me-your-work/SKILL.md +57 -0
  362. package/templates/engine/.agents/skills/show-me-your-work/references/decision-log-template.tsv +1 -0
  363. package/templates/engine/.agents/skills/show-me-your-work/scripts/decision-log.mjs +24 -0
  364. package/templates/engine/.agents/skills/tfs-pr/SKILL.md +95 -0
  365. package/templates/engine/.agents/skills/tfs-pr/scripts/tfs-pr.mjs +947 -0
  366. package/templates/engine/.agents/skills/verify-ui/SKILL.md +116 -0
  367. package/templates/engine/.agents/skills/verify-ui/features/.gitkeep +0 -0
  368. package/templates/engine/.agents/skills/verify-ui/scripts/gen-verify-feature.mjs +114 -0
  369. package/templates/engine/.agents/skills/visual-parity/SKILL.md +35 -0
  370. package/templates/engine/.agents/skills/why/SKILL.md +56 -0
  371. package/templates/engine/.agents/skills/why/scripts/why-evidence.mjs +74 -0
  372. package/templates/engine/.agents/skills/wiki/SKILL.md +53 -0
  373. package/templates/engine/.agents/tests/auto-tour.test.mjs +82 -0
  374. package/templates/engine/.agents/tests/dev-tour-model.test.mjs +452 -0
  375. package/templates/engine/.agents/tests/fill-plan-lite.test.mjs +46 -0
  376. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-bare-mid-path.md +14 -0
  377. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-bare-mid-path.model.json +179 -0
  378. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-fake-path-guard.md +21 -0
  379. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-fake-path-guard.model.json +194 -0
  380. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-h3-batches.md +20 -0
  381. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-h3-batches.model.json +207 -0
  382. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-issues.md +24 -0
  383. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-issues.model.json +225 -0
  384. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-l1-single-file.md +15 -0
  385. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-l1-single-file.model.json +160 -0
  386. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-layer-word-unique.md +29 -0
  387. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-layer-word-unique.model.json +266 -0
  388. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-layers-fallback.md +17 -0
  389. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-layers-fallback.model.json +207 -0
  390. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-numbered-steps.md +39 -0
  391. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-numbered-steps.model.json +359 -0
  392. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-path-guess.md +16 -0
  393. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-path-guess.model.json +131 -0
  394. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-table-rows.md +29 -0
  395. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-table-rows.model.json +190 -0
  396. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-task-checkboxes.md +39 -0
  397. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-task-checkboxes.model.json +362 -0
  398. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-union-label.md +24 -0
  399. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-union-label.model.json +224 -0
  400. package/templates/engine/.agents/tests/tools/gen-synthetic-plan.mjs +108 -0
  401. package/templates/git/.gitattributes +22 -0
  402. package/templates/git/.githooks/commit-msg +72 -0
  403. package/templates/git/.githooks/post-commit +62 -0
  404. package/templates/git/.githooks/pre-commit +197 -0
  405. package/templates/git/.githooks/pre-merge-commit +28 -0
  406. package/templates/git/.githooks/pre-push +201 -0
  407. package/templates/git/.gitignore.engine +11 -0
  408. package/templates/hosts/claude/CLAUDE.md +55 -0
  409. package/templates/hosts/claude/agents/implementer.md +7 -0
  410. package/templates/hosts/claude/agents/independent-reviewer.md +8 -0
  411. package/templates/hosts/claude/agents/pr-adjudicator.md +8 -0
  412. package/templates/hosts/claude/agents/pr-finder.md +8 -0
  413. package/templates/hosts/claude/agents/pr-verifier.md +8 -0
  414. package/templates/hosts/claude/agents/ui-verifier.md +8 -0
  415. package/templates/hosts/claude/agents/wiki-compiler.md +8 -0
  416. package/templates/hosts/claude/commands/wf-deploy.md +10 -0
  417. package/templates/hosts/claude/commands/wf-maintain.md +10 -0
  418. package/templates/hosts/claude/commands/wf-new-task.md +10 -0
  419. package/templates/hosts/claude/commands/wf-pipeline-run.md +10 -0
  420. package/templates/hosts/claude/commands/wf-pr-review.md +10 -0
  421. package/templates/hosts/claude/commands/wf-review.md +10 -0
  422. package/templates/hosts/claude/commands/wf-stages.md +10 -0
  423. package/templates/hosts/claude/settings.json +57 -0
  424. package/templates/hosts/cline/agents/implementer.yml +15 -0
  425. package/templates/hosts/cline/agents/independent-reviewer.yml +20 -0
  426. package/templates/hosts/cline/agents/pr-adjudicator.yml +18 -0
  427. package/templates/hosts/cline/agents/pr-finder.yml +19 -0
  428. package/templates/hosts/cline/agents/pr-verifier.yml +18 -0
  429. package/templates/hosts/cline/agents/ui-verifier.yml +17 -0
  430. package/templates/hosts/cline/agents/wiki-compiler.yml +20 -0
  431. package/templates/hosts/cline/hooks/PreToolUse.cjs +260 -0
  432. package/templates/hosts/cline/workflows/wf-deploy.md +8 -0
  433. package/templates/hosts/cline/workflows/wf-maintain.md +8 -0
  434. package/templates/hosts/cline/workflows/wf-new-task.md +8 -0
  435. package/templates/hosts/cline/workflows/wf-pipeline-run.md +8 -0
  436. package/templates/hosts/cline/workflows/wf-pr-review.md +8 -0
  437. package/templates/hosts/cline/workflows/wf-review.md +8 -0
  438. package/templates/hosts/cline/workflows/wf-stages.md +8 -0
  439. package/templates/hosts/codebuddy/CODEBUDDY.md +7 -0
  440. package/templates/hosts/codebuddy/agents/implementer.md +9 -0
  441. package/templates/hosts/codebuddy/agents/independent-reviewer.md +10 -0
  442. package/templates/hosts/codebuddy/agents/pr-adjudicator.md +10 -0
  443. package/templates/hosts/codebuddy/agents/pr-finder.md +10 -0
  444. package/templates/hosts/codebuddy/agents/pr-verifier.md +10 -0
  445. package/templates/hosts/codebuddy/agents/ui-verifier.md +11 -0
  446. package/templates/hosts/codebuddy/agents/wiki-compiler.md +10 -0
  447. package/templates/hosts/codebuddy/commands/wf-deploy.md +10 -0
  448. package/templates/hosts/codebuddy/commands/wf-maintain.md +10 -0
  449. package/templates/hosts/codebuddy/commands/wf-new-task.md +10 -0
  450. package/templates/hosts/codebuddy/commands/wf-pipeline-run.md +10 -0
  451. package/templates/hosts/codebuddy/commands/wf-pr-review.md +10 -0
  452. package/templates/hosts/codebuddy/commands/wf-review.md +10 -0
  453. package/templates/hosts/codebuddy/commands/wf-stages.md +10 -0
  454. package/templates/hosts/codebuddy/rules/backend-scope.md +5 -0
  455. package/templates/hosts/codebuddy/rules/frontend-scope.md +5 -0
  456. package/templates/hosts/codebuddy/settings.json +31 -0
  457. package/templates/hosts/codebuddy/skills/tfs-pr/SKILL.md +6 -0
  458. package/templates/hosts/commandcode/agents/implementer.md +10 -0
  459. package/templates/hosts/commandcode/agents/independent-reviewer.md +9 -0
  460. package/templates/hosts/commandcode/agents/pr-adjudicator.md +9 -0
  461. package/templates/hosts/commandcode/agents/pr-finder.md +9 -0
  462. package/templates/hosts/commandcode/agents/pr-verifier.md +9 -0
  463. package/templates/hosts/commandcode/agents/ui-verifier.md +11 -0
  464. package/templates/hosts/commandcode/agents/wiki-compiler.md +10 -0
  465. package/templates/hosts/commandcode/commands/wf-deploy.md +9 -0
  466. package/templates/hosts/commandcode/commands/wf-maintain.md +9 -0
  467. package/templates/hosts/commandcode/commands/wf-new-task.md +9 -0
  468. package/templates/hosts/commandcode/commands/wf-pipeline-run.md +9 -0
  469. package/templates/hosts/commandcode/commands/wf-pr-review.md +9 -0
  470. package/templates/hosts/commandcode/commands/wf-review.md +9 -0
  471. package/templates/hosts/commandcode/commands/wf-stages.md +9 -0
  472. package/templates/hosts/commandcode/settings.json +59 -0
  473. package/templates/hosts/opencode/agents/implementer.md +51 -0
  474. package/templates/hosts/opencode/agents/independent-reviewer.md +18 -0
  475. package/templates/hosts/opencode/agents/pr-adjudicator.md +18 -0
  476. package/templates/hosts/opencode/agents/pr-finder.md +18 -0
  477. package/templates/hosts/opencode/agents/pr-verifier.md +18 -0
  478. package/templates/hosts/opencode/agents/ui-verifier.md +45 -0
  479. package/templates/hosts/opencode/agents/wiki-compiler.md +51 -0
  480. package/templates/hosts/opencode/commands/wf-deploy.md +7 -0
  481. package/templates/hosts/opencode/commands/wf-maintain.md +7 -0
  482. package/templates/hosts/opencode/commands/wf-new-task.md +7 -0
  483. package/templates/hosts/opencode/commands/wf-pipeline-run.md +7 -0
  484. package/templates/hosts/opencode/commands/wf-pr-review.md +7 -0
  485. package/templates/hosts/opencode/commands/wf-review.md +7 -0
  486. package/templates/hosts/opencode/commands/wf-stages.md +7 -0
  487. package/templates/hosts/pi/agents/implementer.md +10 -0
  488. package/templates/hosts/pi/agents/independent-reviewer.md +11 -0
  489. package/templates/hosts/pi/agents/pr-adjudicator.md +11 -0
  490. package/templates/hosts/pi/agents/pr-finder.md +10 -0
  491. package/templates/hosts/pi/agents/pr-verifier.md +10 -0
  492. package/templates/hosts/pi/agents/ui-verifier.md +10 -0
  493. package/templates/hosts/pi/agents/wiki-compiler.md +10 -0
  494. package/templates/hosts/pi/extensions/lib/gates-core.cjs +196 -0
  495. package/templates/hosts/pi/extensions/shipyard-gates.ts +95 -0
  496. package/templates/hosts/pi/settings.json +5 -0
  497. package/templates/hosts/qoder/agents/implementer.md +9 -0
  498. package/templates/hosts/qoder/agents/independent-reviewer.md +10 -0
  499. package/templates/hosts/qoder/agents/pr-adjudicator.md +10 -0
  500. package/templates/hosts/qoder/agents/pr-finder.md +10 -0
  501. package/templates/hosts/qoder/agents/pr-verifier.md +10 -0
  502. package/templates/hosts/qoder/agents/ui-verifier.md +10 -0
  503. package/templates/hosts/qoder/agents/wiki-compiler.md +10 -0
  504. package/templates/hosts/qoder/commands/wf-deploy.md +8 -0
  505. package/templates/hosts/qoder/commands/wf-maintain.md +8 -0
  506. package/templates/hosts/qoder/commands/wf-new-task.md +8 -0
  507. package/templates/hosts/qoder/commands/wf-pipeline-run.md +8 -0
  508. package/templates/hosts/qoder/commands/wf-pr-review.md +8 -0
  509. package/templates/hosts/qoder/commands/wf-review.md +8 -0
  510. package/templates/hosts/qoder/commands/wf-stages.md +8 -0
  511. package/templates/hosts/qoder/settings.json +63 -0
  512. package/templates/hosts/qwen/agents/implementer.md +8 -0
  513. package/templates/hosts/qwen/agents/independent-reviewer.md +8 -0
  514. package/templates/hosts/qwen/agents/pr-adjudicator.md +8 -0
  515. package/templates/hosts/qwen/agents/pr-finder.md +8 -0
  516. package/templates/hosts/qwen/agents/pr-verifier.md +8 -0
  517. package/templates/hosts/qwen/agents/ui-verifier.md +8 -0
  518. package/templates/hosts/qwen/agents/wiki-compiler.md +11 -0
  519. package/templates/hosts/qwen/commands/wf-deploy.md +9 -0
  520. package/templates/hosts/qwen/commands/wf-maintain.md +9 -0
  521. package/templates/hosts/qwen/commands/wf-new-task.md +9 -0
  522. package/templates/hosts/qwen/commands/wf-pipeline-run.md +9 -0
  523. package/templates/hosts/qwen/commands/wf-pr-review.md +9 -0
  524. package/templates/hosts/qwen/commands/wf-review.md +9 -0
  525. package/templates/hosts/qwen/commands/wf-stages.md +9 -0
  526. package/templates/hosts/qwen/settings.json +59 -0
  527. package/templates/hosts/trae/agents/implementer.md +9 -0
  528. package/templates/hosts/trae/agents/independent-reviewer.md +10 -0
  529. package/templates/hosts/trae/agents/pr-adjudicator.md +10 -0
  530. package/templates/hosts/trae/agents/pr-finder.md +10 -0
  531. package/templates/hosts/trae/agents/pr-verifier.md +10 -0
  532. package/templates/hosts/trae/agents/ui-verifier.md +10 -0
  533. package/templates/hosts/trae/agents/wiki-compiler.md +10 -0
  534. package/templates/hosts/trae/commands/wf-deploy.md +8 -0
  535. package/templates/hosts/trae/commands/wf-maintain.md +8 -0
  536. package/templates/hosts/trae/commands/wf-new-task.md +8 -0
  537. package/templates/hosts/trae/commands/wf-pipeline-run.md +8 -0
  538. package/templates/hosts/trae/commands/wf-pr-review.md +8 -0
  539. package/templates/hosts/trae/commands/wf-review.md +8 -0
  540. package/templates/hosts/trae/commands/wf-stages.md +8 -0
  541. package/templates/hosts/trae/hooks.json +17 -0
  542. package/templates/hosts/trae/rules/backend-scope.md +5 -0
  543. package/templates/hosts/trae/rules/frontend-scope.md +5 -0
  544. package/templates/hosts/zcode/agents/implementer.md +8 -0
  545. package/templates/hosts/zcode/agents/independent-reviewer.md +8 -0
  546. package/templates/hosts/zcode/agents/ui-verifier.md +8 -0
  547. package/templates/hosts/zcode/agents/wiki-compiler.md +8 -0
  548. package/templates/hosts/zcode/config.json +31 -0
  549. package/templates/hosts/zcode/workflows/code-review.dwf.ts +428 -0
  550. package/templates/hosts/zcode/workflows/fullchain-flow-test.dwf.ts +898 -0
  551. package/templates/profiles/dotnet/.agents/config/lane-surfaces.txt +33 -0
  552. package/templates/profiles/dotnet/.agents/config/rule-budgets.txt +84 -0
  553. package/templates/profiles/dotnet/.agents/config/test-impact-map.json +590 -0
  554. package/templates/profiles/dotnet/.agents/config/workflow-modules.txt +18 -0
  555. package/templates/profiles/dotnet/.agents/hooks/commit-check.config.json +18 -0
  556. package/templates/profiles/dotnet/.agents/hooks/delete-guard-allowlist.txt +28 -0
  557. package/templates/profiles/dotnet/.agents/notes/runtime-env.md +178 -0
  558. package/templates/profiles/dotnet/AGENTS.md +52 -0
  559. package/templates/profiles/empty/.agents/config/lane-surfaces.txt +12 -0
  560. package/templates/profiles/empty/.agents/config/rule-budgets.txt +3 -0
  561. package/templates/profiles/empty/.agents/config/test-impact-map.json +8 -0
  562. package/templates/profiles/empty/.agents/config/workflow-modules.txt +2 -0
  563. package/templates/profiles/empty/.agents/hooks/commit-check.config.json +5 -0
  564. package/templates/profiles/empty/.agents/hooks/delete-guard-allowlist.txt +2 -0
  565. package/templates/profiles/empty/.agents/notes/runtime-env.md +44 -0
  566. package/templates/profiles/empty/AGENTS.md +52 -0
  567. package/templates/profiles/node/.agents/config/lane-surfaces.txt +12 -0
  568. package/templates/profiles/node/.agents/config/rule-budgets.txt +3 -0
  569. package/templates/profiles/node/.agents/config/test-impact-map.json +8 -0
  570. package/templates/profiles/node/.agents/config/workflow-modules.txt +2 -0
  571. package/templates/profiles/node/.agents/hooks/commit-check.config.json +5 -0
  572. package/templates/profiles/node/.agents/hooks/delete-guard-allowlist.txt +2 -0
  573. package/templates/profiles/node/.agents/notes/runtime-env.md +44 -0
  574. package/templates/profiles/node/AGENTS.md +52 -0
  575. package/templates/scaffold/wiki/INDEX.md +33 -0
  576. package/templates/scaffold/wiki/drafts-archive/README.md +7 -0
  577. package/templates/scaffold/wiki//344/272/247/345/223/201/351/234/200/346/261/202/.gitkeep +0 -0
  578. package/templates/scaffold/wiki//345/274/200/345/217/221/346/226/271/346/241/210/.gitkeep +0 -0
  579. package/templates/scaffold/wiki//346/225/260/346/215/256/347/273/264/346/212/244/README.md +22 -0
  580. package/templates/scaffold/wiki//346/265/213/350/257/225/346/212/245/345/221/212/.gitkeep +0 -0
  581. package/templates/scaffold/wiki//347/224/250/346/210/267/345/212/237/350/203/275/.gitkeep +0 -0
  582. package/templates/scaffold/wiki//347/237/245/350/257/206/346/262/211/346/267/200/346/200/273/350/247/210.html +230 -0
  583. package/templates/scaffold/wiki//351/241/271/347/233/256/350/247/204/350/214/203/.gitkeep +0 -0
  584. package/templates/scaffold/workflow/INDEX.md +13 -0
  585. package/templates/scaffold/workflow/README.md +67 -0
  586. package/templates/scaffold/workflow/archive/README.md +3 -0
  587. package/templates/scaffold/workflow/delegations.d/.gitkeep +0 -0
  588. package/templates/scaffold/workflow/delegations.md +4 -0
  589. package/templates/scaffold/workflow/effective-policy.md +4 -0
  590. package/templates/scaffold/workflow/evidence/.gitkeep +0 -0
  591. package/templates/scaffold/workflow/gate-cost.md +4 -0
  592. package/templates/scaffold/workflow/gate-metrics.d/.gitkeep +0 -0
  593. package/templates/scaffold/workflow/incidents/_TEMPLATE.md +49 -0
  594. package/templates/scaffold/workflow/intents/_TEMPLATE.md +43 -0
  595. package/templates/scaffold/workflow/metrics.md +4 -0
  596. package/templates/scaffold/workflow/papercuts.d/.gitkeep +0 -0
  597. package/templates/scaffold/workflow/papercuts.md +3 -0
  598. package/templates/scaffold/workflow/plans/_TEMPLATE.md +47 -0
  599. package/templates/scaffold/workflow/regression-checklist.d/.gitkeep +0 -0
  600. package/templates/scaffold/workflow/regression-checklist.md +3 -0
  601. package/templates/scaffold/workflow/research/.gitkeep +0 -0
  602. package/templates/scaffold/workflow/reviews.d/.gitkeep +0 -0
  603. package/templates/scaffold/workflow/specs/_TEMPLATE.md +87 -0
  604. package/templates/scaffold/workflow/verify-evidence/.gitkeep +0 -0
  605. package/templates/scaffold/workflow/verify-evidence.md +4 -0
  606. package/LICENSE +0 -21
  607. package/modules/gates/README.md +0 -25
  608. package/modules/gates/dotnet-ca/README.md +0 -24
  609. package/modules/gates/dotnet-ca/check-architecture.sh +0 -150
  610. package/modules/gates/dotnet-ca/local-pre-commit.line +0 -1
  611. package/modules/gates/generated-readonly/README.md +0 -13
  612. package/modules/gates/generated-readonly/check-generated.mjs +0 -61
  613. package/modules/gates/generated-readonly/local-pre-commit.line +0 -1
  614. package/modules/gates/node-layer/README.md +0 -9
  615. package/modules/gates/node-layer/check-node-layer.mjs +0 -29
  616. package/modules/gates/node-layer/local-pre-commit.line +0 -1
  617. package/modules/gates/py-import/README.md +0 -9
  618. package/modules/gates/py-import/check-py-import.mjs +0 -30
  619. package/modules/gates/py-import/local-pre-commit.line +0 -1
  620. package/modules/gates/test-protect/README.md +0 -23
  621. package/modules/gates/test-protect/check-test-protect.mjs +0 -64
  622. package/modules/gates/test-protect/local-pre-commit.line +0 -1
  623. package/modules/hosts/README.md +0 -57
  624. package/modules/hosts/claude/agents/implementer.md +0 -51
  625. package/modules/hosts/claude/agents/independent-reviewer.md +0 -49
  626. package/modules/hosts/claude/agents/ui-verifier.md +0 -48
  627. package/modules/hosts/claude/commands/wf-build.md +0 -69
  628. package/modules/hosts/claude/commands/wf-deploy.md +0 -58
  629. package/modules/hosts/claude/commands/wf-design.md +0 -49
  630. package/modules/hosts/claude/commands/wf-gate-checklist.md +0 -77
  631. package/modules/hosts/claude/commands/wf-maintain.md +0 -76
  632. package/modules/hosts/claude/commands/wf-new-task.md +0 -102
  633. package/modules/hosts/claude/commands/wf-pipeline-run.md +0 -35
  634. package/modules/hosts/claude/commands/wf-plan.md +0 -40
  635. package/modules/hosts/claude/commands/wf-review.md +0 -49
  636. package/modules/hosts/claude/commands/wf-sync-hosts.md +0 -64
  637. package/modules/hosts/claude/commands/wf-test.md +0 -68
  638. package/modules/hosts/codex/agents/implementer.md +0 -51
  639. package/modules/hosts/codex/agents/independent-reviewer.md +0 -49
  640. package/modules/hosts/codex/agents/ui-verifier.md +0 -48
  641. package/modules/hosts/codex/commands/wf-build.md +0 -69
  642. package/modules/hosts/codex/commands/wf-deploy.md +0 -58
  643. package/modules/hosts/codex/commands/wf-design.md +0 -49
  644. package/modules/hosts/codex/commands/wf-gate-checklist.md +0 -77
  645. package/modules/hosts/codex/commands/wf-maintain.md +0 -76
  646. package/modules/hosts/codex/commands/wf-new-task.md +0 -102
  647. package/modules/hosts/codex/commands/wf-pipeline-run.md +0 -35
  648. package/modules/hosts/codex/commands/wf-plan.md +0 -40
  649. package/modules/hosts/codex/commands/wf-review.md +0 -49
  650. package/modules/hosts/codex/commands/wf-sync-hosts.md +0 -64
  651. package/modules/hosts/codex/commands/wf-test.md +0 -68
  652. package/modules/hosts/codex/skills/flow-kit/SKILL.md +0 -14
  653. package/modules/hosts/cursor/agents/implementer.md +0 -51
  654. package/modules/hosts/cursor/agents/independent-reviewer.md +0 -49
  655. package/modules/hosts/cursor/agents/ui-verifier.md +0 -48
  656. package/modules/hosts/cursor/commands/wf-build.md +0 -69
  657. package/modules/hosts/cursor/commands/wf-deploy.md +0 -58
  658. package/modules/hosts/cursor/commands/wf-design.md +0 -49
  659. package/modules/hosts/cursor/commands/wf-gate-checklist.md +0 -77
  660. package/modules/hosts/cursor/commands/wf-maintain.md +0 -76
  661. package/modules/hosts/cursor/commands/wf-new-task.md +0 -102
  662. package/modules/hosts/cursor/commands/wf-pipeline-run.md +0 -35
  663. package/modules/hosts/cursor/commands/wf-plan.md +0 -40
  664. package/modules/hosts/cursor/commands/wf-review.md +0 -49
  665. package/modules/hosts/cursor/commands/wf-sync-hosts.md +0 -64
  666. package/modules/hosts/cursor/commands/wf-test.md +0 -68
  667. package/modules/hosts/omp/agents/implementer.md +0 -52
  668. package/modules/hosts/omp/agents/independent-reviewer.md +0 -50
  669. package/modules/hosts/omp/agents/ui-verifier.md +0 -49
  670. package/modules/hosts/opencode/agents/implementer.md +0 -59
  671. package/modules/hosts/opencode/agents/independent-reviewer.md +0 -53
  672. package/modules/hosts/opencode/agents/ui-verifier.md +0 -52
  673. package/modules/hosts/opencode/commands/wf-build.md +0 -69
  674. package/modules/hosts/opencode/commands/wf-deploy.md +0 -58
  675. package/modules/hosts/opencode/commands/wf-design.md +0 -49
  676. package/modules/hosts/opencode/commands/wf-gate-checklist.md +0 -77
  677. package/modules/hosts/opencode/commands/wf-maintain.md +0 -76
  678. package/modules/hosts/opencode/commands/wf-new-task.md +0 -102
  679. package/modules/hosts/opencode/commands/wf-pipeline-run.md +0 -35
  680. package/modules/hosts/opencode/commands/wf-plan.md +0 -40
  681. package/modules/hosts/opencode/commands/wf-review.md +0 -49
  682. package/modules/hosts/opencode/commands/wf-sync-hosts.md +0 -64
  683. package/modules/hosts/opencode/commands/wf-test.md +0 -68
  684. package/modules/hosts/trae/agents/implementer.md +0 -52
  685. package/modules/hosts/trae/agents/independent-reviewer.md +0 -51
  686. package/modules/hosts/trae/agents/ui-verifier.md +0 -50
  687. package/modules/hosts/trae/commands/wf-build.md +0 -70
  688. package/modules/hosts/trae/commands/wf-deploy.md +0 -59
  689. package/modules/hosts/trae/commands/wf-design.md +0 -50
  690. package/modules/hosts/trae/commands/wf-gate-checklist.md +0 -78
  691. package/modules/hosts/trae/commands/wf-maintain.md +0 -77
  692. package/modules/hosts/trae/commands/wf-new-task.md +0 -103
  693. package/modules/hosts/trae/commands/wf-pipeline-run.md +0 -36
  694. package/modules/hosts/trae/commands/wf-plan.md +0 -41
  695. package/modules/hosts/trae/commands/wf-review.md +0 -50
  696. package/modules/hosts/trae/commands/wf-sync-hosts.md +0 -65
  697. package/modules/hosts/trae/commands/wf-test.md +0 -69
  698. package/modules/hosts/trae/hooks/post-edit-check.cjs +0 -98
  699. package/modules/hosts/trae/hooks/pre-shell-check.cjs +0 -192
  700. package/modules/hosts/trae/hooks/resolve-shell.cjs +0 -30
  701. package/modules/hosts/trae/hooks.json +0 -29
  702. package/modules/hosts/trae/rules/beautify-input-chinese.md +0 -6
  703. package/modules/hosts/trae/rules/git-commit-message.md +0 -10
  704. package/modules/hosts/trae/rules/project-workflow.md +0 -14
  705. package/modules/hosts/zcode/agents/implementer.md +0 -51
  706. package/modules/hosts/zcode/agents/independent-reviewer.md +0 -49
  707. package/modules/hosts/zcode/agents/ui-verifier.md +0 -48
  708. package/src/add-gate.mjs +0 -116
  709. package/src/add-gate.test.mjs +0 -103
  710. package/src/add-host.mjs +0 -68
  711. package/src/cli.mjs +0 -169
  712. package/src/doctor.mjs +0 -629
  713. package/src/executor.mjs +0 -262
  714. package/src/executor.test.mjs +0 -295
  715. package/src/fresh-init.test.mjs +0 -64
  716. package/src/gate-dotnet-ca.test.mjs +0 -124
  717. package/src/gates.test.mjs +0 -143
  718. package/src/init.mjs +0 -382
  719. package/src/init.test.mjs +0 -163
  720. package/src/instance-ref.test.mjs +0 -62
  721. package/src/jscpd-drift.test.mjs +0 -145
  722. package/src/pack.test.mjs +0 -24
  723. package/src/profiles.mjs +0 -183
  724. package/src/render.mjs +0 -132
  725. package/src/rule-budget.test.mjs +0 -103
  726. package/src/run-tests.mjs +0 -56
  727. package/src/stack-profile.test.mjs +0 -95
  728. package/src/sync-hosts.mjs +0 -257
  729. package/src/sync-hosts.test.mjs +0 -291
  730. package/src/sync.mjs +0 -228
  731. package/src/sync.test.mjs +0 -452
  732. package/src/trae-hooks.test.mjs +0 -127
  733. package/src/validate.mjs +0 -77
  734. package/src/validate.test.mjs +0 -95
  735. package/templates/.gitattributes +0 -17
  736. package/templates/AGENTS.md +0 -58
  737. package/templates/_agents/board/index.html +0 -676
  738. package/templates/_agents/commands/build.md +0 -84
  739. package/templates/_agents/commands/deploy.md +0 -66
  740. package/templates/_agents/commands/design.md +0 -63
  741. package/templates/_agents/commands/gate-checklist.md +0 -91
  742. package/templates/_agents/commands/maintain.md +0 -90
  743. package/templates/_agents/commands/new-task.md +0 -110
  744. package/templates/_agents/commands/pipeline-run.md +0 -43
  745. package/templates/_agents/commands/plan.md +0 -48
  746. package/templates/_agents/commands/review.md +0 -62
  747. package/templates/_agents/commands/sync-hosts.md +0 -77
  748. package/templates/_agents/commands/test.md +0 -87
  749. package/templates/_agents/control-surfaces.txt +0 -53
  750. package/templates/_agents/engine-lock.json +0 -342
  751. package/templates/_agents/hooks/check-index-incremental.mjs +0 -48
  752. package/templates/_agents/hooks/check-pairing-incremental.mjs +0 -66
  753. package/templates/_agents/hooks/check-wiki-ledger.mjs +0 -30
  754. package/templates/_agents/hooks/commit-check.cjs +0 -193
  755. package/templates/_agents/hooks/local-pre-commit +0 -6
  756. package/templates/_agents/lane-surfaces.txt +0 -17
  757. package/templates/_agents/level-hints.txt +0 -30
  758. package/templates/_agents/loop/papercut-debt/DESIGN.md +0 -112
  759. package/templates/_agents/mechanism-registry.md +0 -35
  760. package/templates/_agents/metric-claims.txt +0 -81
  761. package/templates/_agents/notes/engine-internals.md +0 -17
  762. package/templates/_agents/notes/runtime-env.md +0 -18
  763. package/templates/_agents/roles/implementer.md +0 -47
  764. package/templates/_agents/roles/independent-reviewer.md +0 -45
  765. package/templates/_agents/roles/ui-verifier.md +0 -44
  766. package/templates/_agents/rule-budgets.txt +0 -20
  767. package/templates/_agents/scripts/agg-delegations.cjs +0 -302
  768. package/templates/_agents/scripts/agg-delegations.test.mjs +0 -282
  769. package/templates/_agents/scripts/agg-gate-stats.mjs +0 -113
  770. package/templates/_agents/scripts/agg-gate-stats.test.mjs +0 -95
  771. package/templates/_agents/scripts/agg-judgments.mjs +0 -156
  772. package/templates/_agents/scripts/agg-judgments.test.mjs +0 -93
  773. package/templates/_agents/scripts/archive-sweep.mjs +0 -235
  774. package/templates/_agents/scripts/archive-sweep.test.mjs +0 -129
  775. package/templates/_agents/scripts/check-attribution.mjs +0 -37
  776. package/templates/_agents/scripts/check-convergence.mjs +0 -124
  777. package/templates/_agents/scripts/check-engine-integrity.mjs +0 -220
  778. package/templates/_agents/scripts/check-engine-integrity.test.mjs +0 -215
  779. package/templates/_agents/scripts/check-funnel.mjs +0 -56
  780. package/templates/_agents/scripts/check-hygiene.mjs +0 -167
  781. package/templates/_agents/scripts/check-hygiene.test.mjs +0 -182
  782. package/templates/_agents/scripts/check-index-incremental.test.mjs +0 -73
  783. package/templates/_agents/scripts/check-lane-surface.mjs +0 -238
  784. package/templates/_agents/scripts/check-lane-surface.test.mjs +0 -302
  785. package/templates/_agents/scripts/check-ledger-invariant.mjs +0 -586
  786. package/templates/_agents/scripts/check-ledger-invariant.test.mjs +0 -639
  787. package/templates/_agents/scripts/check-loop-rev.test.mjs +0 -336
  788. package/templates/_agents/scripts/check-loop-unit.test.mjs +0 -103
  789. package/templates/_agents/scripts/check-loop.mjs +0 -1987
  790. package/templates/_agents/scripts/check-loop.sh +0 -6
  791. package/templates/_agents/scripts/check-loop.test.mjs +0 -3912
  792. package/templates/_agents/scripts/check-metric-claims.mjs +0 -277
  793. package/templates/_agents/scripts/check-prejudgment.mjs +0 -64
  794. package/templates/_agents/scripts/check-registry.mjs +0 -45
  795. package/templates/_agents/scripts/check-scope.mjs +0 -96
  796. package/templates/_agents/scripts/check-scope.test.mjs +0 -99
  797. package/templates/_agents/scripts/check-scripts-syntax.mjs +0 -84
  798. package/templates/_agents/scripts/check-scripts-syntax.test.mjs +0 -72
  799. package/templates/_agents/scripts/check-spec-verif.mjs +0 -47
  800. package/templates/_agents/scripts/check-stage-index.mjs +0 -40
  801. package/templates/_agents/scripts/check-stage-index.test.mjs +0 -77
  802. package/templates/_agents/scripts/closeout-l1.mjs +0 -217
  803. package/templates/_agents/scripts/closeout-l1.test.mjs +0 -105
  804. package/templates/_agents/scripts/commit-check-trigger.test.mjs +0 -205
  805. package/templates/_agents/scripts/compact-ledgers.mjs +0 -97
  806. package/templates/_agents/scripts/compact-ledgers.test.mjs +0 -162
  807. package/templates/_agents/scripts/confirm-doc.mjs +0 -610
  808. package/templates/_agents/scripts/confirm-doc.test.mjs +0 -1119
  809. package/templates/_agents/scripts/doctor.test.mjs +0 -770
  810. package/templates/_agents/scripts/draft-sediment.mjs +0 -178
  811. package/templates/_agents/scripts/draft-sediment.test.mjs +0 -272
  812. package/templates/_agents/scripts/edit-face-check.mjs +0 -109
  813. package/templates/_agents/scripts/edit-face-check.test.mjs +0 -99
  814. package/templates/_agents/scripts/ensure-board.mjs +0 -185
  815. package/templates/_agents/scripts/fill-intent.mjs +0 -91
  816. package/templates/_agents/scripts/fill-intent.test.mjs +0 -113
  817. package/templates/_agents/scripts/fill-plan.mjs +0 -79
  818. package/templates/_agents/scripts/fill-plan.test.mjs +0 -224
  819. package/templates/_agents/scripts/fill-spec.mjs +0 -70
  820. package/templates/_agents/scripts/fill-spec.test.mjs +0 -266
  821. package/templates/_agents/scripts/fixture-scripts.mjs +0 -153
  822. package/templates/_agents/scripts/fixture-scripts.test.mjs +0 -112
  823. package/templates/_agents/scripts/gate-checklist.mjs +0 -209
  824. package/templates/_agents/scripts/gate-checklist.test.mjs +0 -201
  825. package/templates/_agents/scripts/gate-seg.mjs +0 -54
  826. package/templates/_agents/scripts/gate-seg.test.mjs +0 -112
  827. package/templates/_agents/scripts/gen-effective-policy.mjs +0 -107
  828. package/templates/_agents/scripts/gen-effective-policy.test.mjs +0 -100
  829. package/templates/_agents/scripts/gen-verify-evidence.mjs +0 -107
  830. package/templates/_agents/scripts/gen-verify-evidence.test.mjs +0 -84
  831. package/templates/_agents/scripts/gen-wiki-board.mjs +0 -276
  832. package/templates/_agents/scripts/gen-wiki-board.test.mjs +0 -249
  833. package/templates/_agents/scripts/gen-workflow-dashboard.mjs +0 -251
  834. package/templates/_agents/scripts/gen-workflow-dashboard.test.mjs +0 -188
  835. package/templates/_agents/scripts/gen-workflow-index.mjs +0 -201
  836. package/templates/_agents/scripts/gen-workflow-index.test.mjs +0 -152
  837. package/templates/_agents/scripts/gen-workflow-metrics.mjs +0 -466
  838. package/templates/_agents/scripts/gen-workflow-metrics.test.mjs +0 -343
  839. package/templates/_agents/scripts/git-merge-jsonl.mjs +0 -63
  840. package/templates/_agents/scripts/git-merge-jsonl.test.mjs +0 -125
  841. package/templates/_agents/scripts/judgment-ledger.mjs +0 -65
  842. package/templates/_agents/scripts/judgment-ledger.test.mjs +0 -129
  843. package/templates/_agents/scripts/kb-cache-evict.mjs +0 -50
  844. package/templates/_agents/scripts/kb-cache-evict.test.mjs +0 -104
  845. package/templates/_agents/scripts/kb-search.mjs +0 -413
  846. package/templates/_agents/scripts/kb-search.test.mjs +0 -299
  847. package/templates/_agents/scripts/lane-surface-audit.mjs +0 -143
  848. package/templates/_agents/scripts/lane-surface-audit.test.mjs +0 -93
  849. package/templates/_agents/scripts/ledger-doc-chain.test.mjs +0 -166
  850. package/templates/_agents/scripts/ledger-loader.mjs +0 -108
  851. package/templates/_agents/scripts/ledger-loader.test.mjs +0 -131
  852. package/templates/_agents/scripts/ledger-prune.mjs +0 -96
  853. package/templates/_agents/scripts/ledger-prune.test.mjs +0 -120
  854. package/templates/_agents/scripts/ledger-shards.mjs +0 -344
  855. package/templates/_agents/scripts/ledger-shards.test.mjs +0 -356
  856. package/templates/_agents/scripts/ledger-ts-monotonic.test.mjs +0 -135
  857. package/templates/_agents/scripts/level-criteria.mjs +0 -231
  858. package/templates/_agents/scripts/level-criteria.test.mjs +0 -281
  859. package/templates/_agents/scripts/mechanism-retire-watch.mjs +0 -183
  860. package/templates/_agents/scripts/mechanism-retire-watch.test.mjs +0 -114
  861. package/templates/_agents/scripts/papercut-debt-controller.mjs +0 -141
  862. package/templates/_agents/scripts/papercut-debt-controller.test.mjs +0 -127
  863. package/templates/_agents/scripts/papercut-debt-sensor.mjs +0 -170
  864. package/templates/_agents/scripts/papercut-debt-sensor.test.mjs +0 -146
  865. package/templates/_agents/scripts/pipeline-run-docs.mjs +0 -76
  866. package/templates/_agents/scripts/pipeline-run-run.mjs +0 -63
  867. package/templates/_agents/scripts/pipeline-run.mjs +0 -867
  868. package/templates/_agents/scripts/pipeline-run.test.mjs +0 -517
  869. package/templates/_agents/scripts/policy.mjs +0 -281
  870. package/templates/_agents/scripts/pre-push.test.mjs +0 -105
  871. package/templates/_agents/scripts/resolve-merge-conflicts.mjs +0 -110
  872. package/templates/_agents/scripts/resolve-merge-conflicts.test.mjs +0 -87
  873. package/templates/_agents/scripts/rewrite-file.mjs +0 -133
  874. package/templates/_agents/scripts/rewrite-file.test.mjs +0 -148
  875. package/templates/_agents/scripts/rule-budget.mjs +0 -96
  876. package/templates/_agents/scripts/rule-budget.test.mjs +0 -118
  877. package/templates/_agents/scripts/run-tests.mjs +0 -99
  878. package/templates/_agents/scripts/run-tests.test.mjs +0 -105
  879. package/templates/_agents/scripts/solidify-task.mjs +0 -109
  880. package/templates/_agents/scripts/solidify-task.test.mjs +0 -129
  881. package/templates/_agents/scripts/stage-gates.mjs +0 -343
  882. package/templates/_agents/scripts/stage-gates.test.mjs +0 -105
  883. package/templates/_agents/scripts/trust-mode.mjs +0 -67
  884. package/templates/_agents/scripts/trust-mode.test.mjs +0 -110
  885. package/templates/_agents/scripts/verify-wiki-consistency.mjs +0 -253
  886. package/templates/_agents/scripts/verify-wiki-consistency.test.mjs +0 -123
  887. package/templates/_agents/scripts/verify.mjs +0 -345
  888. package/templates/_agents/scripts/verify.test.mjs +0 -373
  889. package/templates/_agents/scripts/wf-journal.mjs +0 -231
  890. package/templates/_agents/scripts/wf-journal.test.mjs +0 -216
  891. package/templates/_agents/scripts/wiki-search.mjs +0 -19
  892. package/templates/_agents/scripts/wiki-search.test.mjs +0 -57
  893. package/templates/_agents/scripts/workflow-board-server.mjs +0 -393
  894. package/templates/_agents/scripts/workflow-board-server.test.mjs +0 -201
  895. package/templates/_agents/scripts/workflow-enums.mjs +0 -70
  896. package/templates/_agents/scripts/workflow-enums.test.mjs +0 -118
  897. package/templates/_agents/scripts/workflows-check.mjs +0 -260
  898. package/templates/_agents/scripts/workflows-check.test.mjs +0 -278
  899. package/templates/_agents/scripts-test-exempt.txt +0 -16
  900. package/templates/_agents/skills/papercut-fix/SKILL.md +0 -60
  901. package/templates/_agents/skills/papercut-fix/references/response-template.md +0 -81
  902. package/templates/_agents/skills/review-method/SKILL.md +0 -58
  903. package/templates/_agents/skills/verify-ui/SKILL.md +0 -61
  904. package/templates/_agents/skills/wiki/SKILL.md +0 -106
  905. package/templates/_agents/workflow-enums.txt +0 -26
  906. package/templates/_agents/workflow-modules.txt +0 -11
  907. package/templates/_agents/workflows/_TEMPLATE.md +0 -75
  908. package/templates/_agents/workflows/pipeline-closing.md +0 -28
  909. package/templates/_agents/workflows//347/244/272/344/276/213-/345/271/266/350/241/214/345/256/236/347/216/260/350/257/204/345/256/241.md +0 -16
  910. package/templates/_githooks/commit-msg +0 -17
  911. package/templates/_githooks/post-commit +0 -10
  912. package/templates/_githooks/pre-commit +0 -126
  913. package/templates/_githooks/pre-merge-commit +0 -29
  914. package/templates/_githooks/pre-push +0 -136
  915. package/templates/_github/workflows/kit-ci.yml +0 -49
  916. package/templates/wiki/INDEX.md +0 -73
  917. package/templates/wiki/drafts-archive/README.md +0 -3
  918. package/templates/wiki//344/272/247/345/223/201/351/234/200/346/261/202/README.md +0 -3
  919. package/templates/wiki//345/274/200/345/217/221/346/226/271/346/241/210/README.md +0 -3
  920. package/templates/wiki//346/225/260/346/215/256/347/273/264/346/212/244/README.md +0 -3
  921. package/templates/wiki//346/265/213/350/257/225/346/212/245/345/221/212/README.md +0 -3
  922. package/templates/wiki//347/224/250/346/210/267/345/212/237/350/203/275/README.md +0 -3
  923. package/templates/wiki//347/237/245/350/257/206/346/262/211/346/267/200/346/200/273/350/247/210.html +0 -77
  924. package/templates/wiki//351/241/271/347/233/256/350/247/204/350/214/203/README.md +0 -3
  925. package/templates/wiki//351/241/271/347/233/256/350/256/241/345/210/222/README.md +0 -3
  926. package/templates/workflow/README.md +0 -91
  927. package/templates/workflow/delegations.md +0 -29
  928. package/templates/workflow/incidents/_TEMPLATE.md +0 -51
  929. package/templates/workflow/intents/_TEMPLATE.md +0 -51
  930. package/templates/workflow/papercuts.md +0 -9
  931. package/templates/workflow/plans/_TEMPLATE.md +0 -47
  932. package/templates/workflow/regression-checklist.md +0 -23
  933. package/templates/workflow/specs/_TEMPLATE.md +0 -80
  934. /package/templates/{_agents → engine/.agents}/board/marked.min.js +0 -0
  935. /package/templates/{_agents/workflows → engine/.agents/pipelines}/steps//347/244/272/344/276/213-/351/203/250/347/275/262/351/252/214/350/257/201.md" +0 -0
  936. /package/templates/{_agents → engine/.agents}/scripts/git-core.mjs +0 -0
@@ -0,0 +1,56 @@
1
+ ---
2
+ description: pipeline-run automated driver entry — single command drives the six-stage closed loop (work-order protocol + machine gates + verbatim recording); mutually exclusive with manual stage routing, do not mix
3
+ stage: entry
4
+ triggers:
5
+ - "pipeline-run"
6
+ - "run the executor"
7
+ - "run fully automated"
8
+ approval_required: true
9
+ fallback: the main agent personally fills the AI slot (work orders are completed by the main agent, with no dependency on subagents)
10
+ next: loop and advance to done according to the run's stop points
11
+ ---
12
+
13
+ # pipeline-run · Fully Automated Closed-Loop Executor Entry
14
+
15
+ The stage machine is aligned with the commands manual. Mutually exclusive with manual stage routing; do not mix.
16
+
17
+ > **Reserved for later use**: currently zero runs (`cache/pipeline-runs/` empty) but not retired; before enabling, run a small task once to validate the state machine.
18
+
19
+ > **Division of labor**: deterministic parts are driven by the `pipeline-run.mjs` state machine (fill-* $\rightarrow$ confirm-doc $\rightarrow$ verify.mjs $\rightarrow$ git, all exit codes recorded); the AI slot executes per the work-order protocol; human gates stop on arrival and their words are recorded verbatim; the host must not change state on its own.
20
+
21
+ ## 1. Protocol
22
+
23
+ **Input**: raw requirement text
24
+ **Process**:
25
+ 1. **Start**: `node .agents/scripts/pipeline-run.mjs start "<raw requirement text>"` (may pre-judge and add `--hint "kind=… level=… module=…"`)
26
+ 2. **Loop reading stop points**: the last stdout line is the machine marker `PIPELINE-STOP <type> …` $\rightarrow$ branch by type:
27
+
28
+ | Stop type | Action | Re-run command |
29
+ |---|---|---|
30
+ | `work-order <runId> <work-order id>` | Read the full work order $\rightarrow$ **work by the order** (see the table below) | `next` (implement/fix requires `--files "a,b"`) |
31
+ | `await-confirm <runId> <doc>` | **Human gate**: relay key points and request confirmation $\rightarrow$ after the user gives the go-ahead | `next --delegated "<user's verbatim words>"` (verbatim words) |
32
+ | `gate-fail <runId> <stage>` | Read the problems reason $\rightarrow$ fix, then rerun the same path | `next` (no gate bypass / no `--no-verify`) |
33
+ | `done <runId>` | Report a summary (stage bar / gate count / commit chain) | Flow ends |
34
+ | `aborted <runId>` | Report the abort state and archive location | Flow ends |
35
+
36
+ ### Work-Order Type Execution Matrix
37
+
38
+ | Work-order type | Execution requirement | Load on entry (coupled, see new-task §1c) |
39
+ |---|---|---|
40
+ | **triage** | Grade and backfill `next --triage "kind=… level=… module=… topic=<English kebab>"` (choose the higher level when unsure) | None; kb search same as new-task §L1 Fast Track step 2 |
41
+ | **draft** | Draft the specified document | intent→`grilling`; spec→`stages.md` Design §2 "Required Inputs" + `grilling` (branch comparison `arena`); plan→none |
42
+ | **implement / fix** | Implement per the authorized files $\rightarrow$ **stop on deviation** (public interface / unplanned files / new dependencies $\rightarrow$ stop and report, do not self-approve) | No mandatory skill; for fix-type with an unclear root cause, run `why` first |
43
+ | **review / closeout** | Produce per the order and write to the specified location (after review-only reporting, finish with `--done`) | review→`review-method` (high-risk diff +`interrogate`); closeout→`shipyard-workflow-closeout` (§0 closeout self-check) |
44
+
45
+ 3. **Abort**: the user explicitly declines $\rightarrow$ `abort --run <id> --to superseded|cancelled --delegated "<verbatim words>"` (approved documents go through confirm-doc --to one by one)
46
+ 4. **Observe** (optional): `status [--run <id>] [--json]` full event stream / `watch` terminal polling view
47
+
48
+ ## 🚫 Hard Discipline (violation breaks the protocol)
49
+
50
+ | Operation | Consequence / machine behavior | Exception |
51
+ |---|---|---|
52
+ | Directly modify workflow status | $\rightarrow$ bypasses the only migration entry (confirm-doc) | The host never edits frontmatter directly |
53
+ | Fabricate/reuse verbatim words | $\rightarrow$ exposed by cross-check against the ledger `confirmations.jsonl` | `--delegated` must be the current conversation's verbatim words |
54
+ | Advance while broken | Fix loop exceeds the limit (3 times), stop and hand over to a human | Do not close out while verify is not green |
55
+ | Write run files | $\rightarrow$ conflicts with machine facts | The host is read-only |
56
+ | Auto-approve human gates | `await-confirm` must relay key points and only `next --delegated` after receiving the user's verbatim go-ahead | Auto-triggering only means stage chaining and skill loading (new-task §1c coupling protocol); human gates are never crossed automatically |
@@ -0,0 +1,30 @@
1
+ ---
2
+ description: PR panel review — multiple subagents find bugs + independent voting + ledger
3
+ stage: review (cross-cutting)
4
+ triggers:
5
+ - "review this PR"
6
+ - "run the PR panel review"
7
+ - "pr-review"
8
+ ---
9
+
10
+ # PR Review · Panel Review
11
+
12
+ ## Trigger Rules
13
+
14
+ If any one is met, run the panel review; if none are met, use the graded review in `.agents/commands/review.md`; do not run the panel:
15
+ - The diff touches a trust boundary / data surface / public contract
16
+ - Before merging to main
17
+ - Hard regressions requiring multi-lens cross-validation
18
+
19
+ ## Flow
20
+
21
+ Script: `.agents/scripts/pr-review.mjs` (subcommand details via `--help`). Execute in order; do not skip steps:
22
+
23
+ 1. `plan --base <ref> --head <ref>`; for high-risk quick checks add `--fast` (single-lens tier). Artifacts land in `.agents/tmp/pr-review/<runId>/` (run.json / briefs / tasks.json)
24
+ 2. Dispatch finder / verifier subagents in parallel per `tasks.json`; role contracts in `.agents/roles/pr-finder.md`, `pr-verifier.md`, `pr-adjudicator.md`
25
+ 3. Execute in order: `collect` → `verify` → `adjudicate` (escalated items) → `dispose` → `summary`
26
+
27
+ ## Ledger
28
+
29
+ - Write the ledger artifact + a monthly line to `workflow/reviews.d/` (append-only).
30
+ - For PRs that have run a review, append one line to the PR Evidence: `面板评审:<runId>(Important n / Nit n / Pre-existing n)`.
@@ -0,0 +1,93 @@
1
+ ---
2
+ description: "Code review standard (graded by risk: machine backstop + AI self-check produces the list, the user decides classification and merge)"
3
+ stage: review (cross-cutting: used before merge, not one of the 6 stages)
4
+ triggers:
5
+ - "review it"
6
+ - "go through the review standard"
7
+ - "run through the review standard once"
8
+ delegation:
9
+ - role: independent-reviewer
10
+ instructions: .agents/roles/independent-reviewer.md
11
+ when: machine gates are complete and the review target and diff baseline are fixed (L2 / L3 mandatory independent review: independent subagent or new session; cannot fall back to main-agent self-check)
12
+ required: true
13
+ approval_required: true
14
+ next: while P0/P1 are uncleared, L1 → .agents/commands/new-task.md §L1 Fast Track to change code; L2/L3 → .agents/commands/stages.md Build chapter. After clearing, merge with user confirmation
15
+ ---
16
+
17
+ # Review · Graded Review
18
+
19
+ > **Three-way division**: machine gates block automatically (no human guard needed) $\rightarrow$ AI review produces a graded list $\rightarrow$ the user classifies/merges; they may not substitute for each other (AI may not make the merge decision, the user may not be judged on their behalf).
20
+ > **Independence**: L2/L3 must use an independent subagent or a new session; the original author's self-check may not masquerade as one.
21
+
22
+ ## P0 Must-Block (Block)
23
+
24
+ | Check item | Criterion (Invariant) | Machine backstop | AI self-check |
25
+ |---|---|---|---|
26
+ | **Architecture red line** | Layered dependency direction constraints (domain/application layers must not reference infrastructure implementations) | `.agents/hooks/` architecture gate | References outside the exemption list |
27
+ | **Audit fields** | Public audit fields are written automatically by shared infrastructure; business code must not write them by hand | Audit-field gate (compares newly added values) | None |
28
+ | **Deletion interception** | Before deleting, check child/business references; when referenced, error per the shared policy | Deletion gate (call sites vs allowlist) | Verify delete-time reference checks at each call site |
29
+ | **Input validation** | Required-field null checks, range validation, illegal input rejected per the shared policy | Project validation tests | Self-check coverage blind spots |
30
+ | **L2/L3 without spec** | Reject; first return to `workflow/specs/` to file and confirm a spec | `confirm-doc` →done gate (L2/L3 intent must have a same-named confirmed spec) | None |
31
+
32
+ ## P1 Should-Block (Self-check)
33
+
34
+ | Check item | Criterion (Invariant) | Note |
35
+ |---|---|---|
36
+ | **DB naming and migration** | Follow table/field/foreign-key naming conventions and the schema change process | Do not introduce an unused migration mechanism arbitrarily |
37
+ | **Frontend form** | New/edit and large-volume selection follow component conventions | Overlay vs page navigation, selector form, table style |
38
+ | **Forms** | Submit after normalizing empty values for optional fields | Do not change backend DTOs to evade validation |
39
+ | **State management** | Store calls the API; components call only the store | None |
40
+ | **API input boundary** | Write operations must not bind domain entities via `[FromBody]` (always DTOs) | Input DTOs must not contain primary keys or audit fields |
41
+ | **Import trust boundary** | Import endpoints fully re-validate server-side; never trust the client | Parse failures go into the error-row summary; never silently drop |
42
+ | **Create/Update same policy** | Create validation must apply the same policy to Update | Referenced identifier fields must not be changed |
43
+ | **Pagination and state semantics** | Pagination parameter range validation + service-layer clamping | Separate illegal state from non-existent (400/404) |
44
+ | **Spec commitment landing** | spec §test cases must actually land in tests or verification scripts | Persistent assertions must not be written as row-count constants that grow over time |
45
+ | **Thin-adapter drift** | Host `agents/`, `commands/` remain pointer shells; the body lives only in `.agents/roles/` and `.agents/commands/` | Manually verify shells reference the authoritative paths and the body is not too thick |
46
+ | **Impact-surface proof** | For a small diff, "safe because X" must be proven by running code, not by assertion | Follow `.agents/skills/blast-radius/SKILL.md`; proof scripts ship with the PR or land in `tmp/` |
47
+
48
+ ## P2 Advisory (Advisory)
49
+
50
+ - Comment completeness (add comments at complex logic)
51
+ - Conventional Commits in Chinese (feat / fix / docs / style / refactor / perf / chore)
52
+ - Whether the retrospective trio for historical incidents of the same kind is complete
53
+ - **Purely stylistic issues are discarded outright and not listed as P2**; only "naming/comments that cause wrong calls or contract misreading" are reported as behavioral issues.
54
+
55
+ ## Process
56
+
57
+ **Input**: diff to review + fixed baseline (SHA/branch)
58
+ **Process**:
59
+ 1. **Machine gates**: pre-commit / pre-push / `stages.md` Test static gates all pass (no human guard needed)
60
+ 2. **AI review**: delegate `independent-reviewer` $\rightarrow$ focus on items not covered by P0 + all P1 (P2 subject to capacity); independence, persistence, and cross-model policy follow `.agents/roles/independent-reviewer.md` "Review Policy" (this section's scenario = merge review; not restated here)
61
+ - **Method**: `.agents/skills/review-method/SKILL.md`
62
+ - **False-positive prevention**: every finding goes through `review-verification-protocol`
63
+ - **Model selection**: take `model-roles.json` (local override `.local.json` takes precedence; both empty = host default); cross-model ladder and downgrade follow `.agents/roles/independent-reviewer.md` Constraints. Before switching models, run 3 already-classified bug regressions per `delegations.md`
64
+ - **High-risk diff**: additionally apply `.agents/skills/interrogate/SKILL.md` (does not replace the single independent review above)
65
+ 3. **User decision**: issue classification (reject as false positive / P0 must-fix / P1,P2 discretionary) + merge timing
66
+ **Output**: graded issue list + fix suggestions $\rightarrow$ user confirms merge
67
+ **Next**: while P0/P1 are uncleared, L1 returns to `.agents/commands/new-task.md` §L1 Fast Track to change code; L2/L3 return to `stages.md` Build chapter. After clearing, merge with user confirmation.
68
+
69
+ ## PR Panel Review (pr-review, created 2026-11-06; automated gate retired 2026-11-09)
70
+
71
+ > The panel is retired as a **manual tool** (owner instruction): pre-push / CI / pr-create no longer enforce a review ledger; the trigger policy follows `.agents/commands/pr-review.md`. The tiers Important/Nit/Pre-existing and the discard-purely-stylistic policy are unchanged.
72
+
73
+ ## PR Body Trio (Merge Narrative Convention)
74
+
75
+ When opening a PR, the body has three fixed sections, each answering one merge-decision element and none may be omitted (Azure DevOps has no skill hook, so this section is the single source for the convention):
76
+
77
+ | Section | Answers | Format |
78
+ |---|---|---|
79
+ | **Summary** | What change is this | 1-4 items: why change, what changed, pointing at key modules/files — must come from the actual diff; write actual behavior, not intent rhetoric |
80
+ | **Evidence** | Where is the evidence | Actually run tests/builds/manual verification (Before/After contrast: red-before/green-after test pairs, same-viewpoint before/after screenshots); attach green credentials or measured-evidence paths that can be opened and re-checked; if not run, explicitly write "not run" and why; fabrication is prohibited. When a panel review was run, append one line: `面板评审:<runId>(Important n / Nit n / Pre-existing n;全部 fixed/waived/deferred/recorded)` |
81
+ | **Merge Danger** | How big is the risk | **Door**: impact surface (API / DB / config / permission / compatibility), write "none" if no risk, do not omit; **Blast Radius**: one word (local / module / global); **Rollback**: rollback method and risk, required |
82
+
83
+ If size exceeds budget (pre-push advisory; override requires `PR_SIZE_OK=1` and a reason in Tradeoffs), the diff is large, overlap is non-empty, or the change is irreversible → add a **Tradeoffs** section to the body: real diff size + why it is still done this way.
84
+
85
+ If you cannot write "Door=none + local", this triggers one grading re-check.
86
+
87
+ > Distribution skills (e.g. `tfs-pr`) come with an identical template; that is their **default for hosts without this convention**; this repository follows this section.
88
+
89
+ ## 🚫 Prohibitions
90
+ | Operation | Consequence / machine behavior | Exception |
91
+ |---|---|---|
92
+ | L2/L3 main-agent self-check | $\rightarrow$ independence fails | Must delegate `independent-reviewer` or a new session |
93
+ | Merge with P0 uncleared | $\rightarrow$ blocked | Must be zeroed and confirmed by the user |
@@ -0,0 +1,256 @@
1
+ ---
2
+ description: "L2/L3 staged flow (four-in-one): Plan files intent → Design drafts spec → Build drafts plan + implements code → Test static gates + UI verification + review + closeout; L1 uses the new-task.md fast track"
3
+ stage:
4
+ - Plan
5
+ - Design
6
+ - Build
7
+ - Test
8
+ triggers:
9
+ - "start an intent"
10
+ - "file an intent"
11
+ - "start a spec"
12
+ - "continue with the spec"
13
+ - "intent reviewed"
14
+ - "walk through the spec"
15
+ - "start a plan"
16
+ - "spec is fine"
17
+ - "start writing"
18
+ - "get to work"
19
+ - "plan is good"
20
+ - "run verify"
21
+ - "changes done"
22
+ - "run verify and see"
23
+ - "verify it"
24
+ delegation:
25
+ - role: independent-reviewer
26
+ instructions: .agents/roles/independent-reviewer.md
27
+ when: L2 / L3 spec draft complete and before user confirmation (Design §3); L2 or L3 changes complete and diff fixed (Test §4)
28
+ required: true
29
+ attach:
30
+ - acceptance criteria of the same-named spec
31
+ - fixed git range: git rev-parse <baseline> resolves, and git diff <baseline>...<HEAD> is non-empty
32
+ - level is L2 or L3
33
+ - new session, not the same context as the implementation
34
+ - conclusion's first line is `reviewed by <model name>`
35
+ - persistence line written by the main agent into the document's "Confirmation and Review" per .agents/roles/independent-reviewer.md
36
+ - do not modify any repository file
37
+ - role: ui-verifier
38
+ instructions: .agents/roles/ui-verifier.md
39
+ when: UI changes involved and static gates have passed
40
+ required: true
41
+ fallback: main
42
+ - role: implementer
43
+ instructions: .agents/roles/implementer.md
44
+ when: plan and change-file list both confirmed, and the work-package boundary meets the role contract
45
+ required: false
46
+ fallback: main
47
+ approval_required: true
48
+ next: chapter order Plan → Design → Build → Test; after Test, L2/L3 merge (PR review merge) → .agents/commands/deploy.md; L1 → .agents/commands/new-task.md §L1 Fast Track
49
+ ---
50
+
51
+ <!-- 2026-11-08 tier 2-F four-in-one (formerly plan/design/build/test.md), see git for history -->
52
+
53
+ L1's filing, implementation, verification, and closeout are all in `.agents/commands/new-task.md` §L1 Fast Track; this file's four chapters Plan → Design → Build → Test serve only the L2/L3 staged flow. L1 opens it only when Plan §1 finds an existing same-named in-flight document, to align progress, then returns to the fast track.
54
+
55
+ # Plan · L2/L3 File Intent
56
+
57
+ The level is already set by `new-task.md`; this chapter branches by level and must not re-grade.
58
+
59
+ ## 1. Admission and Shortcuts
60
+ **Input**: user's raw requirement text + already-assigned level
61
+ **Process**:
62
+ 1. **Shortcut check (also session re-entry, session-context)**: L1 checks whether `workflow/plans/` already has a same-named plan; L2/L3 checks whether `workflow/intents/` already has an approved intent. Existing and **terminal** → jump per `next`; existing and **in flight** (draft/approved, checked ≠ complete) → this is re-entry, not a new creation: read the plan's check states and `git status` to align subsequent work, do not file a new document. L1 returns to the fast track and does not enter the Build chapter.
63
+ 2. **Similar-case search**: `node .agents/scripts/kb-search.mjs "<keyword>" --scope workflow --type intents,plans,specs` $\rightarrow$ on a same-kind hit, read the conclusion and acceptance criteria first
64
+ **Output**: confirmed no same-kind entry / existing approved entry
65
+
66
+ ## 3. L2/L3: Draft Intent
67
+ **Process**:
68
+ 1. **Generate draft**: `node .agents/scripts/fill-intent.mjs --module <module> --level <L2|L3> --topic <topic> --output workflow/intents/<date>-<topic>.md --notes "<note>"`
69
+ 2. **Fill in**: background and problem / historical lessons and recurrence prevention / goals / non-goals / constraints / impact surface / touched red lines / acceptance criteria
70
+ 3. **Red-line check**: against root `AGENTS.md` and directory-level `AGENTS.md`. If not touched, do not check.
71
+ **Output**: `workflow/intents/{name}.md` (Status: Draft)
72
+ **Next**: Design chapter
73
+
74
+ ## 4. Confirmation and State Transition
75
+ **Process**:
76
+ 1. **HALT**: output the full draft $\rightarrow$ wait for user confirmation
77
+ 2. **Status transition**: $\text{draft} \rightarrow \text{approved}$ (policy per `new-task.md` Fast Track step 4)
78
+ 3. **Trace commit**: L2/L3 immediately commit separately as `docs(workflow)`; **L1 single commit** — after verification is green, jump to done; plan(done)+code+confirmation shard+credentials land in the tree in the same commit, with no separate closeout commit (policy single source `new-task.md` Fast Track steps 4/6).
79
+ **Next**: L1 $\rightarrow$ `.agents/commands/new-task.md` §L1 Fast Track / L2,L3 $\rightarrow$ Design chapter
80
+
81
+ ## 🚫 Prohibitions
82
+ | Operation | Machine behavior | Exception |
83
+ |---|---|---|
84
+ | Force-check red lines | check-loop judges "red-line under-grading" | Must be actually touched to check |
85
+ | Force-fill criteria | Acceptance criteria untestable | If unclear, must HALT and clarify |
86
+ | Directly edit status | Status transition disabled | Must go through `confirm-doc` |
87
+
88
+ ## 🛠️ Auxiliary Tools
89
+ - **Requirement grilling**: `grilling` (backfill the 6 sections after answering)
90
+
91
+ # Design · Draft Spec
92
+
93
+ ## 1. Admission and Level Judgment
94
+ **Input**: `workflow/intents/{name}.md` (Approved) or a confirmed incident draft. Level is L2 or L3.
95
+ **Process**:
96
+ 1. **L1 forbidden in this stage**: on encountering L1 $\rightarrow$ **HALT** $\rightarrow$ return to `.agents/commands/new-task.md` §L1 Fast Track. This stage drafts only L2/L3 specs
97
+ 2. **Pre-check**: if the entry document has not passed the confirmation gate $\rightarrow$ **HALT** $\rightarrow$ return to the Plan chapter / `maintain.md` (exit 2)
98
+ 3. **Level determination** (against `new-task.md` two questions):
99
+ - **L2** (rule/contract): must draft a spec $\rightarrow$ **mandatory independent review** (independent subagent or new session)
100
+ - **L3** (structure/Schema): must draft a spec $\rightarrow$ **mandatory independent review** (same as above, cross-model preferred)
101
+ **Output**: determined design level (L2/L3)
102
+
103
+ ## 2. Draft Spec
104
+ **Input**: selected level + entry document
105
+ **Required inputs (complete before drafting; missing any one means HALT and return to this section to read; comparison results go into "Constraint Compliance Mapping" and "Assumptions and Inferences")**:
106
+ 1. Search `wiki/INDEX.md` for task documents related to this topic (product requirements / development plans / project rules / data dictionary / user features) — on a hit, read fully and write the basis into the relevant spec sections as path references (the source of the policy for feature behavior / data flow); if no hit, state the search terms and conclusion
107
+ 2. The full text of `backend/AGENTS.md` (§6 hard constraints / §7 machine-gate checklist) — **regardless of whether this change touches the backend**
108
+ 3. The full text of `frontend/AGENTS.md` (gates G-2~G-3 / contract rules / list-page state rules)
109
+ **Process**:
110
+ 0. **Check before creating**: if a same-feature spec already exists (including archived) / `verify-ui/features` $\rightarrow$ revise the original, do not create new (single source `workflow/README.md` "same-feature continuation")
111
+ 1. **Generate draft**: run `node .agents/scripts/fill-spec.mjs --level <L2|L3> --topic <topic> --output workflow/specs/<date>-<topic>.md`
112
+ 2. **Fill in content**: copy `_TEMPLATE.md` $\rightarrow$ fill in [feature behavior / data flow / system changes / constraint compliance mapping / risk assessment]
113
+ 3. **Constraint check**: against red lines in root `AGENTS.md` and directory-level `AGENTS.md`, explain how each is satisfied
114
+ 4. **Interaction confirmation**: explicitly mark the entry form (form/selector/dialog); do not presume
115
+ 5. **Entry verification**: [frontend-specific] search button events $\rightarrow$ trace router/Drawer $\rightarrow$ locate the actual rendering file $\rightarrow$ mark **entry evidence (file+line)** in the "System Change List"
116
+ 6. **Solution tradeoffs**: with multiple solutions $\rightarrow$ list [solution comparison table (tradeoff + recommendation)] $\rightarrow$ **HALT** $\rightarrow$ user selects. When branches are real and reasoning cannot decide (contract shape / data flow / performance tradeoff), first open **2 parallel solution routes** (a subagent per solution, read-only on the repository, output into the conversation or `tmp/`, no repository file changes), compare per "solution | key tradeoff | risk | evidence"; cap at 2 routes, do not run when reasoning can decide, and do not consume implementation-surface delegation concurrency
117
+ 7. **Ambiguity scan**: write an "ambiguity checklist", one line per 6 dimensions — state and boundaries / data policy / failure paths / contract symmetry / existing data / acceptance testability. Column order `dimension | conclusion | basis | status`.
118
+ - Experimentable $\rightarrow$ experiment first, write the experiment result as the basis, **do not ask the user**.
119
+ - Cannot be decided by experiment $\rightarrow$ status `待澄清` (to be clarified), ask in the current round.
120
+ - Upper bound: ≤2 lines per dimension, ≤12 total, ≤5 questions per round.
121
+ - Inferential conclusions $\rightarrow$ record separately in "Assumptions and Inferences".
122
+ - Missing section / missing dimension / 待澄清 ≠ 0 / empty basis / out of bounds → confirmation gate rejects.
123
+ 8. **Premise interrogation**: write a "premise interrogation" table — list the interpretive premises on which the spec's argument rests (e.g. "display need vs storage rewrite"), counter-question the opposing interpretation for each, and write the chosen basis; for small items with no interpretation risk, write one line "no key premises" + reason. Missing section / empty table / placeholder / missing counter-question or missing basis → confirmation gate rejects (anchored at premiseSince; the plug for the 10-23 identity-overwrite three-layer same-source failure)
124
+ **Output**: `workflow/specs/{name}.md` (Status: Draft)
125
+
126
+ ## 3. Independent Review (L2/L3 Mandatory)
127
+ L2/L3 mandatory: delegate `independent-reviewer`; trigger, form, required inputs, and persistence policy follow `.agents/roles/independent-reviewer.md` "Review Policy" (not restated here)
128
+ **Output**: review failed $\rightarrow$ return to §2 to revise the spec
129
+
130
+ ## 4. Confirmation and State Transition
131
+ **Process**:
132
+ 1. **HALT**: output the full spec $\rightarrow$ wait for user confirmation. Before confirmation, self-check the ambiguity checklist and premise interrogation: 待澄清 zeroed, 6 dimensions complete, every line has a basis, premises have counter-questions and chosen bases (otherwise the transition is rejected)
133
+ 2. **Status transition**: $\text{draft} \rightarrow \text{approved}$
134
+ 3. **State entry point**: run `node .agents/scripts/confirm-doc.mjs <path>` (policy per `new-task.md` Fast Track step 4, not restated here)
135
+ 4. **Trace commit**: immediately commit separately as `docs(workflow)`
136
+ **Next**: Build chapter
137
+
138
+ ## 🚫 Prohibitions
139
+ | Operation | Consequence / machine behavior | Exception |
140
+ |---|---|---|
141
+ | Routing guesses the entry | → whole-round rework | Must provide measured evidence with file+line |
142
+ | Presuming interaction | → UI does not match requirements | Form must be confirmed by the user |
143
+ | L3 self-check masquerade | `.agents/skills/shipyard-workflow-closeout/SKILL.md` §0.3 HALT. check-loop only WARNs on missing review context | Must be executed by `independent-reviewer` |
144
+ | Passing the confirmation gate with "待澄清" unresolved | `confirm-doc` rejects (ambiguity unresolved, exit 2, no persistence, no accounting); missing dimension / empty basis also rejected | Ask the user for a decision before transitioning |
145
+ | Premises entering the fact source without interrogation | `confirm-doc` rejects (premise interrogation missing section / empty / placeholder / missing counter-question or basis, exit 2) | If there is no interpretation risk, write a "no key premises" line with a reason |
146
+ | Asking the user about experimentable items | Extra round of confirmation tax, and the answer is obtainable by running | Query DB / run eval / prototype first; write the experiment conclusion as the basis |
147
+ | "Decided" without writing a basis | `confirm-doc` rejects (equivalent to not having thought) | The basis must be identifiable (section number / code path / DB query result) |
148
+ | Skipping required inputs / constraint mapping missing backend/frontend AGENTS entries | → independent review rejects and reworks (a missing mapping source counts as not doing the constraint check) | The two directory specs are the repository-wide contract baseline, independent of this change's surface; wiki no-hit may exempt item 1 (must state the search terms) |
149
+
150
+ # Build · Draft Plan + Write Code
151
+
152
+ L1 does not draft a plan in this chapter; return to `.agents/commands/new-task.md` §L1 Fast Track step 4; this chapter is only for L2/L3 implementation, or delegating implementer (§3), handling plan deviations.
153
+
154
+ ## 1. Draft Plan
155
+ **Input**: `workflow/intents/{name}.md` (Approved) + `workflow/specs/{name}.md` (Approved)
156
+ **Process**:
157
+ 1. **Create document**: copy `_TEMPLATE.md` $\rightarrow$ `workflow/plans/{name}.md`, fill in the change approach / task breakdown (each step with "files" and criteria) / execution order / verification plan
158
+ 2. **HALT**: output the just-drafted full plan $\rightarrow$ wait for the user's item-by-item confirmation.
159
+ **Output**: `workflow/plans/{name}.md` (Status: Approved)
160
+ **Gates**:
161
+ - **Confirmation gate (confirm-doc)**: $\text{draft} \rightarrow \text{approved}$ (policy per `new-task.md` Fast Track step 4)
162
+ - **Basis**: `workflow/papercuts.md`
163
+
164
+ ## 2. Enter Plan Mode and List Changes
165
+ **Input**: `workflow/plans/{name}.md` (Approved)
166
+ **Process**:
167
+ 1. **Pitfall search**: `node .agents/scripts/kb-search.mjs --scope workflow --module <module> "<keyword>"` $\rightarrow$ extract incident root causes into self-check items
168
+ 2. **List**: specify the [read-then-modify/new] file list + [action $\rightarrow$ object] execution steps
169
+ 3. **Sync audit**: when changes hit `.agents/commands/` or `.agents/roles/`, change only the authoritative source body; host shells stay pointers (see §🛠️ Auxiliary and Sync)
170
+ 4. **Red-line check**: against root `AGENTS.md` and directory-level `AGENTS.md`, mark touched red lines
171
+ 5. **Generate overview + start dashboard**: first `node .agents/scripts/gen-dev-tour.mjs workflow/plans/{name}.md --strict` to pass the per-step file gate (implementation steps missing `- 文件:` are rejected; pure verification steps are marked "验证步骤"), then `node .agents/scripts/auto-tour.mjs workflow/plans/{name}.md` to start the dashboard (idempotent, failures only warn). For snapshots, run gen-dev-tour separately; verify "actual changes outside the document", backfill/rollback out-of-bounds first; policy see dev-tour/SKILL.md. Layer fallback (defaults to 0) = heading contract violation, regenerate after normalizing
172
+ 6. **HALT**: output the change list $\rightarrow$ wait for user confirmation
173
+ **Output**: confirmed change list $\rightarrow$ **backfill into the plan's "change surface/task breakdown"** (session-context: conversation traces are for the current session only; on re-entry the plan is authoritative — change surface + task check state + git status = the three session re-entry anchors). **After persisting, rerun `node .agents/scripts/auto-tour.mjs workflow/plans/{name}.md`** — the real purpose is to ensure the dashboard process is running (idempotent, reuse if already running); if running, the live page redraws automatically (SSE push + 5s fallback polling), and the persisted change surface enters the graph
174
+
175
+ ## 3. Implementation and Self-Verification
176
+ **Input**: `workflow/plans/{name}.md` (Approved, including the persisted change surface and task list)
177
+ **Process**:
178
+ 1. **Session re-entry** (mandatory for compaction / new session / handover continuation): read the plan task list check states + compare with `git status` / `git diff` on the ground $\rightarrow$ rebuild progress then continue. If check states do not match the working tree (checked but uncommitted / committed but unchecked) $\rightarrow$ align first, then write new code; when the change list exists only in the conversation, use the plan change surface + working tree as authoritative and backfill the plan
179
+ 2. **Drive implementation**: execute tasks by dependency — **frontier = tasks whose "dependency" line has no unresolved blocker**, dispatched in parallel (multiple worktrees with their own branches / delegating "new + merge scope"), a pure sequential chain goes top-down; **immediately backfill the task list checks and traces after each item completes** (commit SHA / test name / measured output), and unlock downstream tasks that depend on it (after each item, refresh `/tour?file=workflow/plans/{name}.md`, confirming there are no "actual changes outside the document"). When the `.agents/roles/implementer.md` boundary is met, `implementer` may be delegated (model from `model-roles.json`, local override preferred, both empty = host default)
180
+ 3. **Architecture constraints**: strictly forbid inventing bypass data access; must follow root/directory-level `AGENTS.md` red lines
181
+ 4. **L3 special case**: schema changes must follow the project's agreed maintenance method; do not introduce a migration mechanism arbitrarily
182
+ 5. **Change control**: if a plan deviation is needed (change public interface / touch unlisted files / add new dependency) $\rightarrow$ **HALT** $\rightarrow$ continue after confirmation
183
+ 6. **Self-verification loop**: run [project build / type check / automated tests] (details in Test chapter §1); scope reconciliation `node .agents/scripts/check-scope.mjs workflow/plans/{name}.md` — out-of-bounds items must be closed out (backfill the plan or roll back); **L2/L3 must pass with `--strict` before closeout**, L1 stays advisory (at push time, check-scope-range hard-blocks by old..new range)
184
+ **Output**: implemented code changes + self-verification pass evidence
185
+
186
+ ## 4. Wind Down After Confirmation
187
+ **Process**:
188
+ 1. **Status transition**: the plan stays `approved`, not set to `done` here. Closeout happens in Test chapter §5, set to `done` via confirm-doc.
189
+ 2. **Commit trace**: intent/spec are committed separately as `docs(workflow)` after design confirmation. The plan is likewise committed separately after confirmation, not in the same commit as code. Conventional Commits in Chinese.
190
+ 3. **Scripted rewrite**: to modify workflow documents or ledgers, use `node .agents/scripts/rewrite-file.mjs <file> --find <literal string> --replace <literal string>`. Prohibit `node -e` with `writeFileSync` (on CRLF checkouts it silently does nothing yet prints success).
191
+ **Next**: Test chapter
192
+
193
+ ## 🚫 Prohibitions
194
+ | Operation | Machine behavior | Exception |
195
+ |---|---|---|
196
+ | Directly edit frontmatter | Status transition disabled | Must go through `confirm-doc` |
197
+ | draft $\rightarrow$ done | check-loop 15 blocks | Must pass through approved |
198
+ | Summary confirmation | confirm-doc rejects | Must review the full text |
199
+
200
+ ## 🛠️ Auxiliary and Sync
201
+ - **Hosts are pointer shells**: when changing `.agents/commands/` or `.agents/roles/`, do not copy the body into opencode / trae / codebuddy. Shells keep only host frontmatter and state the authoritative path. The machine check only covers the five check-loop hard sections, not host shells; manually verify whether shells are disconnected/too thick.
202
+ - **Change-surface discipline**: the plan change surface lists authoritative source paths. If host shells are unchanged, do not write `wf-*.md` into the change surface.
203
+ - **Self-check**: after changing check-loop, run `node .agents/scripts/check-loop.mjs`
204
+
205
+ # Test · Static Gates + UI Verification
206
+
207
+ This chapter is for L2/L3, DB-switch smoke tests, flaky, and independent review.
208
+
209
+ ## 1. Static Gates
210
+ **Input**: code changes to verify
211
+ **Process**:
212
+ 1. **Run gates**: `node .agents/scripts/verify.mjs` (tier policy per the verify.mjs header note, not restated here). The single source for project build, test, and type-check command lists is `.agents/hooks/commit-check.config.json`.
213
+ 2. **Failure handling**: any failure $\rightarrow$ **HALT**. L1 returns to `.agents/commands/new-task.md` Fast Track step 5 to change code. L2/L3 return to the Build chapter to fix. For intermittent/cross-layer issues use `diagnosing-bugs` diagnosis. A full-suite first run red with an isolated rerun green does not count as green: file it as flaky (papercut/incident) and fix it; do not close out just because a rerun is green.
214
+ 3. **Tier by task subtype**: pure docs/business surface → default tier (product gates cut by diff surface); cross-surface or before release → `--full`. The engine surface has no test gate; `*.test.mjs` is not checked in and does not run automatically (cleared 2026-10-29); manual tool — merge-semantics probe `node .agents/scripts/check-loop-rev-semantics.mjs` (runs automatically at the end of FULL mode).
215
+ **Output**: static-gate all-green evidence
216
+ **Note**: runtime environment details in `.agents/notes/runtime-env.md` §1, §2; for long gate commands (verify full / `dotnet test`) **wait in segments + report progress per segment**, do not block to the timeout limit — policy in §6.4 "retrieving results of long background tasks"
217
+
218
+ ## 2. DB Smoke Test
219
+ **Trigger**: changed the project DB connection config or added a target database
220
+ **Process**:
221
+ 1. **Schema comparison**: actual target-DB schema $\leftrightarrow$ code expectation (recent change scripts + base tables)
222
+ 2. **Endpoint liveness**: run the smoke script $\rightarrow$ verify 6 core endpoints $\text{HTTP 200}$
223
+ **Output**: liveness pass evidence
224
+ **Fact**: smoke script path in `.agents/notes/runtime-env.md` §6.1
225
+ **Fail**: any non-200 $\rightarrow$ **HARD-BLOCK** $\rightarrow$ stop at this step, no deployment.
226
+
227
+ ## 3. UI Verification
228
+ **Trigger**: frontend changes involved $\text{AND}$ static gates have passed
229
+ **Process**:
230
+ 1. **Invoke skill**: use `.agents/skills/verify-ui/SKILL.md` to perform verification.
231
+ 2. **Environment config**: details in `.agents/notes/runtime-env.md` §4 and §6.3
232
+ **Output**: UI verification report (screenshots/DOM evidence)
233
+
234
+ ## 4. Independent Review (L2/L3 Mandatory)
235
+ 1. **Delegate review**: hand to `independent-reviewer` (must attach the role's `attach` from the file header; missing any one means do not dispatch; this section's scenario = independent review before closeout). Trigger, form, review package, persistence, opinion-level ledger, and cross-model policy follow `.agents/roles/independent-reviewer.md` "Review Policy" (not restated here)
236
+ 2. **Review classification**: based on the review opinions $\rightarrow$ adopt $\rightarrow$ return to the Build chapter to modify $\rightarrow$ rerun this stage
237
+ **Output**: review conclusion (Approved / Reject) + opinion-level ledger line; signature and persistence policy per the role's "Review Policy"
238
+
239
+ ## 5. Closeout After Confirmation (Closure)
240
+ L1 closeout is the single commit in `.agents/commands/new-task.md` Fast Track step 6 (by default the closeout skill is not opened; it is opened only for the plan-independent-closeout scenario — policy single source new-task.md step 6); this section starts from L2/L3 new requirements and fix-type work.
241
+ **Process**:
242
+ 1. **Verify and close out**: per `.agents/skills/shipyard-workflow-closeout/SKILL.md`.
243
+ 2. **Acceptance check-off**:
244
+ - **L2/L3 new requirement**: check off the intent's "acceptance criteria" one by one $\rightarrow$ backfill evidence $\rightarrow$ intent $\text{approved} \rightarrow \text{done}$
245
+ - **Fix-type**: verify recurrence-prevention landing $\rightarrow$ incident $\text{open} \rightarrow \text{fixed} \rightarrow \text{closed}$
246
+ 3. **Same-family cleanup**: plans with the same name as L2/L3 and fix-type work are also set to `done`. Do not leave `approved` orphans.
247
+ 4. **Trace record**: delegated tasks go into the `workflow/delegations.md` delegation results table; L2/L3 self-performed work goes into the self-performed task results table. Self-performed L1 is not written. Run `node .agents/scripts/agg-delegations.mjs --write` only after a row is written.
248
+ 5. **Opportunistic backfeed (advisory)**: if there is friction, record it in `workflow/papercuts.md`; if not, write "no candidates" in the closeout reply.
249
+ **Next**: L2/L3 $\rightarrow$ `.agents/commands/deploy.md`
250
+
251
+ ## 🚫 Prohibitions
252
+ | Operation | Machine behavior | Exception |
253
+ |---|---|---|
254
+ | Opportunistic code changes | Violates the Test stage definition | Must return to the Build chapter to fix $\rightarrow$ rerun Test |
255
+ | Partial pass | `ui-verifier` report blocked | Do not mark partially passed items as passed |
256
+ | Checking without evidence | check-loop blocks | Must provide specific evidence (screenshot/SHA/Log) |
@@ -0,0 +1,48 @@
1
+ # Review Cost Discipline: Run the Panel Only Once, Assign Slots to Concurrent Sessions
2
+
3
+ > **Retirement note (2026-11-09, owner directive)**: the automatic PR panel gate has been dismantled — pre-push / CI / pr-create no longer enforce the review ledger.
4
+ > This page is retained as the cost discipline for **manually running the panel**; the measured fast-tier data stays on record; the orchestration entry point has moved to `.agents/commands/pr-review.md`.
5
+
6
+ Source: the 2026-11-07/08 outbound header attachment delivery (four panel rounds in runs `pr-8fb73ea` / `pr-9e50909` / `pr-741f609` / `pr-6b535e0`, measured at ~2.5 hours, of which two rounds were entirely wasted). The `pr-review` script documents only "how to run"; this page documents "when to run and how many times" — **process constraints, not a repeat of tool details**.
7
+
8
+ ## Rules
9
+
10
+ 1. **One-review principle**: run the panel review for the same delivery batch **only once**. The fixed order is
11
+ **all fixes landed → commit → `plan` → finder/verifier → `dispose` → `summary` → push**.
12
+ "Review while changing" is forbidden: `run.json`'s `diffHash` binds base..head; once head changes the ledger is invalidated and the whole round must be rerun.
13
+ 2. **After receiving findings, finish all changes before reopening**: apply this round's confirmed items (`confirmed`) in one pass and commit, then start a new round against the **new head**;
14
+ "change one → re-review → change another" is not allowed (3 lenses per round, reduced under the 2026-11-08 tier 3).
15
+ 3. **Check the dispose verdict before deciding whether to change anything**: items marked `waived` / `deferred` / `rejected` produce no code changes;
16
+ do not change head for them (doing so wastes a whole round).
17
+ 4. **Concurrent sessions must use separate slots**: when multiple sessions/agents run in parallel on the same machine, each sets its own `SHIPYARD_SLOT`
18
+ (single source for port slots and derivation rules: `runtime-env.md` §6.1b). Sharing one slot collides on both "workspace files" and "branch HEAD";
19
+ head drift during a review = ledger invalidation (in this run, another session appended `a4b347a02` / `02d269a79` / `c77f50b44` on the same branch).
20
+ 5. **Engine-surface commits do not run the panel**: when the scope lands only in `.agents/` `.githooks/` `.codebuddy/` `.trae/` `workflow/` `wiki/` `docs/`
21
+ and root config, it is not worth starting the panel (the former pre-push engine-surface exemption was retired along with the 2026-11-09 automatic gate, and is now a manual judgment);
22
+ if you discover before manually starting the panel that the scope is purely engine/docs → that is a documentation task, do not run the panel.
23
+
24
+ ## Checklist (answer each item before starting the panel)
25
+
26
+ - [ ] Are all changes for this round **already committed**? Does the working tree contain only files from other tasks unrelated to this batch?
27
+ - [ ] Are there **no** confirmed findings still pending changes? (If yes → fix first, do not start the panel)
28
+ - [ ] Does this session exclusively own the port slot / branch? (If not → set `SHIPYARD_SLOT` first or switch branches)
29
+ - [ ] Does the change scope really include the business surface? (Purely engine/docs → not worth running the panel)
30
+
31
+ If any item is "no", starting the panel is a waste.
32
+
33
+ ## Cost Facts (for judgment; measured 2026-11-08)
34
+
35
+ | Action | Duration | Notes |
36
+ |---|---|---|
37
+ | Single-round panel finder (6 lenses; reduced to 3 lenses from 2026-11-08) | 8–27 min (measured with 6 lenses) | largest single brief 131 KB (embedded diff 80 KB + base 50 KB) |
38
+ | Single-round panel verifier | 12–21 min | after change: 1 vote by default, +1 vote for Important/security |
39
+ | `pre-push` local gate | before change 110–130 s / after change 15–20 s | integration tier defaults to CI (`PREPUSH_RUN_INTEGRATION=1` reproduces locally) |
40
+ | One "re-review right after changing" rework | +15–30 min | this run wasted two rounds due to inverted ordering (~33 min) |
41
+ | Fast-tier single-round panel (--fast; single lens, single vote, target ≤5 min) | **measured 377s** (zero repo reads: finder 2 tool calls 343s + script 34s; first run including queue 640s) | model latency is the floor; overruns above the hard cap are cut off by fast-timeout; criteria and orchestration contract: header-note fast-tier section of `.agents/scripts/pr-review.mjs` + config `fast` section |
42
+
43
+ ## Related Single Sources
44
+
45
+ - Review panel mechanics and commands: `.agents/scripts/pr-review.mjs` (--help) + `.agents/commands/pr-review.md`
46
+ - Confirmation gate and three-piece-set ordering: `.agents/notes/process-order-rule.md`
47
+ - Port slots and concurrency: `.agents/notes/runtime-env.md` §6.1b (**this page does not restate the port values**)
48
+ - Gate checkpoint overview: `.agents/notes/engine-map.md`
@@ -0,0 +1,21 @@
1
+ # Ordering Red Line: Classify First → Three-Piece Set → Confirm → Then Act
2
+
3
+ Source: the 2026-11-03 process-inversion incident (incident `workflow/incidents/2026-11-03-po-pml-outbound-guards.md`; same-day entry in `workflow/papercuts.md`). `new-task.md` keeps only a one-line pointer on its first screen; the body details live here.
4
+
5
+ ## Rules
6
+
7
+ 1. **Before acting**, run the two-question classification in `new-task.md` §1 (structural surface → L3; contract or shared convention → L2; neither → L1). When multiple defects are reported at once, **classify each item and take the highest**.
8
+ 2. If L2 / L3 is hit: first land a document in `workflow/incidents/` (defect type) or `workflow/intents/`, then `spec`, then `plan`, and **only after `confirm-doc` passes for each document in turn may code be changed**. L1 must also have a plan first (with explicit criteria).
9
+ 3. **No "change first, document later"**: the confirmation gate means "the plan the user approved must exist before the implementation". Backfilling documents afterwards cannot restore the time order = bypassing the confirmation gate; if it happens, it must be registered in both the incident's "gate-failure analysis" section and `workflow/papercuts.md`, and called out in the commit message.
10
+ 4. When classification is uncertain, default to **treating it as one level higher and documenting first**; do not write code first and backfill the level afterwards.
11
+
12
+ ## Why the document-status gate cannot stop this, and which gate can now
13
+
14
+ - The level is a judgment, not a machine-detectable signal: the same change may be a "purely additive read-only field" (L1) or a "tightening of existing semantics" (L2), and a hook cannot infer the level from the diff.
15
+ - The confirmation fingerprint validates only document status and the commitment surface, not the order of occurrence. If `confirm-doc` is called after implementation, the document gate still passes.
16
+ - The machine signal for order is at commit time: `.agents/hooks/check-confirm-order.mjs` (invoked by `.githooks/commit-msg` since the 2026-11-08 tier 2-D — pre-commit cannot read the commit message; merge skipping is instead detected by the script probing the `MERGE_HEAD` status file). Staged `backend/` source, `frontend/src` vue/ts, `tests/**/*.cs`, and data-maintenance SQL must each appear in the body of a `workflow/plans/` document whose **status is approved**, or hit an exemption: (1) the L0 lane (message body contains a non-empty `L0:` line and ≤5 product files); (2) a coverage plan staged in the same batch (L1 single commit; `done` is also acceptable). A **historical** plan marked `done` does not count as coverage; `draft` does not either. squash, rebase, and cherry-pick skip this.
17
+ - Classification itself still rests with the executor. If "change first, document later" bypasses this gate (paths not written into the plan, or commits not going through the git hook), it is still double-registered in incident + papercuts.
18
+
19
+ ## Reproduction trace (2026-11-03)
20
+
21
+ - The implementation commit `302226b8` preceded the three-piece-set backfill in `83b7015f`; nothing blocked during check-loop (because the gate only looks at status), showing there is no machine protection on the ordering surface.
@@ -0,0 +1,21 @@
1
+ # Runtime Environment Registry (machine-specific template — copy to `runtime-env.local.md` and fill in per actual conditions)
2
+
3
+ > **This file is the checked-in template; the real file `runtime-env.local.md` is git-ignored — each machine registers its own, and it is not committed or shared.**
4
+ > For the mechanics and resolution order see `runtime-env.md` §6.3. Consumers (they automatically read the "Tool" table rows at runtime):
5
+ > 5 dwf workflows (`.zcode/workflows/*.dwf.ts`), `scripts/verify/e2e/browser-resolve.mjs`, `.agents/scripts/check-local-gates.mjs`.
6
+ > Unregistered tools get built-in standard-install-location probing (node/dotnet/git tried candidate by candidate via `--version`, browser probed by filesystem existence);
7
+ > **registration is only for overriding non-standard install locations** — after cloning, first run `node .agents/scripts/check-local-gates.mjs`,
8
+ > and use its output to decide which tools need registration.
9
+
10
+ | Tool | Local path | Notes |
11
+ |---|---|---|
12
+ | node | <example: D:/Program Files/NodeJs/node.exe> | standard install (C:/Program Files/nodejs) needs no registration |
13
+ | npm-cli | <example: D:/Program Files/NodeJs/node_modules/npm/bin/npm-cli.js> | can be omitted: when dwf is unregistered it is derived automatically from the node directory |
14
+ | dotnet | <example: C:/Program Files/dotnet/dotnet.exe> | standard location, no registration needed |
15
+ | git | <example: C:/Program Files/Git/cmd/git.exe> | standard location, no registration needed |
16
+ | bash | <example: C:/Program Files/Git/bin/bash.exe> | only needed on machines where `bash` is not on PATH; to get the exit code, run `& "<this path>" -c '…; echo EXIT=$?'` |
17
+ | browser | <example: C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe> | only needed when the browser is installed in a non-standard location; alternatively use the env var `CHROME_PATH` |
18
+
19
+ ## Other machine-specific facts (for agents to read; no machine consumers)
20
+
21
+ - <example: terminal defaults to PowerShell; local Chrome 83 engine too old and disabled; CPU core count and other measured facts>