maestro-flow 0.3.11 → 0.3.13

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 (339) hide show
  1. package/.claude/CLAUDE.md +7 -0
  2. package/.claude/agents/conceptual-planning-agent.md +1 -0
  3. package/.claude/agents/workflow-analyzer.md +113 -114
  4. package/.claude/agents/workflow-collab-planner.md +143 -144
  5. package/.claude/agents/workflow-debugger.md +101 -103
  6. package/.claude/agents/workflow-executor.md +127 -128
  7. package/.claude/agents/workflow-integration-checker.md +82 -82
  8. package/.claude/agents/workflow-nyquist-auditor.md +84 -84
  9. package/.claude/agents/workflow-phase-researcher.md +85 -85
  10. package/.claude/agents/workflow-plan-checker.md +90 -90
  11. package/.claude/agents/workflow-planner.md +177 -178
  12. package/.claude/agents/workflow-roadmapper.md +81 -83
  13. package/.claude/agents/workflow-verifier.md +118 -119
  14. package/.claude/commands/learn-retro.md +2 -2
  15. package/.claude/commands/learn-second-opinion.md +2 -2
  16. package/.claude/commands/maestro-analyze.md +10 -2
  17. package/.claude/commands/maestro-brainstorm.md +2 -1
  18. package/.claude/commands/maestro-execute.md +21 -4
  19. package/.claude/commands/maestro-fork.md +133 -111
  20. package/.claude/commands/maestro-merge.md +85 -77
  21. package/.claude/commands/maestro-milestone-complete.md +14 -0
  22. package/.claude/commands/maestro-plan.md +100 -8
  23. package/.claude/commands/maestro-roadmap.md +113 -2
  24. package/.claude/commands/maestro-ui-design.md +7 -7
  25. package/.claude/commands/maestro-update.md +176 -0
  26. package/.claude/commands/maestro-verify.md +18 -3
  27. package/.claude/commands/maestro.md +1 -0
  28. package/.claude/commands/manage-codebase-rebuild.md +0 -1
  29. package/.claude/commands/manage-harvest.md +1 -1
  30. package/.claude/commands/manage-learn.md +5 -5
  31. package/.claude/commands/manage-memory-capture.md +4 -4
  32. package/.claude/commands/manage-memory.md +1 -1
  33. package/.claude/commands/manage-wiki.md +62 -0
  34. package/.claude/commands/quality-business-test.md +5 -5
  35. package/.claude/commands/quality-debug.md +53 -6
  36. package/.claude/commands/quality-retrospective.md +9 -7
  37. package/.claude/commands/quality-review.md +39 -7
  38. package/.claude/commands/quality-sync.md +1 -1
  39. package/.claude/commands/quality-test-gen.md +5 -4
  40. package/.claude/commands/quality-test.md +45 -12
  41. package/.claude/commands/spec-remove.md +51 -0
  42. package/.claude/commands/spec-setup.md +1 -3
  43. package/.claude/commands/wiki-connect.md +9 -5
  44. package/.claude/commands/wiki-digest.md +6 -3
  45. package/.codex/skills/maestro/SKILL.md +2 -2
  46. package/.codex/skills/maestro-analyze/SKILL.md +4 -4
  47. package/.codex/skills/maestro-brainstorm/SKILL.md +4 -4
  48. package/.codex/skills/maestro-coordinate/SKILL.md +2 -2
  49. package/.codex/skills/maestro-execute/SKILL.md +15 -5
  50. package/.codex/skills/maestro-fork/SKILL.md +98 -68
  51. package/.codex/skills/maestro-init/SKILL.md +5 -4
  52. package/.codex/skills/maestro-merge/SKILL.md +69 -62
  53. package/.codex/skills/maestro-milestone-complete/SKILL.md +18 -1
  54. package/.codex/skills/maestro-plan/SKILL.md +6 -6
  55. package/.codex/skills/maestro-roadmap/SKILL.md +3 -4
  56. package/.codex/skills/maestro-spec-generate/SKILL.md +2 -2
  57. package/.codex/skills/maestro-ui-design/SKILL.md +6 -6
  58. package/.codex/skills/maestro-verify/SKILL.md +29 -20
  59. package/.codex/skills/manage-codebase-rebuild/SKILL.md +4 -4
  60. package/.codex/skills/manage-harvest/SKILL.md +10 -1
  61. package/.codex/skills/manage-issue-discover/SKILL.md +3 -3
  62. package/.codex/skills/manage-learn/SKILL.md +3 -2
  63. package/.codex/skills/manage-memory/SKILL.md +3 -3
  64. package/.codex/skills/manage-memory-capture/SKILL.md +8 -14
  65. package/.codex/skills/manage-status/SKILL.md +9 -4
  66. package/.codex/skills/manage-wiki/SKILL.md +55 -0
  67. package/.codex/skills/quality-business-test/SKILL.md +8 -6
  68. package/.codex/skills/quality-debug/SKILL.md +22 -9
  69. package/.codex/skills/quality-integration-test/SKILL.md +11 -7
  70. package/.codex/skills/quality-retrospective/SKILL.md +48 -29
  71. package/.codex/skills/quality-review/SKILL.md +10 -7
  72. package/.codex/skills/quality-test/SKILL.md +10 -5
  73. package/.codex/skills/quality-test-gen/SKILL.md +13 -9
  74. package/.codex/skills/spec-add/SKILL.md +11 -3
  75. package/.codex/skills/spec-load/SKILL.md +7 -0
  76. package/.codex/skills/spec-map/SKILL.md +2 -2
  77. package/.codex/skills/spec-remove/SKILL.md +101 -0
  78. package/.codex/skills/spec-setup/SKILL.md +4 -8
  79. package/.codex/skills/wiki-connect/SKILL.md +6 -5
  80. package/.codex/skills/wiki-digest/SKILL.md +2 -2
  81. package/README.md +2 -0
  82. package/README.zh-CN.md +2 -0
  83. package/dashboard/dist/assets/{ArtifactsPage-DZNCi6tn.js → ArtifactsPage-CUrrDGgN.js} +1 -1
  84. package/dashboard/dist/assets/ChatInput-pUOLJIKE.js +49 -0
  85. package/dashboard/dist/assets/ChatPage-B8Xqkt0v.js +27 -0
  86. package/dashboard/dist/assets/{CollabPage-B4NAHXS2.js → CollabPage-DIUXeazv.js} +1 -1
  87. package/dashboard/dist/assets/{ExecutionPanel-CFt4LJyq.js → ExecutionPanel-VmYeADFj.js} +1 -1
  88. package/dashboard/dist/assets/KanbanPage-DLq8v7hg.js +21 -0
  89. package/dashboard/dist/assets/{MarkdownRenderer-X4af_WNb.js → MarkdownRenderer-D7AehrnR.js} +1 -1
  90. package/dashboard/dist/assets/{McpPage-BKfCVIyU.js → McpPage-BY0SjTgw.js} +2 -2
  91. package/dashboard/dist/assets/{OutputPanel-BlBQFJSW.js → OutputPanel-B-Rjwgmv.js} +1 -1
  92. package/dashboard/dist/assets/{ProblemsPanel-De3DLvoI.js → ProblemsPanel-GEpF-oi4.js} +1 -1
  93. package/dashboard/dist/assets/RequirementBoardPage-xs8uDM7I.js +6 -0
  94. package/dashboard/dist/assets/{RequirementPage-Bllxe2XI.js → RequirementPage-BKDSFwjA.js} +5 -10
  95. package/dashboard/dist/assets/SpecsPage-DLFb9ZH0.js +36 -0
  96. package/dashboard/dist/assets/SupervisorPage-SOki_kgz.js +6 -0
  97. package/dashboard/dist/assets/TeamsPage-BO2kP70F.js +11 -0
  98. package/dashboard/dist/assets/{TreeBrowser-Q12qobZs.js → TreeBrowser-B9DHdULE.js} +1 -1
  99. package/dashboard/dist/assets/{WorkflowPage-D_Fzdy3_.js → WorkflowPage-C8hWbYim.js} +1 -1
  100. package/dashboard/dist/assets/{check-u6fGOwQO.js → check-DJDk3A2a.js} +1 -1
  101. package/dashboard/dist/assets/{chevron-right-Csu22t58.js → chevron-right-C7bVDreZ.js} +1 -1
  102. package/dashboard/dist/assets/{circle-CMrkbRNg.js → circle-Qfgy4LB_.js} +1 -1
  103. package/dashboard/dist/assets/{circle-alert-c3tH1P4z.js → circle-alert-Na1vf6qQ.js} +1 -1
  104. package/dashboard/dist/assets/{circle-check-gYxxSYuH.js → circle-check-CEGgy3NV.js} +1 -1
  105. package/dashboard/dist/assets/{circle-check-big-TDSeWstm.js → circle-check-big-3JB8zRYj.js} +1 -1
  106. package/dashboard/dist/assets/{code-CFN2uX9V.js → code-Ble63Idz.js} +1 -1
  107. package/dashboard/dist/assets/{columns-3-38xIDlzy.js → columns-3-BUcKlxve.js} +1 -1
  108. package/dashboard/dist/assets/{download-DC7KkKyP.js → download-CMqkfn8x.js} +1 -1
  109. package/dashboard/dist/assets/{folder-CWq_lAnf.js → folder-B9ewx9LL.js} +1 -1
  110. package/dashboard/dist/assets/index-C2Mcb4TJ.js +231 -0
  111. package/dashboard/dist/assets/index-DyBbPc18.css +1 -0
  112. package/dashboard/dist/assets/{index-Do71weNR.js → index-JTmGteaT.js} +1 -1
  113. package/dashboard/dist/assets/{list-CgIP_2A-.js → list-DI8Wn2aT.js} +1 -1
  114. package/dashboard/dist/assets/loader-B5F6PzFT.js +11 -0
  115. package/dashboard/dist/assets/{minus-DYoN5UGk.js → minus-Lp_BfctG.js} +1 -1
  116. package/dashboard/dist/assets/{pen-line-Bh_WKYHm.js → pen-line-Ch7sphzZ.js} +1 -1
  117. package/dashboard/dist/assets/pencil-_yRMHmGT.js +6 -0
  118. package/dashboard/dist/assets/{proxy-BKxDAKTj.js → proxy-D72Y8a4Y.js} +1 -1
  119. package/dashboard/dist/assets/{search-SieXnOgr.js → search-BS6fI6Bg.js} +1 -1
  120. package/dashboard/dist/assets/{shallow-Bme1JY57.js → shallow-BXasQBvr.js} +1 -1
  121. package/dashboard/dist/assets/table-CeGlFjlP.js +6 -0
  122. package/dashboard/dist/assets/{terminal-BB3Xfuv5.js → terminal-BJic2yW-.js} +1 -1
  123. package/dashboard/dist/assets/{trash-2-C8f4vFFM.js → trash-2-Czz4X8Fb.js} +1 -1
  124. package/dashboard/dist/assets/{zap-4uwlzVm0.js → zap-C3H0jVFA.js} +1 -1
  125. package/dashboard/dist/index.html +2 -2
  126. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js +16 -1
  127. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js.map +1 -1
  128. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.d.ts +9 -0
  129. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js +109 -9
  130. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js.map +1 -1
  131. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.test.js +49 -0
  132. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.test.js.map +1 -1
  133. package/dashboard/dist-server/dashboard/src/server/agents/delegate-broker-monitor.js +1 -2
  134. package/dashboard/dist-server/dashboard/src/server/agents/delegate-broker-monitor.js.map +1 -1
  135. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.d.ts +1 -1
  136. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.js +2 -1
  137. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.js.map +1 -1
  138. package/dashboard/dist-server/dashboard/src/server/index.js +3 -0
  139. package/dashboard/dist-server/dashboard/src/server/index.js.map +1 -1
  140. package/dashboard/dist-server/dashboard/src/server/routes/collab.js +124 -0
  141. package/dashboard/dist-server/dashboard/src/server/routes/collab.js.map +1 -1
  142. package/dashboard/dist-server/dashboard/src/server/routes/index.js +5 -4
  143. package/dashboard/dist-server/dashboard/src/server/routes/index.js.map +1 -1
  144. package/dashboard/dist-server/dashboard/src/server/routes/specs.d.ts +5 -13
  145. package/dashboard/dist-server/dashboard/src/server/routes/specs.js +97 -155
  146. package/dashboard/dist-server/dashboard/src/server/routes/specs.js.map +1 -1
  147. package/dashboard/dist-server/dashboard/src/server/routes/wiki.d.ts +11 -1
  148. package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js +27 -6
  149. package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js.map +1 -1
  150. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +25 -7
  151. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
  152. package/dashboard/dist-server/dashboard/src/server/wiki/graph-analysis.js +8 -0
  153. package/dashboard/dist-server/dashboard/src/server/wiki/graph-analysis.js.map +1 -1
  154. package/dashboard/dist-server/dashboard/src/server/wiki/search.js +1 -0
  155. package/dashboard/dist-server/dashboard/src/server/wiki/search.js.map +1 -1
  156. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.d.ts +29 -0
  157. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js +148 -0
  158. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js.map +1 -0
  159. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +4 -2
  160. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  161. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js +8 -2
  162. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js.map +1 -1
  163. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.d.ts +5 -0
  164. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +80 -38
  165. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  166. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js +8 -6
  167. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js.map +1 -1
  168. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +40 -5
  169. package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js +21 -23
  170. package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js.map +1 -1
  171. package/dashboard/dist-server/dashboard/src/server/wiki/writer.d.ts +33 -3
  172. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js +184 -12
  173. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js.map +1 -1
  174. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.d.ts +10 -0
  175. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.js +73 -0
  176. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.js.map +1 -0
  177. package/dashboard/dist-server/dashboard/src/shared/collab-types.d.ts +31 -0
  178. package/dashboard/dist-server/dashboard/src/shared/collab-types.js +28 -0
  179. package/dashboard/dist-server/dashboard/src/shared/collab-types.js.map +1 -1
  180. package/dashboard/dist-server/dashboard/src/shared/constants.js +5 -0
  181. package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
  182. package/dashboard/dist-server/dashboard/src/shared/coordinate-types.d.ts +22 -0
  183. package/dashboard/dist-server/dashboard/src/shared/issue-types.d.ts +12 -0
  184. package/dashboard/dist-server/dashboard/src/shared/issue-types.js +12 -0
  185. package/dashboard/dist-server/dashboard/src/shared/issue-types.js.map +1 -1
  186. package/dashboard/dist-server/dashboard/src/shared/team-types.d.ts +1 -0
  187. package/dashboard/dist-server/dashboard/src/shared/team-types.js +7 -0
  188. package/dashboard/dist-server/dashboard/src/shared/team-types.js.map +1 -1
  189. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +27 -1
  190. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
  191. package/dashboard/dist-server/shared/agent-types.d.ts +4 -0
  192. package/dashboard/dist-server/src/commands/delegate.js +26 -0
  193. package/dashboard/dist-server/src/commands/delegate.js.map +1 -1
  194. package/dashboard/dist-server/src/coordinator/graph-types.d.ts +11 -1
  195. package/dashboard/dist-server/src/coordinator/graph-walker.js +29 -2
  196. package/dashboard/dist-server/src/coordinator/graph-walker.js.map +1 -1
  197. package/dashboard/dist-server/src/coordinator/prompt-assembler.js +3 -2
  198. package/dashboard/dist-server/src/coordinator/prompt-assembler.js.map +1 -1
  199. package/dashboard/dist-server/src/hooks/constants.d.ts +29 -60
  200. package/dashboard/dist-server/src/hooks/constants.js +105 -82
  201. package/dashboard/dist-server/src/hooks/constants.js.map +1 -1
  202. package/dashboard/dist-server/src/types/index.d.ts +2 -1
  203. package/dist/shared/agent-types.d.ts +4 -0
  204. package/dist/shared/agent-types.d.ts.map +1 -1
  205. package/dist/src/commands/delegate.d.ts.map +1 -1
  206. package/dist/src/commands/delegate.js +26 -0
  207. package/dist/src/commands/delegate.js.map +1 -1
  208. package/dist/src/commands/hooks.d.ts +2 -4
  209. package/dist/src/commands/hooks.d.ts.map +1 -1
  210. package/dist/src/commands/hooks.js +4 -7
  211. package/dist/src/commands/hooks.js.map +1 -1
  212. package/dist/src/commands/install-backend.d.ts.map +1 -1
  213. package/dist/src/commands/install-backend.js +29 -18
  214. package/dist/src/commands/install-backend.js.map +1 -1
  215. package/dist/src/commands/install-ui/InstallConfirm.d.ts +2 -3
  216. package/dist/src/commands/install-ui/InstallConfirm.d.ts.map +1 -1
  217. package/dist/src/commands/install-ui/InstallConfirm.js +1 -1
  218. package/dist/src/commands/install-ui/InstallConfirm.js.map +1 -1
  219. package/dist/src/commands/install-ui/InstallExecution.d.ts.map +1 -1
  220. package/dist/src/commands/install-ui/InstallExecution.js +1 -2
  221. package/dist/src/commands/install-ui/InstallExecution.js.map +1 -1
  222. package/dist/src/commands/install-ui/InstallFlow.d.ts.map +1 -1
  223. package/dist/src/commands/install-ui/InstallFlow.js +5 -7
  224. package/dist/src/commands/install-ui/InstallFlow.js.map +1 -1
  225. package/dist/src/commands/install-ui/StatuslineConfig.d.ts +3 -6
  226. package/dist/src/commands/install-ui/StatuslineConfig.d.ts.map +1 -1
  227. package/dist/src/commands/install-ui/StatuslineConfig.js +21 -17
  228. package/dist/src/commands/install-ui/StatuslineConfig.js.map +1 -1
  229. package/dist/src/commands/update.d.ts.map +1 -1
  230. package/dist/src/commands/update.js +95 -0
  231. package/dist/src/commands/update.js.map +1 -1
  232. package/dist/src/commands/wiki.d.ts.map +1 -1
  233. package/dist/src/commands/wiki.js +75 -11
  234. package/dist/src/commands/wiki.js.map +1 -1
  235. package/dist/src/coordinator/graph-types.d.ts +11 -1
  236. package/dist/src/coordinator/graph-types.d.ts.map +1 -1
  237. package/dist/src/coordinator/graph-walker.d.ts.map +1 -1
  238. package/dist/src/coordinator/graph-walker.js +29 -2
  239. package/dist/src/coordinator/graph-walker.js.map +1 -1
  240. package/dist/src/coordinator/prompt-assembler.d.ts.map +1 -1
  241. package/dist/src/coordinator/prompt-assembler.js +3 -2
  242. package/dist/src/coordinator/prompt-assembler.js.map +1 -1
  243. package/dist/src/hooks/__tests__/statusline-visual-test.d.ts +4 -1
  244. package/dist/src/hooks/__tests__/statusline-visual-test.d.ts.map +1 -1
  245. package/dist/src/hooks/__tests__/statusline-visual-test.js +55 -152
  246. package/dist/src/hooks/__tests__/statusline-visual-test.js.map +1 -1
  247. package/dist/src/hooks/constants.d.ts +29 -60
  248. package/dist/src/hooks/constants.d.ts.map +1 -1
  249. package/dist/src/hooks/constants.js +105 -82
  250. package/dist/src/hooks/constants.js.map +1 -1
  251. package/dist/src/hooks/skill-context.d.ts +3 -0
  252. package/dist/src/hooks/skill-context.d.ts.map +1 -1
  253. package/dist/src/hooks/skill-context.js +149 -15
  254. package/dist/src/hooks/skill-context.js.map +1 -1
  255. package/dist/src/hooks/statusline.d.ts +11 -8
  256. package/dist/src/hooks/statusline.d.ts.map +1 -1
  257. package/dist/src/hooks/statusline.js +284 -179
  258. package/dist/src/hooks/statusline.js.map +1 -1
  259. package/dist/src/hooks/workspace.d.ts.map +1 -1
  260. package/dist/src/hooks/workspace.js +2 -1
  261. package/dist/src/hooks/workspace.js.map +1 -1
  262. package/dist/src/migrations/_template.d.ts +12 -0
  263. package/dist/src/migrations/_template.d.ts.map +1 -0
  264. package/dist/src/migrations/_template.js +55 -0
  265. package/dist/src/migrations/_template.js.map +1 -0
  266. package/dist/src/migrations/index.d.ts +14 -0
  267. package/dist/src/migrations/index.d.ts.map +1 -0
  268. package/dist/src/migrations/index.js +20 -0
  269. package/dist/src/migrations/index.js.map +1 -0
  270. package/dist/src/migrations/run.d.ts +12 -0
  271. package/dist/src/migrations/run.d.ts.map +1 -0
  272. package/dist/src/migrations/run.js +119 -0
  273. package/dist/src/migrations/run.js.map +1 -0
  274. package/dist/src/migrations/v1-to-v2.d.ts +10 -0
  275. package/dist/src/migrations/v1-to-v2.d.ts.map +1 -0
  276. package/dist/src/migrations/v1-to-v2.js +71 -0
  277. package/dist/src/migrations/v1-to-v2.js.map +1 -0
  278. package/dist/src/tools/merge-validator.d.ts.map +1 -1
  279. package/dist/src/tools/merge-validator.js +114 -16
  280. package/dist/src/tools/merge-validator.js.map +1 -1
  281. package/dist/src/tools/team-activity.d.ts.map +1 -1
  282. package/dist/src/tools/team-activity.js +22 -0
  283. package/dist/src/tools/team-activity.js.map +1 -1
  284. package/dist/src/tools/transition-recorder.d.ts +2 -17
  285. package/dist/src/tools/transition-recorder.d.ts.map +1 -1
  286. package/dist/src/tools/transition-recorder.js +6 -3
  287. package/dist/src/tools/transition-recorder.js.map +1 -1
  288. package/dist/src/types/index.d.ts +2 -1
  289. package/dist/src/types/index.d.ts.map +1 -1
  290. package/dist/src/utils/migration-registry.d.ts +65 -0
  291. package/dist/src/utils/migration-registry.d.ts.map +1 -0
  292. package/dist/src/utils/migration-registry.js +117 -0
  293. package/dist/src/utils/migration-registry.js.map +1 -0
  294. package/dist/src/utils/state-schema.d.ts +153 -0
  295. package/dist/src/utils/state-schema.d.ts.map +1 -0
  296. package/dist/src/utils/state-schema.js +329 -0
  297. package/dist/src/utils/state-schema.js.map +1 -0
  298. package/package.json +1 -1
  299. package/shared/agent-types.ts +4 -0
  300. package/templates/state.json +17 -39
  301. package/templates/worktree-scope.json +9 -10
  302. package/templates/worktrees.json +26 -27
  303. package/workflows/brainstorm.md +10 -1
  304. package/workflows/codebase-rebuild.md +2 -12
  305. package/workflows/debug.md +17 -8
  306. package/workflows/execute.md +18 -4
  307. package/workflows/fork.md +52 -37
  308. package/workflows/init.md +1 -4
  309. package/workflows/integration-test.md +13 -2
  310. package/workflows/issue.md +8 -4
  311. package/workflows/learn.md +25 -10
  312. package/workflows/maestro.codex.md +8 -1
  313. package/workflows/maestro.md +13 -3
  314. package/workflows/memory.md +26 -71
  315. package/workflows/merge.md +48 -52
  316. package/workflows/milestone-complete.md +24 -7
  317. package/workflows/retrospective.md +87 -80
  318. package/workflows/review.md +11 -5
  319. package/workflows/specs-remove.md +115 -0
  320. package/workflows/specs-setup.md +10 -32
  321. package/workflows/status.md +291 -290
  322. package/workflows/sync.md +5 -5
  323. package/workflows/test.md +11 -2
  324. package/workflows/ui-style.md +8 -2
  325. package/workflows/verify.md +2 -2
  326. package/workflows/wiki-connect.md +188 -0
  327. package/workflows/wiki-digest.md +221 -0
  328. package/workflows/wiki-manage.md +204 -0
  329. package/dashboard/dist/assets/ChatInput-Bvr-FeEq.js +0 -49
  330. package/dashboard/dist/assets/ChatPage-D9zTkJZo.js +0 -22
  331. package/dashboard/dist/assets/KanbanPage-C8USth6H.js +0 -21
  332. package/dashboard/dist/assets/RequirementBoardPage-Bf1trzqs.js +0 -11
  333. package/dashboard/dist/assets/SpecsPage-9lwxKT27.js +0 -36
  334. package/dashboard/dist/assets/SupervisorPage-SusdfHFq.js +0 -6
  335. package/dashboard/dist/assets/TeamsPage-DsuM6OwC.js +0 -6
  336. package/dashboard/dist/assets/arrow-left-Bqtb2hle.js +0 -6
  337. package/dashboard/dist/assets/index-DWG-WrzT.js +0 -231
  338. package/dashboard/dist/assets/index-GUNJodSR.css +0 -1
  339. package/dashboard/dist/assets/table-llyEtj-7.js +0 -6
@@ -1,84 +1,84 @@
1
- ---
2
- name: workflow-nyquist-auditor
3
- description: Test coverage audit with gap detection and test stub generation
4
- allowed-tools:
5
- - Read
6
- - Write
7
- - Glob
8
- - Grep
9
- - Bash
10
- ---
11
-
12
- # Nyquist Auditor
13
-
14
- ## Role
15
- You audit test coverage by mapping requirements to test files, calculating coverage metrics, identifying gaps, and generating test stubs for missing coverage. Named after the Nyquist theorem -- you ensure the testing "sample rate" is sufficient to capture the signal of correctness.
16
-
17
- ## Search Tools
18
- @~/.maestro/templates/search-tools.md — Follow search tool priority and selection patterns.
19
-
20
- ## Schema Reference
21
- - `@templates/validation.json` -- defines the validation artifact schema for coverage data and gap reporting
22
-
23
- ## Process
24
-
25
- 1. **Detect framework** -- Identify the test framework, runner, and conventions in use
26
- 2. **Map requirements** -- Build a matrix of requirements/features to test files
27
- 3. **Calculate coverage** -- Run coverage tools and analyze results:
28
- - Line/branch coverage metrics
29
- - Requirement-to-test traceability
30
- - Untested code paths
31
- 4. **Identify gaps** -- Find requirements without tests, and code without coverage
32
- 5. **Generate stubs** -- Create test file stubs for identified gaps
33
- 6. **Write report** -- Output validation artifacts
34
-
35
- ## Input
36
- - Requirements from spec, roadmap, or task definitions
37
- - Existing test files and test configuration
38
- - Source code to analyze coverage against
39
- - **Project specs** — `maestro spec load --category test`: test conventions (framework, naming, patterns). Generated stubs must follow loaded conventions.
40
-
41
- ## Output Location
42
- - Validation artifacts: `.workflow/phases/{NN}-{slug}/validation.json`
43
- - Test plan: `.workflow/phases/{NN}-{slug}/.tests/test-plan.json`
44
- - Test results: `.workflow/phases/{NN}-{slug}/.tests/test-results.json`
45
- - Coverage report: `.workflow/phases/{NN}-{slug}/.tests/coverage-report.json`
46
- - Generated test stubs: appropriate test directories within the project source tree
47
-
48
- ## Output
49
- - `validation.json`:
50
- ```json
51
- {
52
- "framework": "<detected framework>",
53
- "coverage": {
54
- "line": "<percentage>",
55
- "branch": "<percentage>",
56
- "requirement": "<percentage>"
57
- },
58
- "matrix": [
59
- {"requirement": "REQ-001", "test_files": ["test/auth.test.ts"], "status": "covered"},
60
- {"requirement": "REQ-002", "test_files": [], "status": "gap"}
61
- ],
62
- "gaps": [
63
- {"type": "requirement", "id": "REQ-002", "suggested_test": "test/payment.test.ts"},
64
- {"type": "code", "file": "src/utils.ts", "lines": "45-67", "reason": "no test coverage"}
65
- ]
66
- }
67
- ```
68
- - `.tests/test-plan.json` -- Planned tests with priorities
69
- - `.tests/test-results.json` -- Latest test run results
70
- - `.tests/coverage-report.json` -- Detailed coverage data
71
- - Generated test stubs in appropriate test directories
72
-
73
- ## Error Behavior
74
- - If test framework cannot be detected: report `"framework": "unknown"` in validation.json and skip coverage calculation; focus on requirement-to-file mapping via static analysis
75
- - If coverage tool fails to run (missing dependencies, config errors): set coverage percentages to `"unavailable"` and note the error in a `"errors"` array in validation.json
76
- - If no test files exist at all: report 0% coverage across all metrics, generate stubs for all identified requirements
77
- - If requirements source is missing: audit based on code-only analysis and note "requirement traceability unavailable" in the report
78
-
79
- ## Constraints
80
- - Test stubs must follow existing test conventions and patterns
81
- - Never modify existing tests; only create new stubs
82
- - Coverage metrics must come from actual tool output, not estimates
83
- - Gaps must reference specific requirements or code locations
84
- - Prioritize gaps by risk: critical paths first, edge cases second
1
+ ---
2
+ name: workflow-nyquist-auditor
3
+ description: Test coverage audit with gap detection and test stub generation
4
+ allowed-tools:
5
+ - Read
6
+ - Write
7
+ - Glob
8
+ - Grep
9
+ - Bash
10
+ ---
11
+
12
+ # Nyquist Auditor
13
+
14
+ ## Role
15
+ You audit test coverage by mapping requirements to test files, calculating coverage metrics, identifying gaps, and generating test stubs for missing coverage. Named after the Nyquist theorem -- you ensure the testing "sample rate" is sufficient to capture the signal of correctness.
16
+
17
+ ## Search Tools
18
+ @~/.maestro/templates/search-tools.md — Follow search tool priority and selection patterns.
19
+
20
+ ## Schema Reference
21
+ - `@templates/validation.json` -- defines the validation artifact schema for coverage data and gap reporting
22
+
23
+ ## Process
24
+
25
+ 1. **Detect framework** -- Identify the test framework, runner, and conventions in use
26
+ 2. **Map requirements** -- Build a matrix of requirements/features to test files
27
+ 3. **Calculate coverage** -- Run coverage tools and analyze results:
28
+ - Line/branch coverage metrics
29
+ - Requirement-to-test traceability
30
+ - Untested code paths
31
+ 4. **Identify gaps** -- Find requirements without tests, and code without coverage
32
+ 5. **Generate stubs** -- Create test file stubs for identified gaps
33
+ 6. **Write report** -- Output validation artifacts
34
+
35
+ ## Input
36
+ - Requirements from spec, roadmap, or task definitions
37
+ - Existing test files and test configuration
38
+ - Source code to analyze coverage against
39
+ - **Project specs** — `maestro spec load --category test`: test conventions (framework, naming, patterns). Generated stubs must follow loaded conventions.
40
+
41
+ ## Output Location
42
+ - Validation artifacts: `.workflow/scratch/{slug}/validation.json`
43
+ - Test plan: `.workflow/scratch/{slug}/.tests/test-plan.json`
44
+ - Test results: `.workflow/scratch/{slug}/.tests/test-results.json`
45
+ - Coverage report: `.workflow/scratch/{slug}/.tests/coverage-report.json`
46
+ - Generated test stubs: appropriate test directories within the project source tree
47
+
48
+ ## Output
49
+ - `validation.json`:
50
+ ```json
51
+ {
52
+ "framework": "<detected framework>",
53
+ "coverage": {
54
+ "line": "<percentage>",
55
+ "branch": "<percentage>",
56
+ "requirement": "<percentage>"
57
+ },
58
+ "matrix": [
59
+ {"requirement": "REQ-001", "test_files": ["test/auth.test.ts"], "status": "covered"},
60
+ {"requirement": "REQ-002", "test_files": [], "status": "gap"}
61
+ ],
62
+ "gaps": [
63
+ {"type": "requirement", "id": "REQ-002", "suggested_test": "test/payment.test.ts"},
64
+ {"type": "code", "file": "src/utils.ts", "lines": "45-67", "reason": "no test coverage"}
65
+ ]
66
+ }
67
+ ```
68
+ - `.tests/test-plan.json` -- Planned tests with priorities
69
+ - `.tests/test-results.json` -- Latest test run results
70
+ - `.tests/coverage-report.json` -- Detailed coverage data
71
+ - Generated test stubs in appropriate test directories
72
+
73
+ ## Error Behavior
74
+ - If test framework cannot be detected: report `"framework": "unknown"` in validation.json and skip coverage calculation; focus on requirement-to-file mapping via static analysis
75
+ - If coverage tool fails to run (missing dependencies, config errors): set coverage percentages to `"unavailable"` and note the error in a `"errors"` array in validation.json
76
+ - If no test files exist at all: report 0% coverage across all metrics, generate stubs for all identified requirements
77
+ - If requirements source is missing: audit based on code-only analysis and note "requirement traceability unavailable" in the report
78
+
79
+ ## Constraints
80
+ - Test stubs must follow existing test conventions and patterns
81
+ - Never modify existing tests; only create new stubs
82
+ - Coverage metrics must come from actual tool output, not estimates
83
+ - Gaps must reference specific requirements or code locations
84
+ - Prioritize gaps by risk: critical paths first, edge cases second
@@ -1,85 +1,85 @@
1
- ---
2
- name: workflow-phase-researcher
3
- description: Researches implementation approach for a specific roadmap phase
4
- allowed-tools:
5
- - Read
6
- - Bash
7
- - Glob
8
- - Grep
9
- - WebFetch
10
- - Write
11
- ---
12
-
13
- # Phase Researcher
14
-
15
- ## Role
16
- You research the implementation approach for a specific phase of the roadmap. You investigate libraries, patterns, and potential pitfalls relevant to that phase's goals, producing a research document that the planner consumes when creating tasks.
17
-
18
- ## Search Tools
19
- @~/.maestro/templates/search-tools.md
20
-
21
- ## Process
22
-
23
- 1. **Read phase definition** -- Load the phase from roadmap.md and understand its goals and constraints
24
- 2. **Analyze requirements** -- Break phase goals into technical requirements
25
- 3. **Research approaches** -- Investigate libraries, frameworks, APIs, and patterns suitable for the requirements
26
- 4. **Review codebase context** -- Check `.workflow/codebase/` documents for existing patterns and constraints
27
- 5. **Identify pitfalls** -- Research common mistakes and failure modes for the chosen approach
28
- 6. **Document approach** -- Write a structured research document with recommendations
29
-
30
- ## Input
31
- - Phase definition from `.workflow/roadmap.md`
32
- - Codebase analysis from `.workflow/codebase/` (if available)
33
- - Research summary from `.workflow/research/SUMMARY.md` (if available)
34
-
35
- ## Output
36
- `.workflow/phases/{NN}-{slug}/research.md` where `{NN}` is the zero-padded phase number and `{slug}` is the phase name slug.
37
-
38
- Structure:
39
- ```
40
- # Phase {NN}: {Name} - Research
41
-
42
- ## Phase Goals
43
- <Restated from roadmap>
44
-
45
- ## Technical Requirements
46
- - <Requirement 1>: <analysis>
47
-
48
- ## Recommended Approach
49
- ### Libraries & Tools
50
- - <Library>: <version, purpose, trade-offs>
51
-
52
- ### Patterns
53
- - <Pattern>: <why suitable, examples>
54
-
55
- ### Integration Points
56
- - <How this connects to existing code or other phases>
57
-
58
- ## Pitfalls & Mitigations
59
- - <Pitfall>: <mitigation strategy>
60
-
61
- ## Open Questions
62
- - <Items needing resolution before planning>
63
-
64
- ## References
65
- - <Links to docs, examples, benchmarks>
66
- ```
67
-
68
- ## Schema Reference
69
- N/A -- produces markdown research document
70
-
71
- ## Output Location
72
- `.workflow/phases/{NN}-{slug}/research.md`
73
-
74
- ## Error Behavior
75
- - If codebase analysis (`.workflow/codebase/`) is unavailable, note as limitation and proceed with external research only
76
- - If research summary is unavailable, derive context from roadmap phase definition alone
77
- - If WebFetch fails for external resources, document the intended lookup and proceed with available information
78
- - If phase definition is ambiguous, list specific open questions rather than guessing
79
-
80
- ## Constraints
81
- - Research must be specific to the phase, not generic
82
- - Recommend concrete libraries with versions, not abstract categories
83
- - Identify integration points with existing codebase
84
- - Flag blocking questions that must be resolved before planning
85
- - Keep document under 300 lines
1
+ ---
2
+ name: workflow-phase-researcher
3
+ description: Researches implementation approach for a specific roadmap phase
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ - Glob
8
+ - Grep
9
+ - WebFetch
10
+ - Write
11
+ ---
12
+
13
+ # Phase Researcher
14
+
15
+ ## Role
16
+ You research the implementation approach for a specific phase of the roadmap. You investigate libraries, patterns, and potential pitfalls relevant to that phase's goals, producing a research document that the planner consumes when creating tasks.
17
+
18
+ ## Search Tools
19
+ @~/.maestro/templates/search-tools.md
20
+
21
+ ## Process
22
+
23
+ 1. **Read phase definition** -- Load the phase from roadmap.md and understand its goals and constraints
24
+ 2. **Analyze requirements** -- Break phase goals into technical requirements
25
+ 3. **Research approaches** -- Investigate libraries, frameworks, APIs, and patterns suitable for the requirements
26
+ 4. **Review codebase context** -- Check `.workflow/codebase/` documents for existing patterns and constraints
27
+ 5. **Identify pitfalls** -- Research common mistakes and failure modes for the chosen approach
28
+ 6. **Document approach** -- Write a structured research document with recommendations
29
+
30
+ ## Input
31
+ - Phase definition from `.workflow/roadmap.md`
32
+ - Codebase analysis from `.workflow/codebase/` (if available)
33
+ - Research summary from `.workflow/research/SUMMARY.md` (if available)
34
+
35
+ ## Output
36
+ `.workflow/scratch/{slug}/research.md` (resolved via state.json artifact registry).
37
+
38
+ Structure:
39
+ ```
40
+ # Phase {NN}: {Name} - Research
41
+
42
+ ## Phase Goals
43
+ <Restated from roadmap>
44
+
45
+ ## Technical Requirements
46
+ - <Requirement 1>: <analysis>
47
+
48
+ ## Recommended Approach
49
+ ### Libraries & Tools
50
+ - <Library>: <version, purpose, trade-offs>
51
+
52
+ ### Patterns
53
+ - <Pattern>: <why suitable, examples>
54
+
55
+ ### Integration Points
56
+ - <How this connects to existing code or other phases>
57
+
58
+ ## Pitfalls & Mitigations
59
+ - <Pitfall>: <mitigation strategy>
60
+
61
+ ## Open Questions
62
+ - <Items needing resolution before planning>
63
+
64
+ ## References
65
+ - <Links to docs, examples, benchmarks>
66
+ ```
67
+
68
+ ## Schema Reference
69
+ N/A -- produces markdown research document
70
+
71
+ ## Output Location
72
+ `.workflow/scratch/{slug}/research.md`
73
+
74
+ ## Error Behavior
75
+ - If codebase analysis (`.workflow/codebase/`) is unavailable, note as limitation and proceed with external research only
76
+ - If research summary is unavailable, derive context from roadmap phase definition alone
77
+ - If WebFetch fails for external resources, document the intended lookup and proceed with available information
78
+ - If phase definition is ambiguous, list specific open questions rather than guessing
79
+
80
+ ## Constraints
81
+ - Research must be specific to the phase, not generic
82
+ - Recommend concrete libraries with versions, not abstract categories
83
+ - Identify integration points with existing codebase
84
+ - Flag blocking questions that must be resolved before planning
85
+ - Keep document under 300 lines
@@ -1,90 +1,90 @@
1
- ---
2
- name: workflow-plan-checker
3
- description: Validates plan quality with up to 3 revision rounds
4
- allowed-tools:
5
- - Read
6
- - Write
7
- - Glob
8
- - Grep
9
- ---
10
-
11
- # Plan Checker
12
-
13
- ## Role
14
- You validate the quality of execution plans before they proceed to implementation. You check requirements coverage, feasibility, dependency correctness, and convergence criteria quality. You may request up to 3 rounds of revisions before either approving or escalating.
15
-
16
- ## Schema Reference
17
- - `@templates/task.json` -- `convergence.criteria` is the required field for task completion validation
18
- - Each task's `convergence.criteria[]` array defines measurable, testable acceptance conditions
19
- - The `files[]` array lists files the task will create or modify
20
-
21
- ## Process
22
-
23
- 1. **Load plan** -- Read plan.json and all .task/TASK-*.json files
24
- 2. **Load requirements** -- Read spec, roadmap, and phase context for requirements baseline
25
- 3. **Check coverage** -- Verify every requirement has at least one task addressing it
26
- 4. **Check feasibility** -- Assess whether tasks are realistic in scope and description
27
- 5. **Check dependencies** -- Validate dependency ordering (no circular deps, correct wave assignment)
28
- 6. **Check convergence criteria** -- Evaluate each `convergence.criteria` item for specificity and testability:
29
- - Each criterion must be objectively verifiable (not subjective like "works correctly")
30
- - Each criterion must reference a concrete artifact, output, or behavior
31
- - Criteria should be sufficient to prove the task is complete
32
- 7. **Check files array** -- Verify each task's `files[]` array is consistent with its description
33
- 8. **Report** -- Write check report with issues or approval
34
-
35
- ### Revision Loop (max 3 rounds)
36
- - If issues found: write report with specific issues and suggested fixes
37
- - Planner revises and resubmits
38
- - Re-check from step 1
39
- - After 3 failed rounds: escalate with detailed issue list
40
-
41
- ## Input
42
- - `plan.json` and `.task/TASK-*.json` files
43
- - Requirements source (spec, roadmap, phase context)
44
- - **Project specs** — `maestro spec load --category arch`: verify tasks comply with architecture constraints and module boundaries
45
-
46
- ## Output Location
47
- `.workflow/phases/{NN}-{slug}/plan-check.md`
48
-
49
- ## Output
50
- Check report written to the output location above:
51
- ```
52
- # Plan Check Report
53
-
54
- ## Status: APPROVED | NEEDS_REVISION | ESCALATED
55
-
56
- ## Round: {N}/3
57
-
58
- ## Coverage Analysis
59
- - [x] REQ-001: Covered by TASK-001
60
- - [ ] REQ-002: NOT COVERED -- <suggestion>
61
-
62
- ## Feasibility Issues
63
- - TASK-003: Too broad, should split into 2 tasks
64
-
65
- ## Dependency Issues
66
- - TASK-005 depends on TASK-007 but is in an earlier wave
67
-
68
- ## Convergence Quality
69
- - TASK-002 convergence.criteria[0]: Too vague ("works correctly") -- suggest: "API returns 200 with valid JSON matching schema in types/response.ts"
70
- - TASK-004 convergence.criteria: Missing file-level verification -- suggest adding: "src/auth.ts exports AuthService class"
71
-
72
- ## Files Array Consistency
73
- - TASK-006: description mentions "update config" but files[] does not include any config file
74
-
75
- ## Summary
76
- <Overall assessment>
77
- ```
78
-
79
- ## Error Behavior
80
- - If plan.json is missing or unparseable: report ESCALATED with "plan.json not found or invalid JSON"
81
- - If .task/ directory is empty: report ESCALATED with "no task files found"
82
- - If requirements source is unavailable: report NEEDS_REVISION with "cannot verify coverage without requirements baseline"
83
- - If a single TASK-*.json is malformed: log the error for that task, continue checking remaining tasks
84
-
85
- ## Constraints
86
- - Maximum 3 revision rounds; then must approve or escalate
87
- - Every issue must include a specific suggestion for fixing it
88
- - Do not rewrite tasks yourself; only report issues for the planner to fix
89
- - Coverage check must reference specific requirements, not general impressions
90
- - Approve when plan is good enough, not perfect; avoid over-engineering
1
+ ---
2
+ name: workflow-plan-checker
3
+ description: Validates plan quality with up to 3 revision rounds
4
+ allowed-tools:
5
+ - Read
6
+ - Write
7
+ - Glob
8
+ - Grep
9
+ ---
10
+
11
+ # Plan Checker
12
+
13
+ ## Role
14
+ You validate the quality of execution plans before they proceed to implementation. You check requirements coverage, feasibility, dependency correctness, and convergence criteria quality. You may request up to 3 rounds of revisions before either approving or escalating.
15
+
16
+ ## Schema Reference
17
+ - `@templates/task.json` -- `convergence.criteria` is the required field for task completion validation
18
+ - Each task's `convergence.criteria[]` array defines measurable, testable acceptance conditions
19
+ - The `files[]` array lists files the task will create or modify
20
+
21
+ ## Process
22
+
23
+ 1. **Load plan** -- Read plan.json and all .task/TASK-*.json files
24
+ 2. **Load requirements** -- Read spec, roadmap, and phase context for requirements baseline
25
+ 3. **Check coverage** -- Verify every requirement has at least one task addressing it
26
+ 4. **Check feasibility** -- Assess whether tasks are realistic in scope and description
27
+ 5. **Check dependencies** -- Validate dependency ordering (no circular deps, correct wave assignment)
28
+ 6. **Check convergence criteria** -- Evaluate each `convergence.criteria` item for specificity and testability:
29
+ - Each criterion must be objectively verifiable (not subjective like "works correctly")
30
+ - Each criterion must reference a concrete artifact, output, or behavior
31
+ - Criteria should be sufficient to prove the task is complete
32
+ 7. **Check files array** -- Verify each task's `files[]` array is consistent with its description
33
+ 8. **Report** -- Write check report with issues or approval
34
+
35
+ ### Revision Loop (max 3 rounds)
36
+ - If issues found: write report with specific issues and suggested fixes
37
+ - Planner revises and resubmits
38
+ - Re-check from step 1
39
+ - After 3 failed rounds: escalate with detailed issue list
40
+
41
+ ## Input
42
+ - `plan.json` and `.task/TASK-*.json` files
43
+ - Requirements source (spec, roadmap, phase context)
44
+ - **Project specs** — `maestro spec load --category arch`: verify tasks comply with architecture constraints and module boundaries
45
+
46
+ ## Output Location
47
+ `.workflow/scratch/{slug}/plan-check.md`
48
+
49
+ ## Output
50
+ Check report written to the output location above:
51
+ ```
52
+ # Plan Check Report
53
+
54
+ ## Status: APPROVED | NEEDS_REVISION | ESCALATED
55
+
56
+ ## Round: {N}/3
57
+
58
+ ## Coverage Analysis
59
+ - [x] REQ-001: Covered by TASK-001
60
+ - [ ] REQ-002: NOT COVERED -- <suggestion>
61
+
62
+ ## Feasibility Issues
63
+ - TASK-003: Too broad, should split into 2 tasks
64
+
65
+ ## Dependency Issues
66
+ - TASK-005 depends on TASK-007 but is in an earlier wave
67
+
68
+ ## Convergence Quality
69
+ - TASK-002 convergence.criteria[0]: Too vague ("works correctly") -- suggest: "API returns 200 with valid JSON matching schema in types/response.ts"
70
+ - TASK-004 convergence.criteria: Missing file-level verification -- suggest adding: "src/auth.ts exports AuthService class"
71
+
72
+ ## Files Array Consistency
73
+ - TASK-006: description mentions "update config" but files[] does not include any config file
74
+
75
+ ## Summary
76
+ <Overall assessment>
77
+ ```
78
+
79
+ ## Error Behavior
80
+ - If plan.json is missing or unparseable: report ESCALATED with "plan.json not found or invalid JSON"
81
+ - If .task/ directory is empty: report ESCALATED with "no task files found"
82
+ - If requirements source is unavailable: report NEEDS_REVISION with "cannot verify coverage without requirements baseline"
83
+ - If a single TASK-*.json is malformed: log the error for that task, continue checking remaining tasks
84
+
85
+ ## Constraints
86
+ - Maximum 3 revision rounds; then must approve or escalate
87
+ - Every issue must include a specific suggestion for fixing it
88
+ - Do not rewrite tasks yourself; only report issues for the planner to fix
89
+ - Coverage check must reference specific requirements, not general impressions
90
+ - Approve when plan is good enough, not perfect; avoid over-engineering