maestro-flow 0.4.25 → 0.5.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 (399) hide show
  1. package/.agents/skills/learn-follow/SKILL.md +1 -1
  2. package/.agents/skills/learn-investigate/SKILL.md +2 -2
  3. package/.agents/skills/learn-second-opinion/SKILL.md +1 -1
  4. package/.agents/skills/maestro/SKILL.md +6 -3
  5. package/.agents/skills/maestro-analyze/SKILL.md +53 -2
  6. package/.agents/skills/maestro-blueprint/SKILL.md +36 -1
  7. package/.agents/skills/maestro-brainstorm/SKILL.md +40 -1
  8. package/.agents/skills/maestro-collab/SKILL.md +1 -1
  9. package/.agents/skills/maestro-companion/SKILL.md +4 -4
  10. package/.agents/skills/maestro-composer/SKILL.md +1 -1
  11. package/.agents/skills/maestro-execute/SKILL.md +29 -6
  12. package/.agents/skills/maestro-fork/SKILL.md +24 -0
  13. package/.agents/skills/maestro-grill/SKILL.md +38 -1
  14. package/.agents/skills/maestro-help/SKILL.md +5 -6
  15. package/.agents/skills/maestro-help/index/catalog.json +7 -9
  16. package/.agents/skills/maestro-help/phases/02-search-present.md +2 -4
  17. package/.agents/skills/maestro-help/phases/03-workflow-guide.md +7 -8
  18. package/.agents/skills/maestro-impeccable/SKILL.md +13 -0
  19. package/.agents/skills/maestro-init/SKILL.md +11 -0
  20. package/.agents/skills/maestro-merge/SKILL.md +17 -1
  21. package/.agents/skills/maestro-milestone-audit/SKILL.md +34 -2
  22. package/.agents/skills/maestro-milestone-complete/SKILL.md +19 -1
  23. package/.agents/skills/maestro-milestone-release/SKILL.md +18 -0
  24. package/.agents/skills/maestro-next/SKILL.md +8 -9
  25. package/.agents/skills/maestro-overlay/SKILL.md +3 -3
  26. package/.agents/skills/maestro-plan/SKILL.md +21 -3
  27. package/.agents/skills/maestro-quick/SKILL.md +13 -1
  28. package/.agents/skills/maestro-ralph/SKILL.md +18 -20
  29. package/.agents/skills/maestro-ralph-beta/SKILL.md +10 -16
  30. package/.agents/skills/maestro-ralph-execute/SKILL.md +1 -2
  31. package/.agents/skills/maestro-roadmap/SKILL.md +28 -2
  32. package/.agents/skills/maestro-swarm-workflow/SKILL.md +2 -2
  33. package/.agents/skills/maestro-tools-register/SKILL.md +2 -2
  34. package/.agents/skills/maestro-ui-codify/SKILL.md +20 -0
  35. package/.agents/skills/maestro-update/SKILL.md +59 -116
  36. package/.agents/skills/manage-codebase-rebuild/SKILL.md +3 -3
  37. package/.agents/skills/manage-harvest/SKILL.md +1 -1
  38. package/.agents/skills/manage-knowhow/SKILL.md +3 -1
  39. package/.agents/skills/manage-knowhow-capture/SKILL.md +3 -2
  40. package/.agents/skills/manage-wiki/SKILL.md +17 -8
  41. package/.agents/skills/quality-auto-test/SKILL.md +3 -3
  42. package/.agents/skills/quality-debug/SKILL.md +4 -4
  43. package/.agents/skills/quality-refactor/SKILL.md +2 -2
  44. package/.agents/skills/quality-retrospective/SKILL.md +5 -5
  45. package/.agents/skills/quality-review/SKILL.md +4 -4
  46. package/.agents/skills/quality-sync/SKILL.md +1 -0
  47. package/.agents/skills/quality-test/SKILL.md +4 -4
  48. package/.agents/skills/spec-add/SKILL.md +6 -4
  49. package/.agents/skills/spec-setup/SKILL.md +1 -1
  50. package/.agy/skills/learn-follow/SKILL.md +1 -1
  51. package/.agy/skills/learn-investigate/SKILL.md +2 -2
  52. package/.agy/skills/learn-second-opinion/SKILL.md +1 -1
  53. package/.agy/skills/maestro/SKILL.md +6 -3
  54. package/.agy/skills/maestro-analyze/SKILL.md +53 -2
  55. package/.agy/skills/maestro-blueprint/SKILL.md +36 -1
  56. package/.agy/skills/maestro-brainstorm/SKILL.md +40 -1
  57. package/.agy/skills/maestro-collab/SKILL.md +1 -1
  58. package/.agy/skills/maestro-companion/SKILL.md +4 -4
  59. package/.agy/skills/maestro-composer/SKILL.md +1 -1
  60. package/.agy/skills/maestro-execute/SKILL.md +29 -6
  61. package/.agy/skills/maestro-fork/SKILL.md +24 -0
  62. package/.agy/skills/maestro-grill/SKILL.md +38 -1
  63. package/.agy/skills/maestro-help/SKILL.md +5 -6
  64. package/.agy/skills/maestro-help/index/catalog.json +7 -9
  65. package/.agy/skills/maestro-help/phases/02-search-present.md +2 -4
  66. package/.agy/skills/maestro-help/phases/03-workflow-guide.md +7 -8
  67. package/.agy/skills/maestro-impeccable/SKILL.md +13 -0
  68. package/.agy/skills/maestro-init/SKILL.md +11 -0
  69. package/.agy/skills/maestro-merge/SKILL.md +17 -1
  70. package/.agy/skills/maestro-milestone-audit/SKILL.md +34 -2
  71. package/.agy/skills/maestro-milestone-complete/SKILL.md +19 -1
  72. package/.agy/skills/maestro-milestone-release/SKILL.md +18 -0
  73. package/.agy/skills/maestro-next/SKILL.md +8 -9
  74. package/.agy/skills/maestro-overlay/SKILL.md +3 -3
  75. package/.agy/skills/maestro-plan/SKILL.md +21 -3
  76. package/.agy/skills/maestro-quick/SKILL.md +13 -1
  77. package/.agy/skills/maestro-ralph/SKILL.md +18 -20
  78. package/.agy/skills/maestro-ralph-beta/SKILL.md +10 -16
  79. package/.agy/skills/maestro-ralph-execute/SKILL.md +1 -2
  80. package/.agy/skills/maestro-roadmap/SKILL.md +28 -2
  81. package/.agy/skills/maestro-swarm-workflow/SKILL.md +2 -2
  82. package/.agy/skills/maestro-tools-register/SKILL.md +2 -2
  83. package/.agy/skills/maestro-ui-codify/SKILL.md +20 -0
  84. package/.agy/skills/maestro-update/SKILL.md +59 -116
  85. package/.agy/skills/manage-codebase-rebuild/SKILL.md +3 -3
  86. package/.agy/skills/manage-harvest/SKILL.md +1 -1
  87. package/.agy/skills/manage-knowhow/SKILL.md +3 -1
  88. package/.agy/skills/manage-knowhow-capture/SKILL.md +3 -2
  89. package/.agy/skills/manage-wiki/SKILL.md +17 -8
  90. package/.agy/skills/quality-auto-test/SKILL.md +3 -3
  91. package/.agy/skills/quality-debug/SKILL.md +4 -4
  92. package/.agy/skills/quality-refactor/SKILL.md +2 -2
  93. package/.agy/skills/quality-retrospective/SKILL.md +5 -5
  94. package/.agy/skills/quality-review/SKILL.md +4 -4
  95. package/.agy/skills/quality-sync/SKILL.md +1 -0
  96. package/.agy/skills/quality-test/SKILL.md +4 -4
  97. package/.agy/skills/spec-add/SKILL.md +6 -4
  98. package/.agy/skills/spec-setup/SKILL.md +1 -1
  99. package/.claude/commands/learn-follow.md +1 -1
  100. package/.claude/commands/learn-investigate.md +2 -2
  101. package/.claude/commands/learn-second-opinion.md +1 -1
  102. package/.claude/commands/maestro-analyze.md +53 -2
  103. package/.claude/commands/maestro-blueprint.md +36 -1
  104. package/.claude/commands/maestro-brainstorm.md +40 -1
  105. package/.claude/commands/maestro-collab.md +1 -1
  106. package/.claude/commands/maestro-companion.md +4 -4
  107. package/.claude/commands/maestro-composer.md +1 -1
  108. package/.claude/commands/maestro-execute.md +29 -6
  109. package/.claude/commands/maestro-fork.md +24 -0
  110. package/.claude/commands/maestro-grill.md +38 -1
  111. package/.claude/commands/maestro-impeccable.md +13 -0
  112. package/.claude/commands/maestro-init.md +11 -0
  113. package/.claude/commands/maestro-merge.md +17 -1
  114. package/.claude/commands/maestro-milestone-audit.md +34 -2
  115. package/.claude/commands/maestro-milestone-complete.md +19 -1
  116. package/.claude/commands/maestro-milestone-release.md +18 -0
  117. package/.claude/commands/maestro-next.md +8 -9
  118. package/.claude/commands/maestro-overlay.md +3 -3
  119. package/.claude/commands/maestro-plan.md +21 -3
  120. package/.claude/commands/maestro-quick.md +13 -1
  121. package/.claude/commands/maestro-ralph-beta.md +8 -14
  122. package/.claude/commands/maestro-ralph-execute.md +1 -2
  123. package/.claude/commands/maestro-ralph.md +18 -20
  124. package/.claude/commands/maestro-roadmap.md +28 -2
  125. package/.claude/commands/maestro-swarm-workflow.md +2 -2
  126. package/.claude/commands/maestro-tools-register.md +2 -2
  127. package/.claude/commands/maestro-ui-codify.md +20 -0
  128. package/.claude/commands/maestro-update.md +59 -116
  129. package/.claude/commands/maestro.md +6 -3
  130. package/.claude/commands/manage-codebase-rebuild.md +3 -3
  131. package/.claude/commands/manage-harvest.md +1 -1
  132. package/.claude/commands/manage-knowhow-capture.md +3 -2
  133. package/.claude/commands/manage-knowhow.md +3 -1
  134. package/.claude/commands/manage-wiki.md +17 -8
  135. package/.claude/commands/quality-auto-test.md +3 -3
  136. package/.claude/commands/quality-debug.md +4 -4
  137. package/.claude/commands/quality-refactor.md +2 -2
  138. package/.claude/commands/quality-retrospective.md +5 -5
  139. package/.claude/commands/quality-review.md +4 -4
  140. package/.claude/commands/quality-sync.md +1 -0
  141. package/.claude/commands/quality-test.md +4 -4
  142. package/.claude/commands/spec-add.md +6 -4
  143. package/.claude/commands/spec-setup.md +1 -1
  144. package/.claude/skills/maestro-help/SKILL.md +5 -6
  145. package/.claude/skills/maestro-help/index/catalog.json +7 -9
  146. package/.claude/skills/maestro-help/phases/02-search-present.md +2 -4
  147. package/.claude/skills/maestro-help/phases/03-workflow-guide.md +7 -8
  148. package/.codex/skills/codify-to-knowhow/SKILL.md +5 -4
  149. package/.codex/skills/learn-decompose/SKILL.md +1 -1
  150. package/.codex/skills/learn-follow/SKILL.md +1 -1
  151. package/.codex/skills/learn-investigate/SKILL.md +1 -1
  152. package/.codex/skills/learn-second-opinion/SKILL.md +2 -2
  153. package/.codex/skills/maestro/SKILL.md +29 -31
  154. package/.codex/skills/maestro-analyze/SKILL.md +16 -3
  155. package/.codex/skills/maestro-blueprint/SKILL.md +8 -1
  156. package/.codex/skills/maestro-brainstorm/SKILL.md +8 -5
  157. package/.codex/skills/maestro-companion/SKILL.md +2 -2
  158. package/.codex/skills/maestro-composer/SKILL.md +0 -1
  159. package/.codex/skills/maestro-execute/SKILL.md +11 -8
  160. package/.codex/skills/maestro-fork/SKILL.md +4 -0
  161. package/.codex/skills/maestro-grill/SKILL.md +8 -2
  162. package/.codex/skills/maestro-help/SKILL.md +6 -9
  163. package/.codex/skills/maestro-help/catalog.json +6 -8
  164. package/.codex/skills/maestro-impeccable/SKILL.md +2 -0
  165. package/.codex/skills/maestro-init/SKILL.md +3 -0
  166. package/.codex/skills/maestro-merge/SKILL.md +5 -1
  167. package/.codex/skills/maestro-milestone-audit/SKILL.md +14 -9
  168. package/.codex/skills/maestro-milestone-complete/SKILL.md +6 -1
  169. package/.codex/skills/maestro-milestone-release/SKILL.md +4 -0
  170. package/.codex/skills/maestro-next/SKILL.md +3 -4
  171. package/.codex/skills/maestro-plan/SKILL.md +5 -2
  172. package/.codex/skills/maestro-quick/SKILL.md +4 -1
  173. package/.codex/skills/maestro-ralph/SKILL.md +14 -20
  174. package/.codex/skills/maestro-ralph-beta/SKILL.md +13 -21
  175. package/.codex/skills/maestro-ralph-execute/SKILL.md +2 -2
  176. package/.codex/skills/maestro-roadmap/SKILL.md +5 -2
  177. package/.codex/skills/maestro-tools-register/SKILL.md +1 -1
  178. package/.codex/skills/maestro-ui-codify/SKILL.md +7 -4
  179. package/.codex/skills/maestro-update/SKILL.md +35 -130
  180. package/.codex/skills/manage-codebase-rebuild/SKILL.md +2 -2
  181. package/.codex/skills/manage-harvest/SKILL.md +2 -2
  182. package/.codex/skills/manage-knowhow/SKILL.md +1 -1
  183. package/.codex/skills/manage-status/SKILL.md +1 -2
  184. package/.codex/skills/quality-auto-test/SKILL.md +2 -2
  185. package/.codex/skills/quality-debug/SKILL.md +33 -27
  186. package/.codex/skills/quality-refactor/SKILL.md +1 -1
  187. package/.codex/skills/quality-retrospective/SKILL.md +1 -1
  188. package/.codex/skills/quality-test/SKILL.md +3 -4
  189. package/.codex/skills/security-audit/SKILL.md +17 -1
  190. package/.codex/skills/spec-add/SKILL.md +5 -3
  191. package/.codex/skills/spec-remove/SKILL.md +2 -2
  192. package/.codex/skills/team-coordinate/SKILL.md +1 -1
  193. package/.codex/skills/team-review/SKILL.md +2 -2
  194. package/.codex/skills/wiki-digest/SKILL.md +2 -2
  195. package/chains/brainstorm-driven.json +2 -34
  196. package/chains/full-lifecycle.json +2 -34
  197. package/chains/next-milestone.json +0 -7
  198. package/chains/quality-loop.json +3 -19
  199. package/chains/roadmap-driven.json +2 -34
  200. package/chains/spec-driven.json +2 -34
  201. package/chains/ui-craft-build.json +2 -23
  202. package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.js +9 -1
  203. package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.js.map +1 -1
  204. package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.test.d.ts +1 -0
  205. package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.test.js +346 -0
  206. package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.test.js.map +1 -0
  207. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js +8 -11
  208. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js.map +1 -1
  209. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.d.ts +1 -0
  210. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js +3 -1
  211. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js.map +1 -1
  212. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +1 -0
  213. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  214. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js +9 -0
  215. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js.map +1 -1
  216. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +9 -4
  217. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  218. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +3 -0
  219. package/dashboard/dist-server/dashboard/src/server/wiki/writer.d.ts +4 -0
  220. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js +5 -3
  221. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js.map +1 -1
  222. package/dashboard/dist-server/src/types/index.d.ts +2 -0
  223. package/dist/src/agents/cli-agent-runner.d.ts +2 -0
  224. package/dist/src/agents/cli-agent-runner.d.ts.map +1 -1
  225. package/dist/src/agents/cli-agent-runner.js +3 -0
  226. package/dist/src/agents/cli-agent-runner.js.map +1 -1
  227. package/dist/src/cli.js +1 -0
  228. package/dist/src/cli.js.map +1 -1
  229. package/dist/src/commands/delegate.d.ts +2 -0
  230. package/dist/src/commands/delegate.d.ts.map +1 -1
  231. package/dist/src/commands/delegate.js +3 -1
  232. package/dist/src/commands/delegate.js.map +1 -1
  233. package/dist/src/commands/hooks.d.ts.map +1 -1
  234. package/dist/src/commands/hooks.js +55 -5
  235. package/dist/src/commands/hooks.js.map +1 -1
  236. package/dist/src/commands/install-backend.d.ts.map +1 -1
  237. package/dist/src/commands/install-backend.js +2 -1
  238. package/dist/src/commands/install-backend.js.map +1 -1
  239. package/dist/src/commands/install.d.ts.map +1 -1
  240. package/dist/src/commands/install.js +16 -1
  241. package/dist/src/commands/install.js.map +1 -1
  242. package/dist/src/commands/kg.d.ts +1 -1
  243. package/dist/src/commands/kg.d.ts.map +1 -1
  244. package/dist/src/commands/kg.js +285 -112
  245. package/dist/src/commands/kg.js.map +1 -1
  246. package/dist/src/commands/knowhow.d.ts.map +1 -1
  247. package/dist/src/commands/knowhow.js +28 -37
  248. package/dist/src/commands/knowhow.js.map +1 -1
  249. package/dist/src/commands/ralph.js +1 -1
  250. package/dist/src/commands/ralph.js.map +1 -1
  251. package/dist/src/commands/search.d.ts +36 -0
  252. package/dist/src/commands/search.d.ts.map +1 -0
  253. package/dist/src/commands/search.js +120 -0
  254. package/dist/src/commands/search.js.map +1 -0
  255. package/dist/src/commands/spec.d.ts.map +1 -1
  256. package/dist/src/commands/spec.js +59 -8
  257. package/dist/src/commands/spec.js.map +1 -1
  258. package/dist/src/commands/update.d.ts.map +1 -1
  259. package/dist/src/commands/update.js +7 -0
  260. package/dist/src/commands/update.js.map +1 -1
  261. package/dist/src/commands/wiki.d.ts.map +1 -1
  262. package/dist/src/commands/wiki.js +36 -9
  263. package/dist/src/commands/wiki.js.map +1 -1
  264. package/dist/src/config/cli-tools-config.d.ts +18 -0
  265. package/dist/src/config/cli-tools-config.d.ts.map +1 -1
  266. package/dist/src/config/cli-tools-config.js +31 -0
  267. package/dist/src/config/cli-tools-config.js.map +1 -1
  268. package/dist/src/core/component-defs.d.ts +13 -0
  269. package/dist/src/core/component-defs.d.ts.map +1 -1
  270. package/dist/src/core/component-defs.js +37 -85
  271. package/dist/src/core/component-defs.js.map +1 -1
  272. package/dist/src/core/skill-converter.d.ts +25 -0
  273. package/dist/src/core/skill-converter.d.ts.map +1 -0
  274. package/dist/src/core/skill-converter.js +605 -0
  275. package/dist/src/core/skill-converter.js.map +1 -0
  276. package/dist/src/graph/codegraph-adapter.d.ts +147 -0
  277. package/dist/src/graph/codegraph-adapter.d.ts.map +1 -0
  278. package/dist/src/graph/codegraph-adapter.js +266 -0
  279. package/dist/src/graph/codegraph-adapter.js.map +1 -0
  280. package/dist/src/hooks/constants.d.ts +4 -0
  281. package/dist/src/hooks/constants.d.ts.map +1 -1
  282. package/dist/src/hooks/constants.js +14 -1
  283. package/dist/src/hooks/constants.js.map +1 -1
  284. package/dist/src/hooks/context-format.d.ts +46 -0
  285. package/dist/src/hooks/context-format.d.ts.map +1 -0
  286. package/dist/src/hooks/context-format.js +58 -0
  287. package/dist/src/hooks/context-format.js.map +1 -0
  288. package/dist/src/hooks/index.d.ts +2 -0
  289. package/dist/src/hooks/index.d.ts.map +1 -1
  290. package/dist/src/hooks/index.js +2 -0
  291. package/dist/src/hooks/index.js.map +1 -1
  292. package/dist/src/hooks/keyword-spec-injector.d.ts +1 -1
  293. package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -1
  294. package/dist/src/hooks/keyword-spec-injector.js +92 -7
  295. package/dist/src/hooks/keyword-spec-injector.js.map +1 -1
  296. package/dist/src/hooks/kg-context-injector.d.ts +19 -0
  297. package/dist/src/hooks/kg-context-injector.d.ts.map +1 -0
  298. package/dist/src/hooks/kg-context-injector.js +139 -0
  299. package/dist/src/hooks/kg-context-injector.js.map +1 -0
  300. package/dist/src/hooks/kg-sync-hook.d.ts +22 -0
  301. package/dist/src/hooks/kg-sync-hook.d.ts.map +1 -0
  302. package/dist/src/hooks/kg-sync-hook.js +139 -0
  303. package/dist/src/hooks/kg-sync-hook.js.map +1 -0
  304. package/dist/src/hooks/plugins/spec-injection-plugin.js +2 -2
  305. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  306. package/dist/src/hooks/skill-context.d.ts.map +1 -1
  307. package/dist/src/hooks/skill-context.js +0 -1
  308. package/dist/src/hooks/skill-context.js.map +1 -1
  309. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  310. package/dist/src/hooks/spec-injector.js +66 -13
  311. package/dist/src/hooks/spec-injector.js.map +1 -1
  312. package/dist/src/hooks/statusline.d.ts +8 -1
  313. package/dist/src/hooks/statusline.d.ts.map +1 -1
  314. package/dist/src/hooks/statusline.js +45 -29
  315. package/dist/src/hooks/statusline.js.map +1 -1
  316. package/dist/src/hooks/wiki-role-loader.js +1 -1
  317. package/dist/src/hooks/wiki-role-loader.js.map +1 -1
  318. package/dist/src/ralph/cmd-skills.d.ts.map +1 -1
  319. package/dist/src/ralph/cmd-skills.js +9 -2
  320. package/dist/src/ralph/cmd-skills.js.map +1 -1
  321. package/dist/src/ralph/skill-scanner.d.ts +1 -1
  322. package/dist/src/ralph/skill-scanner.d.ts.map +1 -1
  323. package/dist/src/ralph/skill-scanner.js +14 -0
  324. package/dist/src/ralph/skill-scanner.js.map +1 -1
  325. package/dist/src/ralph/status-schema.d.ts +1 -1
  326. package/dist/src/ralph/status-schema.d.ts.map +1 -1
  327. package/dist/src/tools/spec-entry-parser.d.ts +2 -1
  328. package/dist/src/tools/spec-entry-parser.d.ts.map +1 -1
  329. package/dist/src/tools/spec-entry-parser.js +7 -4
  330. package/dist/src/tools/spec-entry-parser.js.map +1 -1
  331. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  332. package/dist/src/tools/spec-loader.js +27 -3
  333. package/dist/src/tools/spec-loader.js.map +1 -1
  334. package/dist/src/tools/spec-writer.d.ts +10 -1
  335. package/dist/src/tools/spec-writer.d.ts.map +1 -1
  336. package/dist/src/tools/spec-writer.js +86 -7
  337. package/dist/src/tools/spec-writer.js.map +1 -1
  338. package/dist/src/tools/store-knowhow.d.ts.map +1 -1
  339. package/dist/src/tools/store-knowhow.js +27 -7
  340. package/dist/src/tools/store-knowhow.js.map +1 -1
  341. package/dist/src/tui/install-ui/ExecutionView.d.ts.map +1 -1
  342. package/dist/src/tui/install-ui/ExecutionView.js +7 -1
  343. package/dist/src/tui/install-ui/ExecutionView.js.map +1 -1
  344. package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -1
  345. package/dist/src/tui/install-ui/InstallExecution.js +5 -1
  346. package/dist/src/tui/install-ui/InstallExecution.js.map +1 -1
  347. package/dist/src/types/index.d.ts +2 -0
  348. package/dist/src/types/index.d.ts.map +1 -1
  349. package/dist/src/utils/cli-format.d.ts +6 -0
  350. package/dist/src/utils/cli-format.d.ts.map +1 -1
  351. package/dist/src/utils/cli-format.js +25 -0
  352. package/dist/src/utils/cli-format.js.map +1 -1
  353. package/dist/src/utils/update-notices.js +29 -0
  354. package/dist/src/utils/update-notices.js.map +1 -1
  355. package/package.json +5 -2
  356. package/templates/workflows/specs/node-catalog.md +0 -2
  357. package/workflows/analyze.md +9 -4
  358. package/workflows/auto-test.md +2 -2
  359. package/workflows/business-test.md +1 -1
  360. package/workflows/claude-instructions.md +23 -11
  361. package/workflows/codex-instructions.md +2 -3
  362. package/workflows/execute.md +153 -7
  363. package/workflows/fork.md +1 -1
  364. package/workflows/integration-test.md +1 -1
  365. package/workflows/maestro-super.md +1 -1
  366. package/workflows/maestro.codex.md +18 -34
  367. package/workflows/maestro.md +34 -42
  368. package/workflows/review.md +1 -1
  369. package/workflows/status.md +2 -2
  370. package/workflows/swarm/wf-verify.js +1 -1
  371. package/workflows/test-gen.md +2 -2
  372. package/workflows/test.md +1 -1
  373. package/workflows/updates/README.md +41 -0
  374. package/workflows/updates/update-v3-setup.md +79 -0
  375. package/workflows/verify.md +7 -1
  376. package/.agents/skills/learn-retro/SKILL.md +0 -159
  377. package/.agents/skills/maestro-learn/SKILL.md +0 -142
  378. package/.agents/skills/maestro-verify/SKILL.md +0 -146
  379. package/.agents/skills/manage-codebase-refresh/SKILL.md +0 -62
  380. package/.agents/skills/manage-learn/SKILL.md +0 -67
  381. package/.agents/skills/wiki-connect/SKILL.md +0 -64
  382. package/.agents/skills/wiki-digest/SKILL.md +0 -70
  383. package/.agy/skills/learn-retro/SKILL.md +0 -159
  384. package/.agy/skills/maestro-learn/SKILL.md +0 -142
  385. package/.agy/skills/maestro-verify/SKILL.md +0 -146
  386. package/.agy/skills/manage-codebase-refresh/SKILL.md +0 -62
  387. package/.agy/skills/manage-learn/SKILL.md +0 -64
  388. package/.agy/skills/wiki-connect/SKILL.md +0 -64
  389. package/.agy/skills/wiki-digest/SKILL.md +0 -70
  390. package/.claude/commands/learn-retro.md +0 -157
  391. package/.claude/commands/maestro-learn.md +0 -140
  392. package/.claude/commands/maestro-verify.md +0 -144
  393. package/.claude/commands/manage-codebase-refresh.md +0 -60
  394. package/.claude/commands/manage-learn.md +0 -65
  395. package/.claude/commands/wiki-connect.md +0 -62
  396. package/.claude/commands/wiki-digest.md +0 -68
  397. package/.codex/skills/maestro-verify/SKILL.md +0 -254
  398. package/chains/execute-verify.json +0 -59
  399. package/chains/singles/verify.json +0 -26
@@ -177,7 +177,7 @@ S_TICK_EXEC: Entry: A_EXEC_STEP
177
177
  → S_HANDLE_FAIL WHEN: ralph complete with NEEDS_RETRY|BLOCKED
178
178
 
179
179
  S_TICK_DECISION: (gate 名取自 `step.decision`)
180
- → S_TICK_APPLY WHEN: quality-gate (post-verify, post-business-test, post-review, post-test)
180
+ → S_TICK_APPLY WHEN: quality-gate (post-execute, post-business-test, post-review, post-test)
181
181
  DO: A_DELEGATE_EVALUATE
182
182
  → S_TICK_APPLY WHEN: goal-gate (post-goal-audit)
183
183
  DO: A_GOAL_AUDIT_EVALUATE
@@ -299,15 +299,12 @@ resolve_milestone(phase_number):
299
299
  | phase 已存在 + 无任何 artifact | `analyze` |
300
300
  | phase 已存在 + 最新 artifact = analyze | `plan` |
301
301
  | phase 已存在 + 最新 artifact = plan | `execute` |
302
- | phase 已存在 + 最新 artifact = execute | `verify` |
303
- | phase 已存在 + 最新 artifact = verify | → refine from result files |
302
+ | phase 已存在 + 最新 artifact = execute | `review` |
304
303
 
305
- **Refine from verify results:**
304
+ **Refine from review results:**
306
305
 
307
306
  | Condition | Position |
308
307
  |-----------|----------|
309
- | verification.json: passed==false or gaps[] | `verify-failed` |
310
- | passed==true, no review.json | `business-test` |
311
308
  | review.json: verdict=="BLOCK" | `review-failed` |
312
309
  | review.json: verdict!="BLOCK" | `test` |
313
310
  | uat.md: all passed | `milestone-audit` |
@@ -332,7 +329,7 @@ resolve_milestone(phase_number):
332
329
 
333
330
  读 `session.quality_mode_override`(CLI `--quality`),无则按规则推断:
334
331
 
335
- | Condition | Mode | Pipeline (verify 之后) |
332
+ | Condition | Mode | Pipeline (execute 之后) |
336
333
  |-----------|------|-------------------------|
337
334
  | Has `specs/REQ-*.md` + 当前 phase 业务范围明确 | `full` | business-test → review → test-gen → test |
338
335
  | Default | `standard` | review → test-gen (当 coverage<80%) → test |
@@ -414,8 +411,7 @@ narrow → derive defaults from intent + codebase, skip questions.
414
411
  | roadmap | `maestro-roadmap --from analyze:{analyze_macro_id}` | *(same)* | — | all |
415
412
  | analyze | `maestro-analyze {phase}` | `maestro-analyze` | — | all |
416
413
  | plan | `maestro-plan {phase}` *(scope=phase)* / `maestro-plan --from analyze:{analyze_macro_id}` *(scope=standalone)* / `maestro-plan --from blueprint:{blueprint_id}` *(scope=standalone)* | `maestro-plan` | — | all |
417
- | execute | `maestro-execute {phase}` | `maestro-execute` | | all |
418
- | verify | `maestro-verify {phase}` | `maestro-verify` | `post-verify` | all |
414
+ | execute | `maestro-execute {phase}` | `maestro-execute` | `post-execute` | all |
419
415
  | business-test | `quality-auto-test {phase}` | `quality-auto-test` | `post-business-test` | full only |
420
416
  | review | `quality-review {phase}` | `quality-review` | `post-review` | all (quick: append `--tier quick`) |
421
417
  | test-gen | `quality-auto-test {phase}` | `quality-auto-test` | — | full / standard if coverage<80% |
@@ -544,7 +540,7 @@ Write enriched args back to status.json.
544
540
  3. Map result files:
545
541
  | Decision | Files |
546
542
  |----------|-------|
547
- | post-verify | verification.json |
543
+ | post-execute | verification.json |
548
544
  | post-business-test | .tests/auto-test/report.json |
549
545
  | post-review | review.json |
550
546
  | post-test | uat.md, .tests/test-results.json |
@@ -717,8 +713,8 @@ Display: `[{index}/{total}] ✗ {step.skill} 失败,会话已暂停。/maestro
717
713
 
718
714
  [✓] 0. maestro-plan 1 [global]
719
715
  [✓] 1. maestro-execute 1 [project]
720
- [✓] 2. maestro-verify 1 [global]
721
- [✓] 3. ◆ post-verify [decision]
716
+ [✓] 2. quality-review 1 [global]
717
+ [✓] 3. ◆ post-review [decision]
722
718
  ...
723
719
  ============================================================
724
720
  ```
@@ -756,7 +752,7 @@ Display: `[{index}/{total}] ✗ {step.skill} 失败,会话已暂停。/maestro
756
752
  "index": 0,
757
753
  "skill": "", // 执行 step 有值;decision 节点为空字符串/null
758
754
  "args": "",
759
- "stage": "", // brainstorm|blueprint|init|analyze-macro|roadmap|analyze|plan|execute|verify|...
755
+ "stage": "", // brainstorm|blueprint|init|analyze-macro|roadmap|analyze|plan|execute|...
760
756
  "scope": null, // "phase"|"standalone"|"milestone"|null(plan 等需要)
761
757
  "decision": null, // null = 执行 step;非 null = decision step (值为 gate 名)
762
758
  "retry_count": 0, // decision step
@@ -793,13 +789,12 @@ Display: `[{index}/{total}] ✗ {step.skill} 失败,会话已暂停。/maestro
793
789
 
794
790
  插入的执行 step 按 A_BUILD_STEPS 规则 9 解析 `command_path` + `command_scope`;`decision:*` 条目为 decision 节点。
795
791
 
796
- **post-verify:**
792
+ **post-execute:**
797
793
  ```
798
794
  quality-debug "{gap_summary}"
799
795
  maestro-plan --gaps {phase}
800
796
  maestro-execute {phase}
801
- maestro-verify {phase}
802
- decision:post-verify {retry+1}
797
+ decision:post-execute {retry+1}
803
798
  ```
804
799
 
805
800
  **post-business-test:**
@@ -807,8 +802,7 @@ decision:post-verify {retry+1}
807
802
  quality-debug --from-business-test "{gap_summary}"
808
803
  maestro-plan --gaps {phase}
809
804
  maestro-execute {phase}
810
- maestro-verify {phase}
811
- decision:post-verify {retry: 0}
805
+ decision:post-execute {retry: 0}
812
806
  quality-auto-test {phase}
813
807
  decision:post-business-test {retry+1}
814
808
  ```
@@ -827,8 +821,7 @@ decision:post-review {retry+1}
827
821
  quality-debug --from-uat "{gap_summary}"
828
822
  maestro-plan --gaps {phase}
829
823
  maestro-execute {phase}
830
- maestro-verify {phase}
831
- decision:post-verify {retry: 0}
824
+ decision:post-execute {retry: 0}
832
825
  quality-auto-test {phase}
833
826
  decision:post-business-test {retry: 0}
834
827
  quality-review {phase}
@@ -843,7 +836,6 @@ decision:post-test {retry+1}
843
836
  # for each unmet sub-goal G{n}, scoped to target_phase:
844
837
  maestro-plan --gaps {target_phase} "G{n}: {gap}" [goal_ref: G{n}]
845
838
  maestro-execute {target_phase} [goal_ref: G{n}]
846
- maestro-verify {target_phase} [goal_ref: G{n}]
847
839
  # after all unmet groups inserted:
848
840
  decision:post-goal-audit {retry+1}
849
841
  ```
@@ -196,8 +196,8 @@ Display: `[{index}/{total}] ✗ {step.skill} 失败,会话已暂停。/maestro
196
196
 
197
197
  [✓] 0. maestro-plan 1 [global]
198
198
  [✓] 1. maestro-execute 1 [project]
199
- [✓] 2. maestro-verify 1 [global]
200
- [✓] 3. ◆ post-verify [decision]
199
+ [✓] 2. quality-review 1 [global]
200
+ [✓] 3. ◆ post-review [decision]
201
201
  ...
202
202
  ============================================================
203
203
  ```
@@ -35,7 +35,7 @@ $ARGUMENTS -- requirement/idea text or @file reference, plus optional flags.
35
35
  Interview the user relentlessly until shared understanding is reached. Active only in interactive mode; skip when `-y/--yes`, `--revise`, `--review`, `-c`, or input is already specific (clear requirement + mode).
36
36
 
37
37
  - One decision per turn via request_user_input with 2–4 options + a (Recommended) default. The user controls termination — keep interviewing until convergence; they can interrupt naturally at any time.
38
- - Search-first when uncertain: before asking, resolve via `state.json`, existing `roadmap.md`, `project.md`, `maestro spec load`, `maestro wiki search`, Glob/Grep/Read, or — for open-ended multi-file scans — `maestro delegate ... --role explore`. Never ask what code or memory can verify; never bounce your own ambiguity back to the user — search first, then ask only what truly needs human judgment.
38
+ - Search-first when uncertain: before asking, resolve via `state.json`, existing `roadmap.md`, `project.md`, `maestro spec load`, `maestro search`, Glob/Grep/Read, or — for open-ended multi-file scans — `maestro delegate ... --role explore`. Never ask what code or memory can verify; never bounce your own ambiguity back to the user — search first, then ask only what truly needs human judgment.
39
39
  - Writeback cadence: each settled decision is immediately appended/updated in the `Roadmap Decisions` section at the top of `.workflow/roadmap.md` (create the section if absent). Do NOT batch writeback to the end — partial decisions must already be on disk before the next question.
40
40
  - Walk the decision dependency tree strictly: mode → requirement scope → decomposition strategy → phase dependencies/order. Do not open the next branch until the current one is settled.
41
41
  - Scope guard: only decide the shape of the roadmap. Do not pre-resolve intra-phase task breakdown — that belongs to `plan`.
@@ -70,7 +70,10 @@ Wave 1: 3 analysis rows (parallel). Wave 2: 1 assembly row.
70
70
  2. **CSV is source of truth**: Master tasks.csv holds all state
71
71
  3. **Context propagation**: prev_context from master CSV, not memory
72
72
  4. **Discovery board append-only**: Never modify/delete discoveries.ndjson
73
- 5. **Graceful degradation**: Wave 1 fails -> Wave 2 proceeds with seed input only
73
+ 5. **Graceful degradation**: Wave 1 fails -> Wave 2 proceeds with seed input only. When degradation activates, flag downstream outputs as LOW CONFIDENCE.
74
+ 6. **Invariant violation = BLOCK** — violating any invariant above blocks the current operation.
75
+ 7. **Requirement mapping completeness** — every Active requirement from project.md MUST be mapped to exactly one phase. No circular dependencies in phase ordering.
76
+ 8. **Artifact verification before completion** — .workflow/roadmap.md MUST exist with Milestone > Phase hierarchy and progress table. Artifact MUST be registered in state.json. If missing: DO NOT report completion.
74
77
  </invariants>
75
78
 
76
79
  <state_machine>
@@ -72,7 +72,7 @@ Parse $ARGUMENTS to determine mode:
72
72
  - Analyze improvement points (step splitting, prerequisites, error handling)
73
73
 
74
74
  **Promote mode** (existing knowhow → tool):
75
- - Locate document: `maestro wiki list --keyword <name>` or by path in `.workflow/knowhow/`
75
+ - Locate document: `maestro search "<name>" --type knowhow` or by path in `.workflow/knowhow/`
76
76
  - Read document, verify it contains actionable steps (numbered list or ## Steps section)
77
77
  - If no actionable steps, suggest extract mode instead
78
78
  - Determine category (Step 3) and summary ("Use when ...")
@@ -90,9 +90,9 @@ id,wave,title,description,agent_type,deps
90
90
  | `agent_type` | Input | Agent type: discover/extract-style/extract-animation/extract-layout/package/knowhow |
91
91
  | `deps` | Input | Semicolon-separated dependency task IDs |
92
92
  | `result_status` | Output | `completed` / `failed` (returned via output_schema) |
93
- | `findings` | Output | Key findings summary (max 500 chars) |
94
- | `output_path` | Output | Path to generated artifact |
95
- | `error` | Output | Error message if failed |
93
+ | `findings` | Output | Key findings summary (max 500 chars, via output_schema) |
94
+ | `output_path` | Output | Path to generated artifact (via output_schema) |
95
+ | `error` | Output | Error message if failed (via output_schema) |
96
96
 
97
97
  ### Session Structure
98
98
 
@@ -115,6 +115,9 @@ id,wave,title,description,agent_type,deps
115
115
  6. **Idempotent Package**: --overwrite required to replace existing package directory
116
116
  7. **Cleanup Temp Files**: Remove wave-{N}.csv after results merged, remove temp workspace after Wave 4
117
117
  8. **DO NOT STOP**: Continuous execution until all waves complete
118
+
119
+ ### Artifact Verification
120
+ Before reporting completion, verify: design-tokens.json, layout-templates.json, preview.html, preview.css, knowhow-manifest.json all exist. If any missing: DO NOT report completion.
118
121
  </invariants>
119
122
 
120
123
  <execution>
@@ -392,7 +395,7 @@ Open preview:
392
395
  file://{absolute_path}/preview.html
393
396
 
394
397
  Next steps:
395
- maestro wiki list --category coding # Browse by role
398
+ maestro search --category coding # Browse by role
396
399
  maestro spec load --keyword {package_name} # Load related specs
397
400
  ```
398
401
 
@@ -1,169 +1,74 @@
1
1
  ---
2
2
  name: maestro-update
3
3
  description: Detect version, preview changes, apply workflow upgrades
4
- argument-hint: "[--dry-run] [--force]"
4
+ argument-hint: "[--dry-run] [--force] [--setup-only]"
5
5
  allowed-tools: Read, Write, Edit, Bash, Glob, Grep, request_user_input
6
6
  ---
7
7
  <purpose>
8
- Detect the current `.workflow/` schema version, show available migrations, and interactively apply them step-by-step. Uses a migration registry that supports incremental version upgrades (e.g., 1.0 → 2.0 → 3.0).
8
+ Version router detect current version, run schema migration to latest, then follow the version-specific smart upgrade workflow.
9
9
 
10
- Each migration step is previewed before execution. The user confirms each step in a loop.
10
+ Migration scripts live in two layers:
11
+ - **Schema** (`src/migrations/`): code-level state.json transforms, auto-chained by registry
12
+ - **Workflow** (`~/.maestro/workflows/updates/`): version-specific upgrade guides with environment setup
13
+
14
+ Schema migrations handle the mechanical version bump. Workflow docs handle the smart part — what the user needs to know, configure, or verify for that version. The router runs schema first, then loads the matching workflow doc.
11
15
  </purpose>
12
16
 
17
+ <required_reading>
18
+ @~/.maestro/workflows/updates/README.md
19
+ </required_reading>
20
+
13
21
  <context>
14
22
  $ARGUMENTS — optional flags.
15
23
 
16
24
  **Flags:**
17
25
  - `--dry-run` -- Preview migration plan without executing
18
- - `--force` -- Skip confirmation prompts (apply all pending migrations)
19
-
20
- **Migration registry:** `src/migrations/`
21
- - Each migration is a standalone file (e.g., `v1-to-v2.ts`) exporting a `MigrationDef`
22
- - All migrations are registered via `src/migrations/index.ts`
23
- - Registry auto-chains: detects current version → walks chain → applies in order
24
- - To add a new migration: create `src/migrations/v{N}-to-v{N+1}.ts`, register in `index.ts`
25
-
26
- **CLI runner:** `src/migrations/run.ts`
27
- - Executable entrypoint: `npx tsx src/migrations/run.ts [root] [--dry-run] [--force] [--json]`
28
- - Outputs JSON (with `--json`) or human-readable text
26
+ - `--force` -- Skip confirmation prompts
27
+ - `--setup-only` -- Skip schema migration, run only the setup for current version
29
28
 
30
- **State version source:** `.workflow/state.json` → `version` field
29
+ **Version source:** `.workflow/state.json` → `version` field
31
30
  </context>
32
31
 
33
32
  <execution>
34
33
 
35
- ### Step 1: Detect Current State
34
+ ### Step 1: Detect Version
36
35
 
37
36
  ```
38
- 1. Read .workflow/state.json
39
- 2. Extract version field (default "1.0" if missing)
40
- 3. Display:
41
-
42
- === Maestro Workflow Update ===
43
- Project: {project_name}
44
- Version: {version}
45
- Location: {.workflow/ path}
37
+ 1. Read .workflow/state.json → extract version (default "1.0" if missing)
38
+ 2. Display current version
46
39
  ```
47
40
 
48
- ### Step 2: Dry-Run Preview
41
+ IF `--setup-only`:
42
+ → Load `~/.maestro/workflows/updates/update-v{version}-setup.md`
43
+ → IF exists: follow completely, then EXIT
44
+ → IF not exists: display "No setup script for v{version}" → EXIT
49
45
 
50
- Run the migration CLI in dry-run + JSON mode to get the full plan:
46
+ ### Step 2: Check for Updates
51
47
 
52
- ```bash
53
- npx tsx src/migrations/run.ts "$(pwd)" --dry-run --json
54
48
  ```
55
-
56
- Parse the JSON output. If status is `up-to-date`:
57
- ```
58
- Already up to date (v{version})
49
+ 1. Run: npx tsx src/migrations/run.ts "$(pwd)" --dry-run --json
50
+ 2. IF up-to-date → offer setup if available → EXIT
51
+ 3. Display target version
59
52
  ```
60
- → EXIT
61
53
 
62
- Otherwise display the migration plan:
63
- ```
64
- Pending Migrations ({N} step(s)):
54
+ IF `--dry-run` EXIT.
65
55
 
66
- 1. [v{from} v{to}] {name}
67
- {description}
56
+ ### Step 3: Execute
68
57
 
69
- 2. [v{from} → v{to}] {name}
70
- {description}
71
58
  ```
72
-
73
- If `--dry-run` flag was passed by user → display plan and EXIT.
74
-
75
- ### Step 3: Interactive Confirmation Loop
76
-
77
- For each migration step (unless `--force`):
78
-
59
+ 1. Confirm (unless --force)
60
+ 2. Backup state.json
61
+ 3. Run schema migration (auto-chains all intermediate steps)
62
+ 4. Load update-v{target}-setup.md follow completely
79
63
  ```
80
- LOOP for step_index = 1 to N:
81
-
82
- Display:
83
- --- Step {step_index}/{N}: {name} ---
84
- Version: v{from} → v{to}
85
-
86
- Changes:
87
- {description, indented}
88
64
 
89
- IF NOT --force:
90
- AskUserQuestion: "Apply this migration?"
91
- Options: [yes / skip / abort]
65
+ ### Step 4: Summary
92
66
 
93
- - "yes" → proceed to Step 4 (execute)
94
- - "skip" → WARN "Skipping may break the migration chain"
95
- continue to next step
96
- - "abort" → display summary of what was applied so far → EXIT
97
-
98
- IF --force:
99
- → proceed to Step 4 (execute)
100
- ```
101
-
102
- ### Step 4: Execute Single Migration
103
-
104
- ```
105
- 1. Create backup:
106
- Bash: cp .workflow/state.json .workflow/state.json.backup-v{from}-{timestamp}
107
-
108
- 2. Run migration:
109
- Bash: npx tsx src/migrations/run.ts "$(pwd)" --json
110
-
111
- NOTE: The runner executes ALL pending migrations. For step-by-step control,
112
- read state.json, call the migration function directly, or use the runner
113
- which stops on first failure.
114
-
115
- 3. Parse result JSON and display:
116
-
117
- {status_icon} Step {N} completed: {name}
118
- Summary: {summary}
119
- Changes:
120
- - {change_1}
121
- - {change_2}
122
- - ...
123
-
124
- 4. If failed:
125
- Display: "Migration failed: {summary}"
126
- Display: "Backup available at: {backup_path}"
127
- Display: "Restore with: cp {backup_path} .workflow/state.json"
128
- → EXIT
129
-
130
- 5. Continue loop to next step
131
- ```
132
-
133
- ### Step 5: Summary
134
-
135
- After all steps completed (or user aborted):
136
-
137
- ```
138
- === Migration Complete ===
139
- Applied: {applied_count} / {total_count} migration(s)
140
- Skipped: {skipped_count}
141
- Version: v{original} → v{final}
142
- Backup: .workflow/state.json.backup-v{original}-{timestamp}
143
-
144
- Next steps:
145
- /manage-status -- Verify project state
146
- /maestro -- Continue workflow
147
- ```
67
+ Display version change, backup path, next steps.
148
68
 
149
69
  </execution>
150
70
 
151
- <error_codes>
152
- | Code | Severity | Condition | Recovery |
153
- |------|----------|-----------|----------|
154
- | E001 | error | .workflow/state.json not found | Run /maestro-init first |
155
- | E002 | error | state.json parse error | Check file for corruption |
156
- | E003 | error | Migration function failed | Restore from backup |
157
- | W001 | warning | Skipped migration may break version chain | Re-run /maestro-update later |
158
- | W002 | warning | tsx not available | Install tsx: npm i -D tsx |
159
- </error_codes>
160
-
161
71
  <success_criteria>
162
- - [ ] Current version detected from state.json
163
- - [ ] Dry-run preview shows full migration plan without execution
164
- - [ ] Each step confirmed interactively (unless --force)
165
- - [ ] Backup created before each migration
166
- - [ ] Migration executed and result displayed with change list
167
- - [ ] Abort stops cleanly with partial summary
168
- - [ ] Summary shows applied/skipped counts and version change
72
+ - [ ] Version detected, schema migration run, setup doc followed
73
+ - [ ] --setup-only, --dry-run, --force flags handled
169
74
  </success_criteria>
@@ -155,7 +155,7 @@ Single wave generates `wave-1.csv`. No `prev_context` needed (all tasks independ
155
155
  | `feature-maps/{slug}.md` | Per-feature documentation |
156
156
  | `knowledge-graph.json` | Knowledge Graph: nodes, edges, layers, tour (generated by `maestro kg index`) |
157
157
 
158
- **Wiki Integration**: After rebuild, KG nodes are automatically indexed as virtual wiki entries (type: knowhow, virtualKind: kg-node/kg-layer/kg-tour-step) on next `maestro wiki` access. Verify with `maestro wiki list --keyword kg`. Use `maestro kg diff-wiki` for future change impact analysis.
158
+ **Wiki Integration**: After rebuild, KG nodes are automatically indexed as virtual wiki entries (type: knowhow, virtualKind: kg-node/kg-layer/kg-tour-step) on next `maestro wiki` access. Verify with `maestro search "kg" --type knowhow`. Use `maestro kg diff-wiki` for future change impact analysis.
159
159
 
160
160
  ### Session Structure
161
161
 
@@ -354,7 +354,7 @@ Next steps:
354
354
  Skill({ skill: "manage-status" })
355
355
  Skill({ skill: "manage-codebase-refresh" })
356
356
  maestro kg stats # verify KG
357
- maestro wiki list --keyword kg # verify wiki integration
357
+ maestro search "kg" --type knowhow # verify wiki integration
358
358
  maestro kg diff-wiki # future change impact
359
359
  ```
360
360
 
@@ -56,7 +56,7 @@ Follow '~/.maestro/workflows/harvest.md' Stages 1–8 (standard mode) or Stage 9
56
56
  3. **Stable fragment IDs** — `HRV-{8 hex}` from `hash(source_id + content_hash)`
57
57
  4. **Never modify source artifacts** — purely extractive
58
58
  5. **Confidence filtering** — below threshold logged but not routed
59
- 6. **Spec format enforcement** — all spec routing must use `<spec-entry>` closed-tag format with `roles`, `keywords`, `date`, `source="harvest"` attributes
59
+ 6. **Spec format enforcement** — all spec routing must use `<spec-entry>` closed-tag format with `title`, `description`, `keywords`, `date`, `source="harvest"` attributes
60
60
 
61
61
  **Routing rules:**
62
62
  - Universal design patterns → `coding` or `arch` category
@@ -66,7 +66,7 @@ Follow '~/.maestro/workflows/harvest.md' Stages 1–8 (standard mode) or Stage 9
66
66
  - Spec: `maestro wiki append spec-<file> --body "<content>" --keywords "<kws>"` (unified write path) or `Skill({ skill: "spec-add", args: "<category> <content>" })`
67
67
  - Issue: append to `issues.jsonl` matching canonical schema, with `source: "harvest"` field (distinguishes from `manage-issue-discover`, which uses `source: "discover"` — required for cross-skill dedup when both write concurrently)
68
68
 
69
- **Next steps:** `/manage-wiki health`, `maestro wiki list --type note`, `/wiki-connect --fix`, `/wiki-digest`, `/manage-issue list --source harvest`
69
+ **Next steps:** `/manage-wiki health`, `maestro search --type note`, `/wiki-connect --fix`, `/wiki-digest`, `/manage-issue list --source harvest`
70
70
 
71
71
  **Prune mode** (`--prune`): Classifies artifacts (active/graduated/stale/protected), graduates harvested artifacts to wiki knowhow, archives from `artifacts[]` → `artifact_archive[]`, prunes resolved entries from accumulated_context. Files on disk are never deleted. Always backs up state.json before writing.
72
72
  </execution>
@@ -49,7 +49,7 @@ Default to `list` if no arguments. Parse first token as subcommand.
49
49
  ### Step 3: Execute Subcommand
50
50
 
51
51
  **list**: Show entries from both stores (or filtered by `--store`, `--tag`, `--type`).
52
- - Workflow: use `maestro wiki list --type knowhow --json` or read `.workflow/wiki-index.json`, display ID, type, category, date, tags, title
52
+ - Workflow: use `maestro search --type knowhow --json` or read `.workflow/wiki-index.json`, display ID, type, category, date, tags, title
53
53
  - System: list `.md` files in system memory directory
54
54
 
55
55
  **search `<query>`**: Full-text grep across both stores. Rank by match count.
@@ -53,8 +53,7 @@ Use this decision table to suggest the next action:
53
53
  |---------------|------------|
54
54
  | No phases planned | `Skill({ skill: "maestro-brainstorm" })` or `Skill({ skill: "maestro-plan" })` |
55
55
  | Phase planned, not executed | `Skill({ skill: "maestro-execute", args: "<N>" })` |
56
- | Phase executed, not verified | `Skill({ skill: "maestro-verify", args: "<N>" })` |
57
- | Phase verified with gaps | `Skill({ skill: "maestro-plan", args: "<N> --gaps" })` |
56
+ | Phase executed, not reviewed | `Skill({ skill: "quality-review", args: "<N>" })` |
58
57
  | Phase reviewed PASS/WARN | `Skill({ skill: "quality-test", args: "<N>" })` |
59
58
  | UAT passed | `Skill({ skill: "maestro-milestone-audit" })` |
60
59
  | All milestone phases done | `Skill({ skill: "maestro-milestone-audit" })` |
@@ -270,7 +270,7 @@ You MUST call report_agent_job_result EXACTLY ONCE before exiting.
270
270
  3. Conditional: traceability.md (spec route), issue creation (code_defect -> issues.jsonl)
271
271
  4. Register artifact in state.json (type: test)
272
272
  5. Display summary: route, iterations, convergence status, per-layer pass rates, bugs discovered
273
- 6. Route: converged -> maestro-verify; bugs -> quality-debug; >80% -> quality-test; <80% -> quality-debug; single pass all pass -> quality-test
273
+ 6. Route: converged -> quality-review; bugs -> quality-debug; >80% -> quality-test; <80% -> quality-debug; single pass all pass -> quality-test
274
274
 
275
275
  </actions>
276
276
 
@@ -314,6 +314,6 @@ Protocol: read before writing tests, append-only, dedup by type+key.
314
314
  - [ ] TST artifact registered in state.json
315
315
  - [ ] If spec: traceability.md written; if failures: issues auto-created in issues.jsonl
316
316
  - [ ] If gap source: validation.json gaps updated (MISSING→COVERED)
317
- - [ ] Next step routed (converged → verify, bugs → debug, >80% → quality-test, <80% → debug)
317
+ - [ ] Next step routed (converged → quality-review, bugs → debug, >80% → quality-test, <80% → debug)
318
318
  </success_criteria>
319
319
  </output>
@@ -110,7 +110,9 @@ id,title,description,hypothesis,deps,context_from,wave,status,findings,evidence_
110
110
  | `deps` | Input | Semicolon-separated dependency task IDs (wave 2 depends on wave 1) |
111
111
  | `context_from` | Input | Semicolon-separated task IDs whose findings this task needs |
112
112
  | `wave` | Input | Wave number (1 = investigation, 2 = fix attempt) |
113
- | `status` | Lifecycle | `pending` (initial) → `confirmed`/`refuted`/`inconclusive`/`fixed`/`fix_failed`/`failed`/`skipped` (set by merge step from worker's `result_status`) |
113
+ | `status` | Lifecycle | `pending` (initial) → `completed`/`failed`/`skipped` (set by merge step from worker's `result_status`) |
114
+ | `hypothesis_verdict` | Lifecycle | Wave 1 only: `confirmed`/`refuted`/`inconclusive` (merged from worker output) |
115
+ | `fix_result` | Lifecycle | Wave 2 only: `fixed`/`fix_failed` (merged from worker output) |
114
116
  | `findings` | Lifecycle | Key findings summary (max 500 chars; merged from worker output) |
115
117
  | `evidence_for` | Lifecycle | Evidence supporting the hypothesis (wave 1; merged) |
116
118
  | `evidence_against` | Lifecycle | Evidence refuting the hypothesis (wave 1; merged) |
@@ -205,7 +207,7 @@ mkdir -p {sessionFolder}
205
207
 
206
208
  2b. **Load codebase + wiki context** (optional, informs hypothesis generation):
207
209
  - If `.workflow/codebase/ARCHITECTURE.md` exists: read module boundaries to scope impact analysis
208
- - Run `maestro wiki search "<symptom keywords>" --json 2>/dev/null`; if results: check for prior investigations on similar issues
210
+ - Run `maestro search "<symptom keywords>" --json 2>/dev/null`; if results: check for prior investigations on similar issues
209
211
  - Run `maestro spec load --category debug --keyword "<symptom keywords>"`; if tools found: extract known issues, workarounds, and root-cause notes to inform hypotheses
210
212
  - All are optional — proceed without if unavailable
211
213
 
@@ -250,21 +252,22 @@ spawn_agents_on_csv({
250
252
  output_schema: {
251
253
  type: "object",
252
254
  properties: {
253
- id: { type: "string" },
254
- result_status: { type: "string", enum: ["confirmed", "refuted", "inconclusive", "failed"] },
255
- findings: { type: "string", maxLength: 500 },
256
- evidence_for: { type: "string" },
257
- evidence_against: { type: "string" },
258
- error: { type: "string" }
255
+ id: { type: "string" },
256
+ result_status: { type: "string", enum: ["completed", "failed"] },
257
+ hypothesis_verdict: { type: "string", enum: ["confirmed", "refuted", "inconclusive"], description: "Investigation outcome" },
258
+ findings: { type: "string", maxLength: 500 },
259
+ evidence_for: { type: "string" },
260
+ evidence_against: { type: "string" },
261
+ error: { type: "string" }
259
262
  },
260
- required: ["id", "result_status", "findings"]
263
+ required: ["id", "result_status", "hypothesis_verdict", "findings"]
261
264
  }
262
265
  })
263
266
  ```
264
267
 
265
- 3. **Merge**: for each row in `wave-1-results.csv`, look up master row by `id` and write `master.status = result_status`, then copy `findings`, `evidence_for`, `evidence_against`, `error`. Delete `wave-1.csv` and `wave-1-results.csv`.
268
+ 3. **Merge**: for each row in `wave-1-results.csv`, look up master row by `id` and write `master.status = result_status`, then copy `hypothesis_verdict`, `findings`, `evidence_for`, `evidence_against`, `error`. Delete `wave-1.csv` and `wave-1-results.csv`.
266
269
  4. **Wave 2 gating** (read from MASTER `tasks.csv` after merge, NOT from wave-1-results.csv):
267
- - For each `FIX-H{N}` row: read its `context_from` hypothesis ID (e.g., `H{N}`) from master; if master `H{N}.status != "confirmed"`, set `FIX-H{N}.status = "skipped"` (with findings = "upstream {H{N}.status}").
270
+ - For each `FIX-H{N}` row: read its `context_from` hypothesis ID (e.g., `H{N}`) from master; if master `H{N}.hypothesis_verdict != "confirmed"`, set `FIX-H{N}.status = "skipped"` (with findings = "upstream hypothesis_verdict={H{N}.hypothesis_verdict}").
268
271
  - Only rows where `status == "pending"` proceed to wave 2.
269
272
 
270
273
  #### Wave 1 Worker Contract (WAVE1_INVESTIGATION_INSTRUCTION)
@@ -281,23 +284,24 @@ REQUIRED STEPS:
281
284
  1. Read shared discoveries: {sessionFolder}/discoveries.ndjson (may be empty)
282
285
  2. Scan codebase for evidence using Read/Grep/Glob (read-only investigation)
283
286
  3. Classify the hypothesis based on evidence collected:
284
- - confirmed → strong evidence supports the hypothesis (file:line proof)
285
- - refuted → strong evidence contradicts the hypothesis
286
- - inconclusive → insufficient evidence within time budget; do NOT guess
287
- - failed → tool error / cannot read files / blocked by environment
287
+ - confirmed → strong evidence supports the hypothesis (file:line proof) → result_status=completed, hypothesis_verdict=confirmed
288
+ - refuted → strong evidence contradicts the hypothesis → result_status=completed, hypothesis_verdict=refuted
289
+ - inconclusive → insufficient evidence within time budget; do NOT guess → result_status=completed, hypothesis_verdict=inconclusive
290
+ - failed → tool error / cannot read files / blocked by environment → result_status=failed
288
291
  4. Append discoveries to {sessionFolder}/discoveries.ndjson if reusable (root_cause / hypothesis_evidence types)
289
292
  5. Call report_agent_job_result EXACTLY ONCE with the verdict
290
293
 
291
294
  TERMINATION CONTRACT (mandatory — NO worker may end without calling report_agent_job_result):
292
- - Success path → result_status = confirmed | refuted, with evidence
293
- - Timeout path → if approaching {max_runtime_seconds}, STOP investigation and report inconclusive
294
- - Failure path → on any unrecoverable error, report failed with error message
295
+ - Success path → result_status=completed, hypothesis_verdict = confirmed | refuted, with evidence
296
+ - Timeout path → if approaching {max_runtime_seconds}, STOP investigation and report result_status=completed, hypothesis_verdict=inconclusive
297
+ - Failure path → on any unrecoverable error, result_status=failed with error message
295
298
  - NEVER continue indefinitely. NEVER exit silently. NEVER omit the call.
296
299
 
297
300
  OUTPUT (return via report_agent_job_result; must match output_schema):
298
301
  {
299
302
  "id": "<your row id>",
300
- "result_status": "confirmed" | "refuted" | "inconclusive" | "failed",
303
+ "result_status": "completed" | "failed",
304
+ "hypothesis_verdict": "confirmed" | "refuted" | "inconclusive",
301
305
  "findings": "<one-sentence summary, max 500 chars>",
302
306
  "evidence_for": "<bullet list of file:line refs supporting, or empty>",
303
307
  "evidence_against": "<bullet list of file:line refs refuting, or empty>",
@@ -328,18 +332,19 @@ spawn_agents_on_csv({
328
332
  type: "object",
329
333
  properties: {
330
334
  id: { type: "string" },
331
- result_status: { type: "string", enum: ["fixed", "fix_failed", "failed"] },
335
+ result_status: { type: "string", enum: ["completed", "failed"] },
336
+ fix_result: { type: "string", enum: ["fixed", "fix_failed"], description: "Fix attempt outcome" },
332
337
  findings: { type: "string", maxLength: 500 },
333
338
  fix_applied: { type: "string" },
334
339
  verified: { type: "string", enum: ["true", "false"] },
335
340
  error: { type: "string" }
336
341
  },
337
- required: ["id", "result_status", "findings", "verified"]
342
+ required: ["id", "result_status", "fix_result", "findings", "verified"]
338
343
  }
339
344
  })
340
345
  ```
341
346
 
342
- 4. **Merge**: write `master.status = result_status`, copy `findings`, `fix_applied`, `verified`, `error`. Delete `wave-2.csv` and `wave-2-results.csv`.
347
+ 4. **Merge**: write `master.status = result_status`, copy `fix_result`, `findings`, `fix_applied`, `verified`, `error`. Delete `wave-2.csv` and `wave-2-results.csv`.
343
348
 
344
349
  #### Wave 2 Worker Contract (WAVE2_FIX_INSTRUCTION)
345
350
 
@@ -359,16 +364,17 @@ REQUIRED STEPS:
359
364
  5. Call report_agent_job_result EXACTLY ONCE
360
365
 
361
366
  TERMINATION CONTRACT (mandatory):
362
- - Success path → fix applied AND verified → result_status=fixed, verified="true"
363
- - Partial path → fix applied but verification failed → result_status=fix_failed, verified="false"
364
- - Timeout path → approaching {max_runtime_seconds} with no fix applied → result_status=fix_failed with error="timeout"
367
+ - Success path → fix applied AND verified → result_status=completed, fix_result=fixed, verified="true"
368
+ - Partial path → fix applied but verification failed → result_status=completed, fix_result=fix_failed, verified="false"
369
+ - Timeout path → approaching {max_runtime_seconds} with no fix applied → result_status=completed, fix_result=fix_failed with error="timeout"
365
370
  - Failure path → cannot apply fix (file missing, parse error, etc.) → result_status=failed
366
371
  - NEVER continue indefinitely. NEVER exit silently. NEVER omit the call.
367
372
 
368
373
  OUTPUT (return via report_agent_job_result; must match output_schema):
369
374
  {
370
375
  "id": "<your row id>",
371
- "result_status": "fixed" | "fix_failed" | "failed",
376
+ "result_status": "completed" | "failed",
377
+ "fix_result": "fixed" | "fix_failed",
372
378
  "findings": "<one-sentence summary of what was changed, max 500 chars>",
373
379
  "fix_applied": "<file:line description of the change>",
374
380
  "verified": "true" | "false",
@@ -409,7 +415,7 @@ CONSTRAINTS:
409
415
  | Result | Suggestion |
410
416
  |--------|------------|
411
417
  | All fixes verified | Run tests: `Skill({ skill: "quality-test", args: "{phase}" })` |
412
- | Fixes applied, not verified | Re-verify: `Skill({ skill: "maestro-verify", args: "{phase}" })` |
418
+ | Fixes applied, not verified | Re-execute: `Skill({ skill: "maestro-execute", args: "{phase}" })` |
413
419
  | Confirmed but no fix | Plan fixes: `Skill({ skill: "maestro-plan", args: "{phase} --gaps" })` |
414
420
  | All inconclusive | Resume with more context or manual investigation |
415
421
  | From UAT, all diagnosed | `Skill({ skill: "quality-test", args: "{phase} --auto-fix" })` |
@@ -123,7 +123,7 @@ Create `.workflow/scratch/refactor-{slug}-{date}/` with `.task/` and `.summaries
123
123
 
124
124
  ### Step 3: Scope Analysis
125
125
 
126
- Load project specs if available (`maestro spec load --category coding` for conventions, `maestro spec load --category review` for quality standards). Browse wiki: `maestro wiki list --category coding`, load relevant entries.
126
+ Load project specs if available (`maestro spec load --category coding` for conventions, `maestro spec load --category review` for quality standards). Browse wiki: `maestro search --category coding`, load relevant entries.
127
127
 
128
128
  Analyze scope for tech debt categories:
129
129
 
@@ -241,7 +241,7 @@ If `--no-route`: skip this stage.
241
241
  For each insight in `synthResult.insights`, route based on `routing` field:
242
242
 
243
243
  **Spec routing** (`routing: "spec"`):
244
- Map category (pattern/convention → `coding`, architecture → `arch`, quality → `quality`). Append `<spec-entry>` with category, auto-extracted keywords, date, source="retrospective", title, summary, evidence, phase/lens/INS-id.
244
+ Map category (pattern/convention → `coding`, architecture → `arch`, quality → `quality`). Append `<spec-entry>` with category, auto-extracted keywords, date, title, description, source="retrospective", evidence, phase/lens/INS-id.
245
245
 
246
246
  **Issue routing** (`routing: "issue"`, severity critical/high):
247
247
  Append to `.workflow/issues/issues.jsonl` with `ISS-<date>-<seq>` id, source="retrospective", phase/INS-id context, and history entry.