maestro-flow 0.3.10 → 0.3.12

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 (311) hide show
  1. package/.claude/agents/conceptual-planning-agent.md +1 -0
  2. package/.claude/agents/workflow-analyzer.md +114 -114
  3. package/.claude/agents/workflow-collab-planner.md +144 -144
  4. package/.claude/agents/workflow-debugger.md +102 -103
  5. package/.claude/agents/workflow-executor.md +127 -128
  6. package/.claude/agents/workflow-integration-checker.md +82 -82
  7. package/.claude/agents/workflow-nyquist-auditor.md +85 -84
  8. package/.claude/agents/workflow-phase-researcher.md +85 -85
  9. package/.claude/agents/workflow-plan-checker.md +90 -90
  10. package/.claude/agents/workflow-planner.md +178 -178
  11. package/.claude/agents/workflow-roadmapper.md +81 -83
  12. package/.claude/agents/workflow-verifier.md +119 -119
  13. package/.claude/commands/learn-decompose.md +176 -176
  14. package/.claude/commands/learn-follow.md +167 -167
  15. package/.claude/commands/learn-retro.md +3 -3
  16. package/.claude/commands/learn-second-opinion.md +2 -2
  17. package/.claude/commands/maestro-brainstorm.md +1 -0
  18. package/.claude/commands/maestro-coordinate.md +1 -3
  19. package/.claude/commands/maestro-fork.md +133 -111
  20. package/.claude/commands/maestro-merge.md +85 -77
  21. package/.claude/commands/maestro-plan.md +88 -2
  22. package/.claude/commands/maestro-roadmap.md +113 -2
  23. package/.claude/commands/maestro.md +1 -0
  24. package/.claude/commands/manage-harvest.md +131 -131
  25. package/.claude/commands/manage-issue.md +2 -2
  26. package/.claude/commands/quality-business-test.md +5 -5
  27. package/.claude/commands/quality-debug.md +3 -2
  28. package/.claude/commands/quality-retrospective.md +6 -4
  29. package/.claude/commands/quality-review.md +1 -1
  30. package/.claude/commands/quality-test-gen.md +5 -4
  31. package/.claude/commands/spec-add.md +67 -56
  32. package/.claude/commands/spec-load.md +66 -64
  33. package/.claude/commands/spec-setup.md +5 -9
  34. package/.codex/skills/learn-decompose/SKILL.md +119 -0
  35. package/.codex/skills/learn-follow/SKILL.md +83 -0
  36. package/.codex/skills/learn-investigate/SKILL.md +83 -0
  37. package/.codex/skills/learn-retro/SKILL.md +83 -0
  38. package/.codex/skills/learn-second-opinion/SKILL.md +86 -0
  39. package/.codex/skills/maestro/SKILL.md +151 -279
  40. package/.codex/skills/maestro-analyze/SKILL.md +59 -71
  41. package/.codex/skills/maestro-brainstorm/SKILL.md +452 -463
  42. package/.codex/skills/maestro-chain/SKILL.md +95 -110
  43. package/.codex/skills/maestro-coordinate/SKILL.md +68 -234
  44. package/.codex/skills/maestro-execute/SKILL.md +435 -446
  45. package/.codex/skills/maestro-fork/SKILL.md +98 -0
  46. package/.codex/skills/maestro-init/SKILL.md +172 -167
  47. package/.codex/skills/maestro-learn/SKILL.md +80 -0
  48. package/.codex/skills/maestro-link-coordinate/SKILL.md +224 -220
  49. package/.codex/skills/maestro-merge/SKILL.md +69 -0
  50. package/.codex/skills/maestro-milestone-audit/SKILL.md +108 -103
  51. package/.codex/skills/maestro-milestone-complete/SKILL.md +155 -149
  52. package/.codex/skills/maestro-milestone-release/SKILL.md +70 -0
  53. package/.codex/skills/maestro-overlay/SKILL.md +188 -185
  54. package/.codex/skills/maestro-plan/SKILL.md +58 -69
  55. package/.codex/skills/maestro-quick/SKILL.md +26 -23
  56. package/.codex/skills/maestro-roadmap/SKILL.md +65 -73
  57. package/.codex/skills/maestro-spec-generate/SKILL.md +66 -74
  58. package/.codex/skills/maestro-ui-design/SKILL.md +35 -32
  59. package/.codex/skills/maestro-verify/SKILL.md +556 -566
  60. package/.codex/skills/manage-codebase-rebuild/SKILL.md +397 -405
  61. package/.codex/skills/manage-codebase-refresh/SKILL.md +93 -82
  62. package/.codex/skills/manage-harvest/SKILL.md +82 -0
  63. package/.codex/skills/manage-issue/SKILL.md +80 -65
  64. package/.codex/skills/manage-issue-discover/SKILL.md +491 -503
  65. package/.codex/skills/manage-learn/SKILL.md +190 -186
  66. package/.codex/skills/manage-memory/SKILL.md +95 -72
  67. package/.codex/skills/manage-memory-capture/SKILL.md +99 -86
  68. package/.codex/skills/manage-status/SKILL.md +102 -89
  69. package/.codex/skills/quality-business-test/SKILL.md +228 -223
  70. package/.codex/skills/quality-debug/SKILL.md +54 -66
  71. package/.codex/skills/quality-integration-test/SKILL.md +532 -544
  72. package/.codex/skills/quality-refactor/SKILL.md +197 -191
  73. package/.codex/skills/quality-retrospective/SKILL.md +512 -505
  74. package/.codex/skills/quality-review/SKILL.md +95 -107
  75. package/.codex/skills/quality-sync/SKILL.md +101 -89
  76. package/.codex/skills/quality-test/SKILL.md +202 -198
  77. package/.codex/skills/quality-test-gen/SKILL.md +94 -105
  78. package/.codex/skills/spec-add/SKILL.md +58 -39
  79. package/.codex/skills/spec-load/SKILL.md +45 -40
  80. package/.codex/skills/spec-map/SKILL.md +180 -182
  81. package/.codex/skills/spec-setup/SKILL.md +94 -76
  82. package/.codex/skills/team-coordinate/SKILL.md +346 -357
  83. package/.codex/skills/team-executor/SKILL.md +70 -112
  84. package/.codex/skills/team-lifecycle-v4/SKILL.md +311 -299
  85. package/.codex/skills/team-quality-assurance/SKILL.md +234 -227
  86. package/.codex/skills/team-review/SKILL.md +232 -225
  87. package/.codex/skills/team-tech-debt/SKILL.md +78 -100
  88. package/.codex/skills/team-testing/SKILL.md +242 -235
  89. package/.codex/skills/wiki-connect/SKILL.md +75 -0
  90. package/.codex/skills/wiki-digest/SKILL.md +87 -0
  91. package/README.md +9 -4
  92. package/README.zh-CN.md +9 -4
  93. package/dashboard/dist/assets/{ArtifactsPage-DZNCi6tn.js → ArtifactsPage-CUrrDGgN.js} +1 -1
  94. package/dashboard/dist/assets/ChatInput-pUOLJIKE.js +49 -0
  95. package/dashboard/dist/assets/ChatPage-B8Xqkt0v.js +27 -0
  96. package/dashboard/dist/assets/{CollabPage-B4NAHXS2.js → CollabPage-DIUXeazv.js} +1 -1
  97. package/dashboard/dist/assets/{ExecutionPanel-CFt4LJyq.js → ExecutionPanel-VmYeADFj.js} +1 -1
  98. package/dashboard/dist/assets/KanbanPage-DLq8v7hg.js +21 -0
  99. package/dashboard/dist/assets/{MarkdownRenderer-X4af_WNb.js → MarkdownRenderer-D7AehrnR.js} +1 -1
  100. package/dashboard/dist/assets/{McpPage-BKfCVIyU.js → McpPage-BY0SjTgw.js} +2 -2
  101. package/dashboard/dist/assets/{OutputPanel-BlBQFJSW.js → OutputPanel-B-Rjwgmv.js} +1 -1
  102. package/dashboard/dist/assets/{ProblemsPanel-De3DLvoI.js → ProblemsPanel-GEpF-oi4.js} +1 -1
  103. package/dashboard/dist/assets/RequirementBoardPage-xs8uDM7I.js +6 -0
  104. package/dashboard/dist/assets/{RequirementPage-Bllxe2XI.js → RequirementPage-BKDSFwjA.js} +5 -10
  105. package/dashboard/dist/assets/SpecsPage-DLFb9ZH0.js +36 -0
  106. package/dashboard/dist/assets/SupervisorPage-SOki_kgz.js +6 -0
  107. package/dashboard/dist/assets/TeamsPage-BO2kP70F.js +11 -0
  108. package/dashboard/dist/assets/{TreeBrowser-Q12qobZs.js → TreeBrowser-B9DHdULE.js} +1 -1
  109. package/dashboard/dist/assets/{WorkflowPage-D_Fzdy3_.js → WorkflowPage-C8hWbYim.js} +1 -1
  110. package/dashboard/dist/assets/{check-u6fGOwQO.js → check-DJDk3A2a.js} +1 -1
  111. package/dashboard/dist/assets/{chevron-right-Csu22t58.js → chevron-right-C7bVDreZ.js} +1 -1
  112. package/dashboard/dist/assets/{circle-CMrkbRNg.js → circle-Qfgy4LB_.js} +1 -1
  113. package/dashboard/dist/assets/{circle-alert-c3tH1P4z.js → circle-alert-Na1vf6qQ.js} +1 -1
  114. package/dashboard/dist/assets/{circle-check-gYxxSYuH.js → circle-check-CEGgy3NV.js} +1 -1
  115. package/dashboard/dist/assets/{circle-check-big-TDSeWstm.js → circle-check-big-3JB8zRYj.js} +1 -1
  116. package/dashboard/dist/assets/{code-CFN2uX9V.js → code-Ble63Idz.js} +1 -1
  117. package/dashboard/dist/assets/{columns-3-38xIDlzy.js → columns-3-BUcKlxve.js} +1 -1
  118. package/dashboard/dist/assets/{download-DC7KkKyP.js → download-CMqkfn8x.js} +1 -1
  119. package/dashboard/dist/assets/{folder-CWq_lAnf.js → folder-B9ewx9LL.js} +1 -1
  120. package/dashboard/dist/assets/index-C2Mcb4TJ.js +231 -0
  121. package/dashboard/dist/assets/index-DyBbPc18.css +1 -0
  122. package/dashboard/dist/assets/{index-Do71weNR.js → index-JTmGteaT.js} +1 -1
  123. package/dashboard/dist/assets/{list-CgIP_2A-.js → list-DI8Wn2aT.js} +1 -1
  124. package/dashboard/dist/assets/loader-B5F6PzFT.js +11 -0
  125. package/dashboard/dist/assets/{minus-DYoN5UGk.js → minus-Lp_BfctG.js} +1 -1
  126. package/dashboard/dist/assets/{pen-line-Bh_WKYHm.js → pen-line-Ch7sphzZ.js} +1 -1
  127. package/dashboard/dist/assets/pencil-_yRMHmGT.js +6 -0
  128. package/dashboard/dist/assets/{proxy-BKxDAKTj.js → proxy-D72Y8a4Y.js} +1 -1
  129. package/dashboard/dist/assets/{search-SieXnOgr.js → search-BS6fI6Bg.js} +1 -1
  130. package/dashboard/dist/assets/{shallow-Bme1JY57.js → shallow-BXasQBvr.js} +1 -1
  131. package/dashboard/dist/assets/table-CeGlFjlP.js +6 -0
  132. package/dashboard/dist/assets/{terminal-BB3Xfuv5.js → terminal-BJic2yW-.js} +1 -1
  133. package/dashboard/dist/assets/{trash-2-C8f4vFFM.js → trash-2-Czz4X8Fb.js} +1 -1
  134. package/dashboard/dist/assets/{zap-4uwlzVm0.js → zap-C3H0jVFA.js} +1 -1
  135. package/dashboard/dist/index.html +2 -2
  136. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js +16 -1
  137. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js.map +1 -1
  138. package/dashboard/dist-server/dashboard/src/server/agents/delegate-broker-monitor.js +1 -2
  139. package/dashboard/dist-server/dashboard/src/server/agents/delegate-broker-monitor.js.map +1 -1
  140. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.d.ts +1 -1
  141. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.js +2 -1
  142. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.js.map +1 -1
  143. package/dashboard/dist-server/dashboard/src/server/index.js +3 -0
  144. package/dashboard/dist-server/dashboard/src/server/index.js.map +1 -1
  145. package/dashboard/dist-server/dashboard/src/server/routes/collab.js +124 -0
  146. package/dashboard/dist-server/dashboard/src/server/routes/collab.js.map +1 -1
  147. package/dashboard/dist-server/dashboard/src/server/routes/specs.d.ts +1 -1
  148. package/dashboard/dist-server/dashboard/src/server/routes/specs.js +75 -30
  149. package/dashboard/dist-server/dashboard/src/server/routes/specs.js.map +1 -1
  150. package/dashboard/dist-server/dashboard/src/server/state/event-bus.d.ts +5 -0
  151. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js +5 -0
  152. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js.map +1 -1
  153. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.d.ts +10 -0
  154. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.js +73 -0
  155. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.js.map +1 -0
  156. package/dashboard/dist-server/dashboard/src/shared/collab-types.d.ts +31 -0
  157. package/dashboard/dist-server/dashboard/src/shared/collab-types.js +28 -0
  158. package/dashboard/dist-server/dashboard/src/shared/collab-types.js.map +1 -1
  159. package/dashboard/dist-server/dashboard/src/shared/constants.js +10 -0
  160. package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
  161. package/dashboard/dist-server/dashboard/src/shared/coordinate-types.d.ts +22 -0
  162. package/dashboard/dist-server/dashboard/src/shared/issue-types.d.ts +12 -0
  163. package/dashboard/dist-server/dashboard/src/shared/issue-types.js +12 -0
  164. package/dashboard/dist-server/dashboard/src/shared/issue-types.js.map +1 -1
  165. package/dashboard/dist-server/dashboard/src/shared/team-types.d.ts +22 -0
  166. package/dashboard/dist-server/dashboard/src/shared/team-types.js +7 -0
  167. package/dashboard/dist-server/dashboard/src/shared/team-types.js.map +1 -1
  168. package/dashboard/dist-server/dashboard/src/shared/types.d.ts +3 -2
  169. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +28 -2
  170. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
  171. package/dashboard/dist-server/shared/agent-types.d.ts +4 -0
  172. package/dashboard/dist-server/src/hooks/constants.d.ts +3 -1
  173. package/dashboard/dist-server/src/hooks/constants.js +4 -2
  174. package/dashboard/dist-server/src/hooks/constants.js.map +1 -1
  175. package/dist/shared/agent-types.d.ts +4 -0
  176. package/dist/shared/agent-types.d.ts.map +1 -1
  177. package/dist/src/commands/collab.js +4 -4
  178. package/dist/src/commands/collab.js.map +1 -1
  179. package/dist/src/commands/hooks.d.ts.map +1 -1
  180. package/dist/src/commands/hooks.js +66 -1
  181. package/dist/src/commands/hooks.js.map +1 -1
  182. package/dist/src/commands/install-backend.d.ts.map +1 -1
  183. package/dist/src/commands/install-backend.js +29 -18
  184. package/dist/src/commands/install-backend.js.map +1 -1
  185. package/dist/src/commands/spec.d.ts.map +1 -1
  186. package/dist/src/commands/spec.js +7 -2
  187. package/dist/src/commands/spec.js.map +1 -1
  188. package/dist/src/hooks/__tests__/statusline-visual-test.js +23 -1
  189. package/dist/src/hooks/__tests__/statusline-visual-test.js.map +1 -1
  190. package/dist/src/hooks/constants.d.ts +3 -1
  191. package/dist/src/hooks/constants.d.ts.map +1 -1
  192. package/dist/src/hooks/constants.js +4 -2
  193. package/dist/src/hooks/constants.js.map +1 -1
  194. package/dist/src/hooks/guards/index.d.ts +1 -0
  195. package/dist/src/hooks/guards/index.d.ts.map +1 -1
  196. package/dist/src/hooks/guards/index.js +1 -0
  197. package/dist/src/hooks/guards/index.js.map +1 -1
  198. package/dist/src/hooks/guards/spec-validator.d.ts +25 -0
  199. package/dist/src/hooks/guards/spec-validator.d.ts.map +1 -0
  200. package/dist/src/hooks/guards/spec-validator.js +66 -0
  201. package/dist/src/hooks/guards/spec-validator.js.map +1 -0
  202. package/dist/src/hooks/keyword-spec-injector.d.ts +21 -0
  203. package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -0
  204. package/dist/src/hooks/keyword-spec-injector.js +96 -0
  205. package/dist/src/hooks/keyword-spec-injector.js.map +1 -0
  206. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts +2 -1
  207. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts.map +1 -1
  208. package/dist/src/hooks/plugins/spec-injection-plugin.js +21 -12
  209. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  210. package/dist/src/hooks/skill-context.d.ts +3 -0
  211. package/dist/src/hooks/skill-context.d.ts.map +1 -1
  212. package/dist/src/hooks/skill-context.js +95 -9
  213. package/dist/src/hooks/skill-context.js.map +1 -1
  214. package/dist/src/hooks/spec-bridge.d.ts +40 -0
  215. package/dist/src/hooks/spec-bridge.d.ts.map +1 -0
  216. package/dist/src/hooks/spec-bridge.js +97 -0
  217. package/dist/src/hooks/spec-bridge.js.map +1 -0
  218. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  219. package/dist/src/hooks/spec-injector.js +18 -12
  220. package/dist/src/hooks/spec-injector.js.map +1 -1
  221. package/dist/src/hooks/statusline.d.ts.map +1 -1
  222. package/dist/src/hooks/statusline.js +6 -3
  223. package/dist/src/hooks/statusline.js.map +1 -1
  224. package/dist/src/team/phase-orchestrator.d.ts +52 -0
  225. package/dist/src/team/phase-orchestrator.d.ts.map +1 -0
  226. package/dist/src/team/phase-orchestrator.js +165 -0
  227. package/dist/src/team/phase-orchestrator.js.map +1 -0
  228. package/dist/src/team/phase-types.d.ts +51 -0
  229. package/dist/src/team/phase-types.d.ts.map +1 -0
  230. package/dist/src/team/phase-types.js +41 -0
  231. package/dist/src/team/phase-types.js.map +1 -0
  232. package/dist/src/tools/index.d.ts.map +1 -1
  233. package/dist/src/tools/index.js +6 -0
  234. package/dist/src/tools/index.js.map +1 -1
  235. package/dist/src/tools/merge-validator.d.ts.map +1 -1
  236. package/dist/src/tools/merge-validator.js +114 -16
  237. package/dist/src/tools/merge-validator.js.map +1 -1
  238. package/dist/src/tools/spec-entry-parser.d.ts +56 -0
  239. package/dist/src/tools/spec-entry-parser.d.ts.map +1 -0
  240. package/dist/src/tools/spec-entry-parser.js +196 -0
  241. package/dist/src/tools/spec-entry-parser.js.map +1 -0
  242. package/dist/src/tools/spec-init.d.ts.map +1 -1
  243. package/dist/src/tools/spec-init.js +66 -92
  244. package/dist/src/tools/spec-init.js.map +1 -1
  245. package/dist/src/tools/spec-keyword-index.d.ts +30 -0
  246. package/dist/src/tools/spec-keyword-index.d.ts.map +1 -0
  247. package/dist/src/tools/spec-keyword-index.js +101 -0
  248. package/dist/src/tools/spec-keyword-index.js.map +1 -0
  249. package/dist/src/tools/spec-loader.d.ts +3 -3
  250. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  251. package/dist/src/tools/spec-loader.js +49 -23
  252. package/dist/src/tools/spec-loader.js.map +1 -1
  253. package/dist/src/tools/team-agents.d.ts +27 -0
  254. package/dist/src/tools/team-agents.d.ts.map +1 -0
  255. package/dist/src/tools/team-agents.js +362 -0
  256. package/dist/src/tools/team-agents.js.map +1 -0
  257. package/dist/src/tools/team-mailbox.d.ts +40 -0
  258. package/dist/src/tools/team-mailbox.d.ts.map +1 -0
  259. package/dist/src/tools/team-mailbox.js +384 -0
  260. package/dist/src/tools/team-mailbox.js.map +1 -0
  261. package/dist/src/tools/team-msg.d.ts +17 -8
  262. package/dist/src/tools/team-msg.d.ts.map +1 -1
  263. package/dist/src/tools/team-msg.js +110 -13
  264. package/dist/src/tools/team-msg.js.map +1 -1
  265. package/dist/src/tools/team-tasks-mcp.d.ts +27 -0
  266. package/dist/src/tools/team-tasks-mcp.d.ts.map +1 -0
  267. package/dist/src/tools/team-tasks-mcp.js +408 -0
  268. package/dist/src/tools/team-tasks-mcp.js.map +1 -0
  269. package/package.json +2 -1
  270. package/shared/agent-types.ts +4 -0
  271. package/templates/worktree-scope.json +9 -10
  272. package/templates/worktrees.json +26 -27
  273. package/workflows/analyze.md +816 -816
  274. package/workflows/brainstorm.md +480 -471
  275. package/workflows/codebase-rebuild.md +332 -332
  276. package/workflows/codebase-refresh.md +240 -240
  277. package/workflows/debug.md +16 -6
  278. package/workflows/execute.md +1 -1
  279. package/workflows/fork.md +100 -36
  280. package/workflows/harvest.md +420 -420
  281. package/workflows/integration-test.md +355 -343
  282. package/workflows/issue-discover.md +414 -414
  283. package/workflows/issue.md +14 -4
  284. package/workflows/learn.md +19 -5
  285. package/workflows/maestro.md +1 -0
  286. package/workflows/map.md +111 -111
  287. package/workflows/merge.md +113 -55
  288. package/workflows/milestone-complete.md +176 -176
  289. package/workflows/plan.md +1 -1
  290. package/workflows/quick.md +497 -497
  291. package/workflows/refactor.md +300 -300
  292. package/workflows/retrospective.md +61 -22
  293. package/workflows/review.md +17 -4
  294. package/workflows/roadmap.md +335 -335
  295. package/workflows/spec-generate.md +640 -640
  296. package/workflows/specs-add.md +46 -81
  297. package/workflows/specs-load.md +15 -17
  298. package/workflows/specs-setup.md +40 -161
  299. package/workflows/test.md +12 -2
  300. package/workflows/ui-style.md +9 -2
  301. package/dashboard/dist/assets/ChatInput-Bvr-FeEq.js +0 -49
  302. package/dashboard/dist/assets/ChatPage-D9zTkJZo.js +0 -22
  303. package/dashboard/dist/assets/KanbanPage-C8USth6H.js +0 -21
  304. package/dashboard/dist/assets/RequirementBoardPage-Bf1trzqs.js +0 -11
  305. package/dashboard/dist/assets/SpecsPage-9lwxKT27.js +0 -36
  306. package/dashboard/dist/assets/SupervisorPage-SusdfHFq.js +0 -6
  307. package/dashboard/dist/assets/TeamsPage-DsuM6OwC.js +0 -6
  308. package/dashboard/dist/assets/arrow-left-Bqtb2hle.js +0 -6
  309. package/dashboard/dist/assets/index-DWG-WrzT.js +0 -231
  310. package/dashboard/dist/assets/index-GUNJodSR.css +0 -1
  311. package/dashboard/dist/assets/table-llyEtj-7.js +0 -6
@@ -1,185 +1,188 @@
1
- ---
2
- name: maestro-overlay
3
- description: Create or edit a non-invasive command overlay from natural-language intent. Writes a JSON patch file to ~/.maestro/overlays/, applies it via maestro overlay add, and confirms installation with idempotent re-apply support.
4
- argument-hint: "<intent> | --list | --remove <name>"
5
- allowed-tools: Read, Write, Bash, Glob, Grep
6
- ---
7
-
8
- # Maestro Overlay
9
-
10
- ## Usage
11
-
12
- ```bash
13
- $maestro-overlay "always run CLI verification after maestro-execute"
14
- $maestro-overlay "require reading doc X before maestro-plan"
15
- $maestro-overlay "--list"
16
- $maestro-overlay "--remove cli-verify-after-execute"
17
- ```
18
-
19
- **Flags**:
20
- - `<intent>` — Natural-language description of what to inject and where
21
- - `--list` — Show installed overlays and their applied state
22
- - `--remove <name>` — Strip overlay from targets and delete its file
23
-
24
- **Overlay storage**:
25
- - User overlays: `~/.maestro/overlays/*.json`
26
- - Shared docs: `~/.maestro/overlays/docs/*.md`
27
- - Shipped examples: `~/.maestro/overlays/_shipped/` (read-only)
28
-
29
- ---
30
-
31
- ## Overview
32
-
33
- 4-step pipeline: parse intent identify targets + injection points → draft overlay JSON → install via CLI and report. Overlays are JSON patch files that augment `.claude/commands/*.md` non-invasively. They survive reinstalls because `maestro install` auto-reapplies them. Each overlay is idempotent: the patcher wraps content in hashed HTML-comment markers, so re-running `maestro overlay apply` produces no file changes.
34
-
35
- ```
36
- Parse Intent → Identify Targets → Draft JSON → Install + Report
37
- (or --list / (read command (apply_patch (exec_command +
38
- --remove) XML sections) to overlays/) banner)
39
- ```
40
-
41
- **Available injection sections**: `purpose`, `required_reading`, `deferred_reading`, `context`, `execution`, `error_codes`, `success_criteria`
42
-
43
- **Patch modes**: `append`, `prepend`, `replace`, `new-section`
44
-
45
- ---
46
-
47
- ## Implementation
48
-
49
- ### Step 1: Parse User Intent
50
-
51
- ```javascript
52
- functions.update_plan({
53
- explanation: "Parsing overlay intent",
54
- plan: [
55
- { step: "Parse intent", status: "in_progress" },
56
- { step: "Identify targets and injection points", status: "pending" },
57
- { step: "Draft overlay JSON", status: "pending" },
58
- { step: "Install and report", status: "pending" }
59
- ]
60
- })
61
- ```
62
-
63
- **Quick-exit paths**:
64
- - `--list` → `functions.exec_command({ cmd: "maestro overlay list" })` then stop
65
- - `--remove <name>` → `functions.exec_command({ cmd: "maestro overlay remove <name>" })` then stop
66
-
67
- **Ambiguous intent**: If intent does not clearly specify (a) which command to target or (b) where in the flow to inject, ask up to 2 focused questions:
68
- ```javascript
69
- functions.request_user_input({
70
- id: "overlay-clarify",
71
- message: "Which command(s) should this overlay target? (e.g. maestro-execute, maestro-plan)"
72
- })
73
- ```
74
-
75
- ### Step 2: Identify Targets and Injection Points
76
-
77
- For each likely target command, read the pristine source from `$PKG_ROOT/.claude/commands/<name>.md` (preferred) or fall back to `~/.claude/commands/<name>.md`. Inspect XML sections and select injection point:
78
-
79
- | Intent type | Section | Mode |
80
- |-------------|---------|------|
81
- | New step after execution | `execution` | `append` |
82
- | Required reading / prerequisite | `required_reading` | `append` |
83
- | Preconditions / gating | `context` | `append` |
84
- | Output quality gate | `success_criteria` | `append` |
85
- | Brand-new section | `execution` | `new-section` (with `afterSection`) |
86
-
87
- ### Step 3: Draft Overlay JSON
88
-
89
- Build a slug from intent (kebab-case, lowercase, max 40 chars).
90
-
91
- ```javascript
92
- functions.apply_patch:
93
- *** Begin Patch
94
- *** Add File: ~/.maestro/overlays/<slug>.json
95
- +{
96
- + "name": "<slug>",
97
- + "description": "<short summary of what and why>",
98
- + "targets": ["<command-name>"],
99
- + "priority": 50,
100
- + "enabled": true,
101
- + "patches": [
102
- + {
103
- + "section": "<section>",
104
- + "mode": "<append|prepend|replace|new-section>",
105
- + "content": "<injected markdown content with (overlay) heading>"
106
- + }
107
- + ]
108
- +}
109
- *** End Patch
110
- ```
111
-
112
- **Content guidelines**:
113
- - Lead injected block with heading including `(overlay)` e.g. `## CLI Verification (overlay)`
114
- - `@~/.maestro/...` references are encouraged for docs
115
- - Keep content concise — overlay adds a step, not rewrites the command
116
-
117
- ```javascript
118
- functions.update_plan({
119
- explanation: "Overlay JSON drafted",
120
- plan: [
121
- { step: "Parse intent", status: "completed" },
122
- { step: "Identify targets and injection points", status: "completed" },
123
- { step: "Draft overlay JSON", status: "completed" },
124
- { step: "Install and report", status: "in_progress" }
125
- ]
126
- })
127
- ```
128
-
129
- ### Step 4: Install via CLI and Report
130
-
131
- ```javascript
132
- functions.exec_command({
133
- cmd: "maestro overlay add ~/.maestro/overlays/<slug>.json",
134
- workdir: "."
135
- })
136
- ```
137
-
138
- On validation failure, fix the JSON and re-run (max 2 retries).
139
-
140
- ```javascript
141
- functions.update_plan({
142
- explanation: "Overlay installed",
143
- plan: [
144
- { step: "Parse intent", status: "completed" },
145
- { step: "Identify targets and injection points", status: "completed" },
146
- { step: "Draft overlay JSON", status: "completed" },
147
- { step: "Install and report", status: "completed" }
148
- ]
149
- })
150
- ```
151
-
152
- Display report:
153
- ```
154
- === OVERLAY INSTALLED ===
155
- Name: <slug>
156
- Path: ~/.maestro/overlays/<slug>.json
157
- Targets: <command> (applied), <command> (skipped: missing)
158
- Scopes: [global]
159
-
160
- Re-apply: maestro overlay apply
161
- Remove: maestro overlay remove <slug>
162
- Inspect: maestro overlay list
163
- ```
164
-
165
- ---
166
-
167
- ## Error Handling
168
-
169
- | Code | Severity | Description | Recovery |
170
- |------|----------|-------------|----------|
171
- | E001 | error | `maestro overlay add` validation failed | Fix JSON syntax or section name, retry |
172
- | E002 | error | No targets found (all commands missing) | Check command name spelling |
173
- | E003 | error | `--remove` target not found in overlay store | Run `--list` to see installed overlays |
174
- | W001 | warning | One or more targets skipped (command missing from install) | Overlay still installed; applies when command is added |
175
-
176
- ---
177
-
178
- ## Core Rules
179
-
180
- 1. **Quick-exit first**: `--list` and `--remove` skip all intent parsing
181
- 2. **Pristine source preferred**: Always read `.claude/commands/<name>.md` for the untouched command spec before deciding injection point
182
- 3. **Idempotent content**: Injected blocks use hashed comment markers — re-runs produce no changes
183
- 4. **Heading required**: Every injected block must start with a `## <Title> (overlay)` heading
184
- 5. **Validate before report**: Run `maestro overlay add` successfully before displaying the report banner
185
- 6. **Max 2 clarification questions**: If intent is ambiguous, ask at most 2 focused questions then proceed with best guess
1
+ ---
2
+ name: maestro-overlay
3
+ description: Create or edit a non-invasive command overlay from natural-language intent. Writes a JSON patch file to ~/.maestro/overlays/, applies it via maestro overlay add, and confirms installation with idempotent re-apply support.
4
+ argument-hint: "<intent> | --list | --remove <name>"
5
+ allowed-tools: Read, Write, Bash, Glob, Grep
6
+ ---
7
+
8
+ <purpose>
9
+ 4-step pipeline: parse intent → identify targets + injection points → draft overlay JSON → install via CLI and report. Overlays are JSON patch files that augment `.claude/commands/*.md` non-invasively. They survive reinstalls because `maestro install` auto-reapplies them. Each overlay is idempotent: the patcher wraps content in hashed HTML-comment markers, so re-running `maestro overlay apply` produces no file changes.
10
+
11
+ ```
12
+ Parse Intent → Identify Targets → Draft JSON → Install + Report
13
+ (or --list / (read command (apply_patch (exec_command +
14
+ --remove) XML sections) to overlays/) banner)
15
+ ```
16
+
17
+ **Available injection sections**: `purpose`, `required_reading`, `deferred_reading`, `context`, `execution`, `error_codes`, `success_criteria`
18
+
19
+ **Patch modes**: `append`, `prepend`, `replace`, `new-section`
20
+ </purpose>
21
+
22
+ <context>
23
+
24
+ ```bash
25
+ $maestro-overlay "always run CLI verification after maestro-execute"
26
+ $maestro-overlay "require reading doc X before maestro-plan"
27
+ $maestro-overlay "--list"
28
+ $maestro-overlay "--remove cli-verify-after-execute"
29
+ ```
30
+
31
+ **Flags**:
32
+ - `<intent>` — Natural-language description of what to inject and where
33
+ - `--list` Show installed overlays and their applied state
34
+ - `--remove <name>` — Strip overlay from targets and delete its file
35
+
36
+ **Overlay storage**:
37
+ - User overlays: `~/.maestro/overlays/*.json`
38
+ - Shared docs: `~/.maestro/overlays/docs/*.md`
39
+ - Shipped examples: `~/.maestro/overlays/_shipped/` (read-only)
40
+
41
+ </context>
42
+
43
+ <invariants>
44
+ 1. **Quick-exit first**: `--list` and `--remove` skip all intent parsing
45
+ 2. **Pristine source preferred**: Always read `.claude/commands/<name>.md` for the untouched command spec before deciding injection point
46
+ 3. **Idempotent content**: Injected blocks use hashed comment markers — re-runs produce no changes
47
+ 4. **Heading required**: Every injected block must start with a `## <Title> (overlay)` heading
48
+ 5. **Validate before report**: Run `maestro overlay add` successfully before displaying the report banner
49
+ 6. **Max 2 clarification questions**: If intent is ambiguous, ask at most 2 focused questions then proceed with best guess
50
+ </invariants>
51
+
52
+ <execution>
53
+
54
+ ### Step 1: Parse User Intent
55
+
56
+ ```javascript
57
+ functions.update_plan({
58
+ explanation: "Parsing overlay intent",
59
+ plan: [
60
+ { step: "Parse intent", status: "in_progress" },
61
+ { step: "Identify targets and injection points", status: "pending" },
62
+ { step: "Draft overlay JSON", status: "pending" },
63
+ { step: "Install and report", status: "pending" }
64
+ ]
65
+ })
66
+ ```
67
+
68
+ **Quick-exit paths**:
69
+ - `--list` → `functions.exec_command({ cmd: "maestro overlay list" })` then stop
70
+ - `--remove <name>` → `functions.exec_command({ cmd: "maestro overlay remove <name>" })` then stop
71
+
72
+ **Ambiguous intent**: If intent does not clearly specify (a) which command to target or (b) where in the flow to inject, ask up to 2 focused questions:
73
+ ```javascript
74
+ functions.request_user_input({
75
+ id: "overlay-clarify",
76
+ message: "Which command(s) should this overlay target? (e.g. maestro-execute, maestro-plan)"
77
+ })
78
+ ```
79
+
80
+ ### Step 2: Identify Targets and Injection Points
81
+
82
+ For each likely target command, read the pristine source from `$PKG_ROOT/.claude/commands/<name>.md` (preferred) or fall back to `~/.claude/commands/<name>.md`. Inspect XML sections and select injection point:
83
+
84
+ | Intent type | Section | Mode |
85
+ |-------------|---------|------|
86
+ | New step after execution | `execution` | `append` |
87
+ | Required reading / prerequisite | `required_reading` | `append` |
88
+ | Preconditions / gating | `context` | `append` |
89
+ | Output quality gate | `success_criteria` | `append` |
90
+ | Brand-new section | `execution` | `new-section` (with `afterSection`) |
91
+
92
+ ### Step 3: Draft Overlay JSON
93
+
94
+ Build a slug from intent (kebab-case, lowercase, max 40 chars).
95
+
96
+ ```javascript
97
+ functions.apply_patch:
98
+ *** Begin Patch
99
+ *** Add File: ~/.maestro/overlays/<slug>.json
100
+ +{
101
+ + "name": "<slug>",
102
+ + "description": "<short summary of what and why>",
103
+ + "targets": ["<command-name>"],
104
+ + "priority": 50,
105
+ + "enabled": true,
106
+ + "patches": [
107
+ + {
108
+ + "section": "<section>",
109
+ + "mode": "<append|prepend|replace|new-section>",
110
+ + "content": "<injected markdown content with (overlay) heading>"
111
+ + }
112
+ + ]
113
+ +}
114
+ *** End Patch
115
+ ```
116
+
117
+ **Content guidelines**:
118
+ - Lead injected block with heading including `(overlay)` e.g. `## CLI Verification (overlay)`
119
+ - `@~/.maestro/...` references are encouraged for docs
120
+ - Keep content concise — overlay adds a step, not rewrites the command
121
+
122
+ ```javascript
123
+ functions.update_plan({
124
+ explanation: "Overlay JSON drafted",
125
+ plan: [
126
+ { step: "Parse intent", status: "completed" },
127
+ { step: "Identify targets and injection points", status: "completed" },
128
+ { step: "Draft overlay JSON", status: "completed" },
129
+ { step: "Install and report", status: "in_progress" }
130
+ ]
131
+ })
132
+ ```
133
+
134
+ ### Step 4: Install via CLI and Report
135
+
136
+ ```javascript
137
+ functions.exec_command({
138
+ cmd: "maestro overlay add ~/.maestro/overlays/<slug>.json",
139
+ workdir: "."
140
+ })
141
+ ```
142
+
143
+ On validation failure, fix the JSON and re-run (max 2 retries).
144
+
145
+ ```javascript
146
+ functions.update_plan({
147
+ explanation: "Overlay installed",
148
+ plan: [
149
+ { step: "Parse intent", status: "completed" },
150
+ { step: "Identify targets and injection points", status: "completed" },
151
+ { step: "Draft overlay JSON", status: "completed" },
152
+ { step: "Install and report", status: "completed" }
153
+ ]
154
+ })
155
+ ```
156
+
157
+ Display report:
158
+ ```
159
+ === OVERLAY INSTALLED ===
160
+ Name: <slug>
161
+ Path: ~/.maestro/overlays/<slug>.json
162
+ Targets: <command> (applied), <command> (skipped: missing)
163
+ Scopes: [global]
164
+
165
+ Re-apply: maestro overlay apply
166
+ Remove: maestro overlay remove <slug>
167
+ Inspect: maestro overlay list
168
+ ```
169
+
170
+ </execution>
171
+
172
+ <error_codes>
173
+
174
+ | Code | Severity | Description | Recovery |
175
+ |------|----------|-------------|----------|
176
+ | E001 | error | `maestro overlay add` validation failed | Fix JSON syntax or section name, retry |
177
+ | E002 | error | No targets found (all commands missing) | Check command name spelling |
178
+ | E003 | error | `--remove` target not found in overlay store | Run `--list` to see installed overlays |
179
+ | W001 | warning | One or more targets skipped (command missing from install) | Overlay still installed; applies when command is added |
180
+
181
+ </error_codes>
182
+
183
+ <success_criteria>
184
+ - [ ] Intent parsed and targets identified
185
+ - [ ] Overlay JSON drafted with correct section and mode
186
+ - [ ] `maestro overlay add` executed successfully
187
+ - [ ] Report displayed with apply/remove/inspect commands
188
+ </success_criteria>
@@ -5,35 +5,7 @@ argument-hint: "[-y|--yes] [-c|--concurrency N] [--continue] \"<phase> [--auto]
5
5
  allowed-tools: spawn_agents_on_csv, Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion
6
6
  ---
7
7
 
8
- ## Auto Mode
9
-
10
- When `--yes` or `-y`: Auto-confirm exploration angles, skip interactive clarification (P2), use defaults for complexity detection.
11
-
12
- # Maestro Plan (CSV Wave)
13
-
14
- ## Usage
15
-
16
- ```bash
17
- $maestro-plan "3"
18
- $maestro-plan -y "3 --auto"
19
- $maestro-plan -c 4 "3 --spec SPEC-001"
20
- $maestro-plan "3 --gaps"
21
- $maestro-plan "3 --dir .workflow/scratch/quick-nav-fix"
22
- $maestro-plan --continue "plan-phase3-20260318"
23
- ```
24
-
25
- **Flags**:
26
- - `-y, --yes`: Skip all confirmations (auto mode)
27
- - `-c, --concurrency N`: Max concurrent agents within each wave (default: 4)
28
- - `--continue`: Resume existing session
29
-
30
- **Output Directory**: `.workflow/.csv-wave/{session-id}/`
31
- **Core Output**: `tasks.csv` (master state) + `results.csv` (final) + `discoveries.ndjson` (shared exploration) + `context.md` (human-readable report) + `plan.json` + `.task/TASK-*.json`
32
-
33
- ---
34
-
35
- ## Overview
36
-
8
+ <purpose>
37
9
  Wave-based planning using `spawn_agents_on_csv`. Wave 1 explores codebase context in parallel across multiple angles, Wave 2 consumes all exploration findings to generate a verified execution plan.
38
10
 
39
11
  **Core workflow**: Resolve Phase -> Determine Explorations -> Parallel Exploration -> Sequential Planning -> Check + Confirm
@@ -74,10 +46,30 @@ Wave-based planning using `spawn_agents_on_csv`. Wave 1 explores codebase contex
74
46
  | |
75
47
  +---------------------------------------------------------------------------+
76
48
  ```
49
+ </purpose>
77
50
 
78
- ---
51
+ <context>
52
+ ```bash
53
+ $maestro-plan "3"
54
+ $maestro-plan -y "3 --auto"
55
+ $maestro-plan -c 4 "3 --spec SPEC-001"
56
+ $maestro-plan "3 --gaps"
57
+ $maestro-plan "3 --dir .workflow/scratch/quick-nav-fix"
58
+ $maestro-plan --continue "plan-phase3-20260318"
59
+ ```
60
+
61
+ **Flags**:
62
+ - `-y, --yes`: Skip all confirmations (auto mode)
63
+ - `-c, --concurrency N`: Max concurrent agents within each wave (default: 4)
64
+ - `--continue`: Resume existing session
79
65
 
80
- ## CSV Schema
66
+ When `--yes` or `-y`: Auto-confirm exploration angles, skip interactive clarification (P2), use defaults for complexity detection.
67
+
68
+ **Output Directory**: `.workflow/.csv-wave/{session-id}/`
69
+ **Core Output**: `tasks.csv` (master state) + `results.csv` (final) + `discoveries.ndjson` (shared exploration) + `context.md` (human-readable report) + `plan.json` + `.task/TASK-*.json`
70
+ </context>
71
+
72
+ <csv_schema>
81
73
 
82
74
  ### tasks.csv (Master State)
83
75
 
@@ -109,9 +101,7 @@ id,title,description,exploration_focus,deps,context_from,wave,status,findings,er
109
101
 
110
102
  Each wave generates `wave-{N}.csv` with extra `prev_context` column.
111
103
 
112
- ---
113
-
114
- ## Output Artifacts
104
+ ### Output Artifacts
115
105
 
116
106
  | File | Purpose | Lifecycle |
117
107
  |------|---------|-----------|
@@ -123,9 +113,7 @@ Each wave generates `wave-{N}.csv` with extra `prev_context` column.
123
113
  | `plan.json` | Execution plan (in phase directory) | Created by wave 2 agent |
124
114
  | `.task/TASK-*.json` | Individual task definitions (in phase directory) | Created by wave 2 agent |
125
115
 
126
- ---
127
-
128
- ## Session Structure
116
+ ### Session Structure
129
117
 
130
118
  ```
131
119
  .workflow/.csv-wave/plan-{phase}-{date}/
@@ -135,10 +123,20 @@ Each wave generates `wave-{N}.csv` with extra `prev_context` column.
135
123
  +-- context.md
136
124
  +-- wave-{N}.csv (temporary)
137
125
  ```
126
+ </csv_schema>
138
127
 
139
- ---
128
+ <invariants>
129
+ 1. **Start Immediately**: First action is session initialization, then Phase 1
130
+ 2. **Wave Order is Sacred**: Never execute wave 2 before wave 1 completes and results are merged
131
+ 3. **CSV is Source of Truth**: Master tasks.csv holds all state
132
+ 4. **Context Propagation**: prev_context built from master CSV, not from memory
133
+ 5. **Discovery Board is Append-Only**: Never clear, modify, or recreate discoveries.ndjson
134
+ 6. **Skip on Failure**: If all exploration agents failed, planning agent proceeds with available context
135
+ 7. **Cleanup Temp Files**: Remove wave-{N}.csv after results are merged
136
+ 8. **DO NOT STOP**: Continuous execution until all waves complete
137
+ </invariants>
140
138
 
141
- ## Implementation
139
+ <execution>
142
140
 
143
141
  ### Session Initialization
144
142
 
@@ -207,8 +205,6 @@ Bash(`mkdir -p ${sessionFolder}`)
207
205
  Bash(`mkdir -p ${scratchDir}/.task/`)
208
206
  ```
209
207
 
210
- ---
211
-
212
208
  ### Phase 1: Phase Resolution -> CSV
213
209
 
214
210
  **Objective**: Resolve phase, load context, determine exploration angles, generate tasks.csv.
@@ -224,7 +220,7 @@ Bash(`mkdir -p ${scratchDir}/.task/`)
224
220
  - Read spec-ref if `--spec` flag
225
221
  - Read `.workflow/codebase/doc-index.json` if exists
226
222
  - Find design artifacts from `state.json.artifacts[]` (type=brainstorm with ui-designer) for MASTER.md
227
- - Load project specs via `maestro spec load --category planning`
223
+ - Load project specs via `maestro spec load --category arch`
228
224
 
229
225
  3. **Upstream analysis check**:
230
226
  - If `{contextDir}/conclusions.json` exists and has content: reuse as exploration context, skip wave 1
@@ -250,8 +246,6 @@ Bash(`mkdir -p ${scratchDir}/.task/`)
250
246
 
251
247
  **User validation**: Display exploration breakdown (skip if AUTO_YES or `--auto`).
252
248
 
253
- ---
254
-
255
249
  ### Phase 2: Wave Execution Engine
256
250
 
257
251
  **Objective**: Explore codebase then generate plan via spawn_agents_on_csv.
@@ -341,8 +335,6 @@ spawn_agents_on_csv({
341
335
  - If `--gaps`: create fix tasks from gap context, link to issues
342
336
  - If `--collab`: pre-allocate ID ranges for parallel planners
343
337
 
344
- ---
345
-
346
338
  ### Phase 3: Plan Checking + Confirmation
347
339
 
348
340
  **Objective**: Validate plan quality, revise if needed, present to user.
@@ -412,7 +404,7 @@ spawn_agents_on_csv({
412
404
  - `status`: "planned"
413
405
  - `updated_at`: now()
414
406
  - Append history entry: `{ action: "planned", at: <ISO>, by: "maestro-plan", summary: "Linked to TASK-{NNN}" }`
415
- This ensures bidirectional issue TASK traceability for dashboard display.
407
+ This ensures bidirectional issue <-> TASK traceability for dashboard display.
416
408
 
417
409
  6. **Display summary + options** (skip options if AUTO_YES):
418
410
  ```
@@ -429,11 +421,9 @@ spawn_agents_on_csv({
429
421
  Skill({ skill: "maestro-plan", args: "{phase}" }) -- Re-plan with modifications
430
422
  ```
431
423
 
432
- ---
433
-
434
- ## Shared Discovery Board Protocol
424
+ ### Shared Discovery Board Protocol
435
425
 
436
- ### Standard Discovery Types
426
+ #### Standard Discovery Types
437
427
 
438
428
  | Type | Dedup Key | Data Schema | Description |
439
429
  |------|-----------|-------------|-------------|
@@ -443,7 +433,7 @@ spawn_agents_on_csv({
443
433
  | `blocker` | `data.issue` | `{issue, severity, impact}` | Blocking issue found |
444
434
  | `tech_stack` | singleton | `{framework, language, tools[]}` | Technology stack info |
445
435
 
446
- ### Domain Discovery Types
436
+ #### Domain Discovery Types
447
437
 
448
438
  | Type | Dedup Key | Data Schema | Description |
449
439
  |------|-----------|-------------|-------------|
@@ -452,7 +442,7 @@ spawn_agents_on_csv({
452
442
  | `risk_factor` | `data.risk` | `{risk, severity, mitigation, affected_files[]}` | Identified risk |
453
443
  | `test_command` | `data.command` | `{command, scope, framework}` | Test execution command |
454
444
 
455
- ### Protocol
445
+ #### Protocol
456
446
 
457
447
  1. **Read** `{session_folder}/discoveries.ndjson` before own exploration
458
448
  2. **Skip covered**: If discovery of same type + dedup key exists, skip
@@ -463,10 +453,9 @@ spawn_agents_on_csv({
463
453
  ```bash
464
454
  echo '{"ts":"<ISO>","worker":"{id}","type":"existing_pattern","data":{"name":"Result error handling","file":"src/utils/result.ts","description":"All functions return Result<T,E> instead of throwing","usage":"Used in auth, payments, validation modules"}}' >> {session_folder}/discoveries.ndjson
465
455
  ```
456
+ </execution>
466
457
 
467
- ---
468
-
469
- ## Error Handling
458
+ <error_codes>
470
459
 
471
460
  | Error | Resolution |
472
461
  |-------|------------|
@@ -481,16 +470,16 @@ echo '{"ts":"<ISO>","worker":"{id}","type":"existing_pattern","data":{"name":"Re
481
470
  | CSV parse error | Validate format, show line number |
482
471
  | discoveries.ndjson corrupt | Ignore malformed lines |
483
472
  | Continue mode: no session found | List available sessions |
484
-
485
- ---
486
-
487
- ## Core Rules
488
-
489
- 1. **Start Immediately**: First action is session initialization, then Phase 1
490
- 2. **Wave Order is Sacred**: Never execute wave 2 before wave 1 completes and results are merged
491
- 3. **CSV is Source of Truth**: Master tasks.csv holds all state
492
- 4. **Context Propagation**: prev_context built from master CSV, not from memory
493
- 5. **Discovery Board is Append-Only**: Never clear, modify, or recreate discoveries.ndjson
494
- 6. **Skip on Failure**: If all exploration agents failed, planning agent proceeds with available context
495
- 7. **Cleanup Temp Files**: Remove wave-{N}.csv after results are merged
496
- 8. **DO NOT STOP**: Continuous execution until all waves complete
473
+ </error_codes>
474
+
475
+ <success_criteria>
476
+ - [ ] Session folder created with valid tasks.csv
477
+ - [ ] All waves executed in order
478
+ - [ ] plan.json produced in phase directory
479
+ - [ ] .task/TASK-*.json files produced for all tasks
480
+ - [ ] Plan passes quality checks (coverage, deps, criteria)
481
+ - [ ] context.md produced with exploration findings + plan overview
482
+ - [ ] index.json updated with plan metadata
483
+ - [ ] Issues linked (if --gaps mode)
484
+ - [ ] discoveries.ndjson append-only throughout
485
+ </success_criteria>