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.
- package/.claude/CLAUDE.md +7 -0
- package/.claude/agents/conceptual-planning-agent.md +1 -0
- package/.claude/agents/workflow-analyzer.md +113 -114
- package/.claude/agents/workflow-collab-planner.md +143 -144
- package/.claude/agents/workflow-debugger.md +101 -103
- package/.claude/agents/workflow-executor.md +127 -128
- package/.claude/agents/workflow-integration-checker.md +82 -82
- package/.claude/agents/workflow-nyquist-auditor.md +84 -84
- package/.claude/agents/workflow-phase-researcher.md +85 -85
- package/.claude/agents/workflow-plan-checker.md +90 -90
- package/.claude/agents/workflow-planner.md +177 -178
- package/.claude/agents/workflow-roadmapper.md +81 -83
- package/.claude/agents/workflow-verifier.md +118 -119
- package/.claude/commands/learn-retro.md +2 -2
- package/.claude/commands/learn-second-opinion.md +2 -2
- package/.claude/commands/maestro-analyze.md +10 -2
- package/.claude/commands/maestro-brainstorm.md +2 -1
- package/.claude/commands/maestro-execute.md +21 -4
- package/.claude/commands/maestro-fork.md +133 -111
- package/.claude/commands/maestro-merge.md +85 -77
- package/.claude/commands/maestro-milestone-complete.md +14 -0
- package/.claude/commands/maestro-plan.md +100 -8
- package/.claude/commands/maestro-roadmap.md +113 -2
- package/.claude/commands/maestro-ui-design.md +7 -7
- package/.claude/commands/maestro-update.md +176 -0
- package/.claude/commands/maestro-verify.md +18 -3
- package/.claude/commands/maestro.md +1 -0
- package/.claude/commands/manage-codebase-rebuild.md +0 -1
- package/.claude/commands/manage-harvest.md +1 -1
- package/.claude/commands/manage-learn.md +5 -5
- package/.claude/commands/manage-memory-capture.md +4 -4
- package/.claude/commands/manage-memory.md +1 -1
- package/.claude/commands/manage-wiki.md +62 -0
- package/.claude/commands/quality-business-test.md +5 -5
- package/.claude/commands/quality-debug.md +53 -6
- package/.claude/commands/quality-retrospective.md +9 -7
- package/.claude/commands/quality-review.md +39 -7
- package/.claude/commands/quality-sync.md +1 -1
- package/.claude/commands/quality-test-gen.md +5 -4
- package/.claude/commands/quality-test.md +45 -12
- package/.claude/commands/spec-remove.md +51 -0
- package/.claude/commands/spec-setup.md +1 -3
- package/.claude/commands/wiki-connect.md +9 -5
- package/.claude/commands/wiki-digest.md +6 -3
- package/.codex/skills/maestro/SKILL.md +2 -2
- package/.codex/skills/maestro-analyze/SKILL.md +4 -4
- package/.codex/skills/maestro-brainstorm/SKILL.md +4 -4
- package/.codex/skills/maestro-coordinate/SKILL.md +2 -2
- package/.codex/skills/maestro-execute/SKILL.md +15 -5
- package/.codex/skills/maestro-fork/SKILL.md +98 -68
- package/.codex/skills/maestro-init/SKILL.md +5 -4
- package/.codex/skills/maestro-merge/SKILL.md +69 -62
- package/.codex/skills/maestro-milestone-complete/SKILL.md +18 -1
- package/.codex/skills/maestro-plan/SKILL.md +6 -6
- package/.codex/skills/maestro-roadmap/SKILL.md +3 -4
- package/.codex/skills/maestro-spec-generate/SKILL.md +2 -2
- package/.codex/skills/maestro-ui-design/SKILL.md +6 -6
- package/.codex/skills/maestro-verify/SKILL.md +29 -20
- package/.codex/skills/manage-codebase-rebuild/SKILL.md +4 -4
- package/.codex/skills/manage-harvest/SKILL.md +10 -1
- package/.codex/skills/manage-issue-discover/SKILL.md +3 -3
- package/.codex/skills/manage-learn/SKILL.md +3 -2
- package/.codex/skills/manage-memory/SKILL.md +3 -3
- package/.codex/skills/manage-memory-capture/SKILL.md +8 -14
- package/.codex/skills/manage-status/SKILL.md +9 -4
- package/.codex/skills/manage-wiki/SKILL.md +55 -0
- package/.codex/skills/quality-business-test/SKILL.md +8 -6
- package/.codex/skills/quality-debug/SKILL.md +22 -9
- package/.codex/skills/quality-integration-test/SKILL.md +11 -7
- package/.codex/skills/quality-retrospective/SKILL.md +48 -29
- package/.codex/skills/quality-review/SKILL.md +10 -7
- package/.codex/skills/quality-test/SKILL.md +10 -5
- package/.codex/skills/quality-test-gen/SKILL.md +13 -9
- package/.codex/skills/spec-add/SKILL.md +11 -3
- package/.codex/skills/spec-load/SKILL.md +7 -0
- package/.codex/skills/spec-map/SKILL.md +2 -2
- package/.codex/skills/spec-remove/SKILL.md +101 -0
- package/.codex/skills/spec-setup/SKILL.md +4 -8
- package/.codex/skills/wiki-connect/SKILL.md +6 -5
- package/.codex/skills/wiki-digest/SKILL.md +2 -2
- package/README.md +2 -0
- package/README.zh-CN.md +2 -0
- package/dashboard/dist/assets/{ArtifactsPage-DZNCi6tn.js → ArtifactsPage-CUrrDGgN.js} +1 -1
- package/dashboard/dist/assets/ChatInput-pUOLJIKE.js +49 -0
- package/dashboard/dist/assets/ChatPage-B8Xqkt0v.js +27 -0
- package/dashboard/dist/assets/{CollabPage-B4NAHXS2.js → CollabPage-DIUXeazv.js} +1 -1
- package/dashboard/dist/assets/{ExecutionPanel-CFt4LJyq.js → ExecutionPanel-VmYeADFj.js} +1 -1
- package/dashboard/dist/assets/KanbanPage-DLq8v7hg.js +21 -0
- package/dashboard/dist/assets/{MarkdownRenderer-X4af_WNb.js → MarkdownRenderer-D7AehrnR.js} +1 -1
- package/dashboard/dist/assets/{McpPage-BKfCVIyU.js → McpPage-BY0SjTgw.js} +2 -2
- package/dashboard/dist/assets/{OutputPanel-BlBQFJSW.js → OutputPanel-B-Rjwgmv.js} +1 -1
- package/dashboard/dist/assets/{ProblemsPanel-De3DLvoI.js → ProblemsPanel-GEpF-oi4.js} +1 -1
- package/dashboard/dist/assets/RequirementBoardPage-xs8uDM7I.js +6 -0
- package/dashboard/dist/assets/{RequirementPage-Bllxe2XI.js → RequirementPage-BKDSFwjA.js} +5 -10
- package/dashboard/dist/assets/SpecsPage-DLFb9ZH0.js +36 -0
- package/dashboard/dist/assets/SupervisorPage-SOki_kgz.js +6 -0
- package/dashboard/dist/assets/TeamsPage-BO2kP70F.js +11 -0
- package/dashboard/dist/assets/{TreeBrowser-Q12qobZs.js → TreeBrowser-B9DHdULE.js} +1 -1
- package/dashboard/dist/assets/{WorkflowPage-D_Fzdy3_.js → WorkflowPage-C8hWbYim.js} +1 -1
- package/dashboard/dist/assets/{check-u6fGOwQO.js → check-DJDk3A2a.js} +1 -1
- package/dashboard/dist/assets/{chevron-right-Csu22t58.js → chevron-right-C7bVDreZ.js} +1 -1
- package/dashboard/dist/assets/{circle-CMrkbRNg.js → circle-Qfgy4LB_.js} +1 -1
- package/dashboard/dist/assets/{circle-alert-c3tH1P4z.js → circle-alert-Na1vf6qQ.js} +1 -1
- package/dashboard/dist/assets/{circle-check-gYxxSYuH.js → circle-check-CEGgy3NV.js} +1 -1
- package/dashboard/dist/assets/{circle-check-big-TDSeWstm.js → circle-check-big-3JB8zRYj.js} +1 -1
- package/dashboard/dist/assets/{code-CFN2uX9V.js → code-Ble63Idz.js} +1 -1
- package/dashboard/dist/assets/{columns-3-38xIDlzy.js → columns-3-BUcKlxve.js} +1 -1
- package/dashboard/dist/assets/{download-DC7KkKyP.js → download-CMqkfn8x.js} +1 -1
- package/dashboard/dist/assets/{folder-CWq_lAnf.js → folder-B9ewx9LL.js} +1 -1
- package/dashboard/dist/assets/index-C2Mcb4TJ.js +231 -0
- package/dashboard/dist/assets/index-DyBbPc18.css +1 -0
- package/dashboard/dist/assets/{index-Do71weNR.js → index-JTmGteaT.js} +1 -1
- package/dashboard/dist/assets/{list-CgIP_2A-.js → list-DI8Wn2aT.js} +1 -1
- package/dashboard/dist/assets/loader-B5F6PzFT.js +11 -0
- package/dashboard/dist/assets/{minus-DYoN5UGk.js → minus-Lp_BfctG.js} +1 -1
- package/dashboard/dist/assets/{pen-line-Bh_WKYHm.js → pen-line-Ch7sphzZ.js} +1 -1
- package/dashboard/dist/assets/pencil-_yRMHmGT.js +6 -0
- package/dashboard/dist/assets/{proxy-BKxDAKTj.js → proxy-D72Y8a4Y.js} +1 -1
- package/dashboard/dist/assets/{search-SieXnOgr.js → search-BS6fI6Bg.js} +1 -1
- package/dashboard/dist/assets/{shallow-Bme1JY57.js → shallow-BXasQBvr.js} +1 -1
- package/dashboard/dist/assets/table-CeGlFjlP.js +6 -0
- package/dashboard/dist/assets/{terminal-BB3Xfuv5.js → terminal-BJic2yW-.js} +1 -1
- package/dashboard/dist/assets/{trash-2-C8f4vFFM.js → trash-2-Czz4X8Fb.js} +1 -1
- package/dashboard/dist/assets/{zap-4uwlzVm0.js → zap-C3H0jVFA.js} +1 -1
- package/dashboard/dist/index.html +2 -2
- package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js +16 -1
- package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.d.ts +9 -0
- package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js +109 -9
- package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.test.js +49 -0
- package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/delegate-broker-monitor.js +1 -2
- package/dashboard/dist-server/dashboard/src/server/agents/delegate-broker-monitor.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.d.ts +1 -1
- package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.js +2 -1
- package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/index.js +3 -0
- package/dashboard/dist-server/dashboard/src/server/index.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/collab.js +124 -0
- package/dashboard/dist-server/dashboard/src/server/routes/collab.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/index.js +5 -4
- package/dashboard/dist-server/dashboard/src/server/routes/index.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/specs.d.ts +5 -13
- package/dashboard/dist-server/dashboard/src/server/routes/specs.js +97 -155
- package/dashboard/dist-server/dashboard/src/server/routes/specs.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.d.ts +11 -1
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js +27 -6
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +25 -7
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/graph-analysis.js +8 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/graph-analysis.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/search.js +1 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/search.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.d.ts +29 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js +148 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +4 -2
- package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js +8 -2
- package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.d.ts +5 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +80 -38
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js +8 -6
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +40 -5
- package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js +21 -23
- package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/writer.d.ts +33 -3
- package/dashboard/dist-server/dashboard/src/server/wiki/writer.js +184 -12
- package/dashboard/dist-server/dashboard/src/server/wiki/writer.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.d.ts +10 -0
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.js +73 -0
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/shared/collab-types.d.ts +31 -0
- package/dashboard/dist-server/dashboard/src/shared/collab-types.js +28 -0
- package/dashboard/dist-server/dashboard/src/shared/collab-types.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/shared/constants.js +5 -0
- package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/shared/coordinate-types.d.ts +22 -0
- package/dashboard/dist-server/dashboard/src/shared/issue-types.d.ts +12 -0
- package/dashboard/dist-server/dashboard/src/shared/issue-types.js +12 -0
- package/dashboard/dist-server/dashboard/src/shared/issue-types.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/shared/team-types.d.ts +1 -0
- package/dashboard/dist-server/dashboard/src/shared/team-types.js +7 -0
- package/dashboard/dist-server/dashboard/src/shared/team-types.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +27 -1
- package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
- package/dashboard/dist-server/shared/agent-types.d.ts +4 -0
- package/dashboard/dist-server/src/commands/delegate.js +26 -0
- package/dashboard/dist-server/src/commands/delegate.js.map +1 -1
- package/dashboard/dist-server/src/coordinator/graph-types.d.ts +11 -1
- package/dashboard/dist-server/src/coordinator/graph-walker.js +29 -2
- package/dashboard/dist-server/src/coordinator/graph-walker.js.map +1 -1
- package/dashboard/dist-server/src/coordinator/prompt-assembler.js +3 -2
- package/dashboard/dist-server/src/coordinator/prompt-assembler.js.map +1 -1
- package/dashboard/dist-server/src/hooks/constants.d.ts +29 -60
- package/dashboard/dist-server/src/hooks/constants.js +105 -82
- package/dashboard/dist-server/src/hooks/constants.js.map +1 -1
- package/dashboard/dist-server/src/types/index.d.ts +2 -1
- package/dist/shared/agent-types.d.ts +4 -0
- package/dist/shared/agent-types.d.ts.map +1 -1
- package/dist/src/commands/delegate.d.ts.map +1 -1
- package/dist/src/commands/delegate.js +26 -0
- package/dist/src/commands/delegate.js.map +1 -1
- package/dist/src/commands/hooks.d.ts +2 -4
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +4 -7
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/install-backend.d.ts.map +1 -1
- package/dist/src/commands/install-backend.js +29 -18
- package/dist/src/commands/install-backend.js.map +1 -1
- package/dist/src/commands/install-ui/InstallConfirm.d.ts +2 -3
- package/dist/src/commands/install-ui/InstallConfirm.d.ts.map +1 -1
- package/dist/src/commands/install-ui/InstallConfirm.js +1 -1
- package/dist/src/commands/install-ui/InstallConfirm.js.map +1 -1
- package/dist/src/commands/install-ui/InstallExecution.d.ts.map +1 -1
- package/dist/src/commands/install-ui/InstallExecution.js +1 -2
- package/dist/src/commands/install-ui/InstallExecution.js.map +1 -1
- package/dist/src/commands/install-ui/InstallFlow.d.ts.map +1 -1
- package/dist/src/commands/install-ui/InstallFlow.js +5 -7
- package/dist/src/commands/install-ui/InstallFlow.js.map +1 -1
- package/dist/src/commands/install-ui/StatuslineConfig.d.ts +3 -6
- package/dist/src/commands/install-ui/StatuslineConfig.d.ts.map +1 -1
- package/dist/src/commands/install-ui/StatuslineConfig.js +21 -17
- package/dist/src/commands/install-ui/StatuslineConfig.js.map +1 -1
- package/dist/src/commands/update.d.ts.map +1 -1
- package/dist/src/commands/update.js +95 -0
- package/dist/src/commands/update.js.map +1 -1
- package/dist/src/commands/wiki.d.ts.map +1 -1
- package/dist/src/commands/wiki.js +75 -11
- package/dist/src/commands/wiki.js.map +1 -1
- package/dist/src/coordinator/graph-types.d.ts +11 -1
- package/dist/src/coordinator/graph-types.d.ts.map +1 -1
- package/dist/src/coordinator/graph-walker.d.ts.map +1 -1
- package/dist/src/coordinator/graph-walker.js +29 -2
- package/dist/src/coordinator/graph-walker.js.map +1 -1
- package/dist/src/coordinator/prompt-assembler.d.ts.map +1 -1
- package/dist/src/coordinator/prompt-assembler.js +3 -2
- package/dist/src/coordinator/prompt-assembler.js.map +1 -1
- package/dist/src/hooks/__tests__/statusline-visual-test.d.ts +4 -1
- package/dist/src/hooks/__tests__/statusline-visual-test.d.ts.map +1 -1
- package/dist/src/hooks/__tests__/statusline-visual-test.js +55 -152
- package/dist/src/hooks/__tests__/statusline-visual-test.js.map +1 -1
- package/dist/src/hooks/constants.d.ts +29 -60
- package/dist/src/hooks/constants.d.ts.map +1 -1
- package/dist/src/hooks/constants.js +105 -82
- package/dist/src/hooks/constants.js.map +1 -1
- package/dist/src/hooks/skill-context.d.ts +3 -0
- package/dist/src/hooks/skill-context.d.ts.map +1 -1
- package/dist/src/hooks/skill-context.js +149 -15
- package/dist/src/hooks/skill-context.js.map +1 -1
- package/dist/src/hooks/statusline.d.ts +11 -8
- package/dist/src/hooks/statusline.d.ts.map +1 -1
- package/dist/src/hooks/statusline.js +284 -179
- package/dist/src/hooks/statusline.js.map +1 -1
- package/dist/src/hooks/workspace.d.ts.map +1 -1
- package/dist/src/hooks/workspace.js +2 -1
- package/dist/src/hooks/workspace.js.map +1 -1
- package/dist/src/migrations/_template.d.ts +12 -0
- package/dist/src/migrations/_template.d.ts.map +1 -0
- package/dist/src/migrations/_template.js +55 -0
- package/dist/src/migrations/_template.js.map +1 -0
- package/dist/src/migrations/index.d.ts +14 -0
- package/dist/src/migrations/index.d.ts.map +1 -0
- package/dist/src/migrations/index.js +20 -0
- package/dist/src/migrations/index.js.map +1 -0
- package/dist/src/migrations/run.d.ts +12 -0
- package/dist/src/migrations/run.d.ts.map +1 -0
- package/dist/src/migrations/run.js +119 -0
- package/dist/src/migrations/run.js.map +1 -0
- package/dist/src/migrations/v1-to-v2.d.ts +10 -0
- package/dist/src/migrations/v1-to-v2.d.ts.map +1 -0
- package/dist/src/migrations/v1-to-v2.js +71 -0
- package/dist/src/migrations/v1-to-v2.js.map +1 -0
- package/dist/src/tools/merge-validator.d.ts.map +1 -1
- package/dist/src/tools/merge-validator.js +114 -16
- package/dist/src/tools/merge-validator.js.map +1 -1
- package/dist/src/tools/team-activity.d.ts.map +1 -1
- package/dist/src/tools/team-activity.js +22 -0
- package/dist/src/tools/team-activity.js.map +1 -1
- package/dist/src/tools/transition-recorder.d.ts +2 -17
- package/dist/src/tools/transition-recorder.d.ts.map +1 -1
- package/dist/src/tools/transition-recorder.js +6 -3
- package/dist/src/tools/transition-recorder.js.map +1 -1
- package/dist/src/types/index.d.ts +2 -1
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/utils/migration-registry.d.ts +65 -0
- package/dist/src/utils/migration-registry.d.ts.map +1 -0
- package/dist/src/utils/migration-registry.js +117 -0
- package/dist/src/utils/migration-registry.js.map +1 -0
- package/dist/src/utils/state-schema.d.ts +153 -0
- package/dist/src/utils/state-schema.d.ts.map +1 -0
- package/dist/src/utils/state-schema.js +329 -0
- package/dist/src/utils/state-schema.js.map +1 -0
- package/package.json +1 -1
- package/shared/agent-types.ts +4 -0
- package/templates/state.json +17 -39
- package/templates/worktree-scope.json +9 -10
- package/templates/worktrees.json +26 -27
- package/workflows/brainstorm.md +10 -1
- package/workflows/codebase-rebuild.md +2 -12
- package/workflows/debug.md +17 -8
- package/workflows/execute.md +18 -4
- package/workflows/fork.md +52 -37
- package/workflows/init.md +1 -4
- package/workflows/integration-test.md +13 -2
- package/workflows/issue.md +8 -4
- package/workflows/learn.md +25 -10
- package/workflows/maestro.codex.md +8 -1
- package/workflows/maestro.md +13 -3
- package/workflows/memory.md +26 -71
- package/workflows/merge.md +48 -52
- package/workflows/milestone-complete.md +24 -7
- package/workflows/retrospective.md +87 -80
- package/workflows/review.md +11 -5
- package/workflows/specs-remove.md +115 -0
- package/workflows/specs-setup.md +10 -32
- package/workflows/status.md +291 -290
- package/workflows/sync.md +5 -5
- package/workflows/test.md +11 -2
- package/workflows/ui-style.md +8 -2
- package/workflows/verify.md +2 -2
- package/workflows/wiki-connect.md +188 -0
- package/workflows/wiki-digest.md +221 -0
- package/workflows/wiki-manage.md +204 -0
- package/dashboard/dist/assets/ChatInput-Bvr-FeEq.js +0 -49
- package/dashboard/dist/assets/ChatPage-D9zTkJZo.js +0 -22
- package/dashboard/dist/assets/KanbanPage-C8USth6H.js +0 -21
- package/dashboard/dist/assets/RequirementBoardPage-Bf1trzqs.js +0 -11
- package/dashboard/dist/assets/SpecsPage-9lwxKT27.js +0 -36
- package/dashboard/dist/assets/SupervisorPage-SusdfHFq.js +0 -6
- package/dashboard/dist/assets/TeamsPage-DsuM6OwC.js +0 -6
- package/dashboard/dist/assets/arrow-left-Bqtb2hle.js +0 -6
- package/dashboard/dist/assets/index-DWG-WrzT.js +0 -231
- package/dashboard/dist/assets/index-GUNJodSR.css +0 -1
- package/dashboard/dist/assets/table-llyEtj-7.js +0 -6
|
@@ -1,77 +1,85 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: maestro-merge
|
|
3
|
-
description: Two-phase merge of milestone worktree branch back — git merge first, artifact sync only on success
|
|
4
|
-
argument-hint: "-m <milestone-number> [--force] [--dry-run] [--no-cleanup] [--continue]"
|
|
5
|
-
allowed-tools:
|
|
6
|
-
- Read
|
|
7
|
-
- Write
|
|
8
|
-
- Edit
|
|
9
|
-
- Bash
|
|
10
|
-
- Glob
|
|
11
|
-
- Grep
|
|
12
|
-
- Agent
|
|
13
|
-
- AskUserQuestion
|
|
14
|
-
---
|
|
15
|
-
<purpose>
|
|
16
|
-
Merge a completed milestone worktree branch back into the main branch, sync
|
|
17
|
-
|
|
18
|
-
Includes registry health check, pre-merge rebase (pull main into worktree to minimize conflicts), and atomic state reconciliation (
|
|
19
|
-
</purpose>
|
|
20
|
-
|
|
21
|
-
<required_reading>
|
|
22
|
-
@~/.maestro/workflows/merge.md
|
|
23
|
-
</required_reading>
|
|
24
|
-
|
|
25
|
-
<context>
|
|
26
|
-
$ARGUMENTS -- milestone name and optional flags.
|
|
27
|
-
|
|
28
|
-
**Flags:**
|
|
29
|
-
- `-m <N>` or bare `<N>`: Milestone number (1-based, maps to registry)
|
|
30
|
-
- `--force`: Merge even if
|
|
31
|
-
- `--dry-run`: Show what would be merged without executing
|
|
32
|
-
- `--no-cleanup`: Keep worktree and branch after merge (for inspection)
|
|
33
|
-
- `--continue`: Resume a merge that was paused due to git conflict
|
|
34
|
-
|
|
35
|
-
**Merge sequence:**
|
|
36
|
-
1. Registry health check (remove stale entries)
|
|
37
|
-
2. Validate
|
|
38
|
-
3. Pre-merge rebase (`git merge main` in worktree)
|
|
39
|
-
4. Phase 1: Git merge (source code only)
|
|
40
|
-
5. Phase 2:
|
|
41
|
-
6. Atomic
|
|
42
|
-
7. Cleanup (worktree remove + branch delete)
|
|
43
|
-
|
|
44
|
-
**
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
**
|
|
52
|
-
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
- [ ] Registry
|
|
77
|
-
|
|
1
|
+
---
|
|
2
|
+
name: maestro-merge
|
|
3
|
+
description: Two-phase merge of milestone worktree branch back — git merge first, scratch artifact sync only on success
|
|
4
|
+
argument-hint: "-m <milestone-number> [--force] [--dry-run] [--no-cleanup] [--continue]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Edit
|
|
9
|
+
- Bash
|
|
10
|
+
- Glob
|
|
11
|
+
- Grep
|
|
12
|
+
- Agent
|
|
13
|
+
- AskUserQuestion
|
|
14
|
+
---
|
|
15
|
+
<purpose>
|
|
16
|
+
Merge a completed milestone worktree branch back into the main branch, sync scratch artifacts, and reconcile the artifact registry. Uses a two-phase approach: git merge first (source code), artifact sync second (only after git succeeds). This prevents partial state corruption when merge conflicts occur.
|
|
17
|
+
|
|
18
|
+
Includes registry health check, pre-merge rebase (pull main into worktree to minimize conflicts), and atomic state reconciliation (merge artifact entries, don't overwrite).
|
|
19
|
+
</purpose>
|
|
20
|
+
|
|
21
|
+
<required_reading>
|
|
22
|
+
@~/.maestro/workflows/merge.md
|
|
23
|
+
</required_reading>
|
|
24
|
+
|
|
25
|
+
<context>
|
|
26
|
+
$ARGUMENTS -- milestone name and optional flags.
|
|
27
|
+
|
|
28
|
+
**Flags:**
|
|
29
|
+
- `-m <N>` or bare `<N>`: Milestone number (1-based, maps to registry)
|
|
30
|
+
- `--force`: Merge even if milestone has incomplete artifacts
|
|
31
|
+
- `--dry-run`: Show what would be merged without executing
|
|
32
|
+
- `--no-cleanup`: Keep worktree and branch after merge (for inspection)
|
|
33
|
+
- `--continue`: Resume a merge that was paused due to git conflict
|
|
34
|
+
|
|
35
|
+
**Merge sequence:**
|
|
36
|
+
1. Registry health check (remove stale worktree entries)
|
|
37
|
+
2. Validate milestone artifact completeness (all EXC artifacts completed)
|
|
38
|
+
3. Pre-merge rebase (`git merge main` in worktree)
|
|
39
|
+
4. Phase 1: Git merge (source code only)
|
|
40
|
+
5. Phase 2: Scratch artifact sync (only after git merge succeeds)
|
|
41
|
+
6. Atomic artifact registry reconciliation
|
|
42
|
+
7. Cleanup (worktree remove + branch delete)
|
|
43
|
+
|
|
44
|
+
**Phase 2 — Artifact sync detail:**
|
|
45
|
+
- Copy worktree `scratch/*` dirs back to main `.workflow/scratch/`
|
|
46
|
+
- Merge worktree `state.json.artifacts[]` entries into main `state.json.artifacts[]`
|
|
47
|
+
- Dedup by artifact id; worktree version wins for same id
|
|
48
|
+
- Update milestone status in main `state.json.milestones[]` (remove "forked" flag)
|
|
49
|
+
- Mark `harvested` status from worktree artifacts
|
|
50
|
+
|
|
51
|
+
**Conflict handling:**
|
|
52
|
+
If git merge fails, the command saves state to `.workflow/.merge-state.json` and exits. User resolves conflicts, then runs `maestro-merge --continue` to resume artifact sync.
|
|
53
|
+
</context>
|
|
54
|
+
|
|
55
|
+
<execution>
|
|
56
|
+
Follow '~/.maestro/workflows/merge.md' completely.
|
|
57
|
+
|
|
58
|
+
**Next-step routing on completion:**
|
|
59
|
+
- View dashboard → Skill({ skill: "manage-status" })
|
|
60
|
+
- Audit milestone → Skill({ skill: "maestro-milestone-audit" })
|
|
61
|
+
</execution>
|
|
62
|
+
|
|
63
|
+
<error_codes>
|
|
64
|
+
| Code | Severity | Condition | Recovery |
|
|
65
|
+
|------|----------|-----------|----------|
|
|
66
|
+
| E001 | error | Running inside a worktree | Run from main worktree |
|
|
67
|
+
| E002 | error | No worktree registry found | Nothing to merge |
|
|
68
|
+
| E003 | error | --continue but no merge state | Start fresh merge |
|
|
69
|
+
| E004 | error | No milestone number provided | Provide `-m <N>` |
|
|
70
|
+
| W001 | warning | Stale registry entries found | Auto-cleaned |
|
|
71
|
+
| W002 | warning | Incomplete artifacts (without --force) | Confirm or use --force |
|
|
72
|
+
| W003 | warning | Conflict pulling main into worktree | Resolve in worktree first |
|
|
73
|
+
</error_codes>
|
|
74
|
+
|
|
75
|
+
<success_criteria>
|
|
76
|
+
- [ ] Registry health check passed (stale entries cleaned)
|
|
77
|
+
- [ ] Pre-merge rebase successful (worktree has latest main)
|
|
78
|
+
- [ ] Git merge completed without conflicts (or conflicts resolved via --continue)
|
|
79
|
+
- [ ] All scratch artifacts synced to main `.workflow/scratch/`
|
|
80
|
+
- [ ] `state.json.artifacts[]` reconciled (worktree entries merged into main)
|
|
81
|
+
- [ ] Milestone `"forked"` flag removed in `state.json.milestones[]`
|
|
82
|
+
- [ ] `roadmap.md` completed phases marked
|
|
83
|
+
- [ ] Worktree removed and branch deleted (unless --no-cleanup)
|
|
84
|
+
- [ ] `worktrees.json` registry updated (entry removed)
|
|
85
|
+
</success_criteria>
|
|
@@ -42,6 +42,20 @@ Follow '~/.maestro/workflows/milestone-complete.md' completely.
|
|
|
42
42
|
5. Update state.json: advance to next milestone, clear artifacts[]
|
|
43
43
|
6. Clean scratch dirs
|
|
44
44
|
|
|
45
|
+
### Knowledge Promotion Inquiry
|
|
46
|
+
|
|
47
|
+
After learning extraction (step 4), scan `learnings.md` for promotion candidates:
|
|
48
|
+
|
|
49
|
+
1. **High-frequency pattern detection**: Scan all `<spec-entry category="learning">` entries for keyword overlap (≥2 entries sharing keywords):
|
|
50
|
+
→ Ask: "Keyword '{keyword}' appears in {N} learning entries. Should this be promoted to a formal coding convention? (`/spec-add coding`)"
|
|
51
|
+
|
|
52
|
+
2. **Convention drift detection**: Compare executed task summaries against `coding-conventions.md` and `architecture-constraints.md`:
|
|
53
|
+
→ Ask: "Were any established conventions bypassed during this milestone? Should conventions be updated?"
|
|
54
|
+
|
|
55
|
+
3. **Wiki island check**: Auto-trigger `wiki-connect --fix` to link newly extracted knowledge.
|
|
56
|
+
|
|
57
|
+
If user confirms promotion, invoke `Skill({ skill: "spec-add", args: "<category> <content>" })` with promoted content, preserving original date and source traceability.
|
|
58
|
+
|
|
45
59
|
**Next-step routing on completion:**
|
|
46
60
|
- Cut a release → `/maestro-milestone-release`
|
|
47
61
|
- Next milestone → `/maestro-analyze` or `/maestro-plan 1`
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: maestro-plan
|
|
3
3
|
description: Explore, clarify, plan, check, and confirm a phase execution plan
|
|
4
|
-
argument-hint: "[phase] [--collab] [--spec SPEC-xxx] [--auto] [--gaps] [--dir <path>]"
|
|
4
|
+
argument-hint: "[phase] [--collab] [--spec SPEC-xxx] [--auto] [--gaps] [--dir <path>] [--revise [instructions]] [--check <plan-dir>]"
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- Read
|
|
7
7
|
- Write
|
|
@@ -13,9 +13,14 @@ allowed-tools:
|
|
|
13
13
|
- AskUserQuestion
|
|
14
14
|
---
|
|
15
15
|
<purpose>
|
|
16
|
-
Create
|
|
16
|
+
Create, revise, or verify an execution plan through a 5-stage pipeline: Exploration, Clarification, Planning, Plan Checking, and Confirmation. Produces plan.json with waves, task definitions, and user-confirmed execution strategy.
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Supports three modes:
|
|
19
|
+
- **Create** (default): Build plan from analysis context or phase requirements
|
|
20
|
+
- **Revise** (`--revise`): Incrementally modify existing plan — edit tasks, adjust waves, add/remove tasks
|
|
21
|
+
- **Check** (`--check`): Standalone plan verification — run plan-checker against existing plan
|
|
22
|
+
|
|
23
|
+
All plan output goes to `.workflow/scratch/{YYYYMMDD}-plan-[P{N}-|M{N}-]{slug}/`. Date-first ordering enables chronological sorting. Scope prefix in directory name (`P{N}` for phase, `M{N}` for milestone, omit for adhoc/standalone) enables fallback identification. Registers PLN artifact in state.json. Performs collision detection against other plans in same milestone.
|
|
19
24
|
</purpose>
|
|
20
25
|
|
|
21
26
|
<required_reading>
|
|
@@ -37,6 +42,8 @@ $ARGUMENTS — phase number, or no args for milestone-wide planning, with option
|
|
|
37
42
|
- `--auto` -- Skip interactive clarification (P2), use defaults
|
|
38
43
|
- `--gaps` -- Gap closure mode: load verification/issue gaps, skip exploration, plan only gap fixes
|
|
39
44
|
- `--dir <path>` -- Use arbitrary scratch directory as context source (e.g., from analyze session)
|
|
45
|
+
- `--revise [instructions]` -- Revise existing plan. Auto-discovers latest plan for current phase from state.json, or use with `--dir` to target specific plan. If instructions provided, apply directly (e.g. `--revise "add TASK-005 for error handling"`). If omitted, ask user via AskUserQuestion. Skips P1-P3 (exploration/clarification/planning), loads existing plan.json + tasks, applies targeted modifications, re-runs P4 (plan-checker).
|
|
46
|
+
- `--check <plan-dir>` -- Standalone plan verification. Run plan-checker (P4 only) against existing plan without modification. Also checks roadmap consistency and collision detection. Read-only.
|
|
40
47
|
|
|
41
48
|
**Scope routing:**
|
|
42
49
|
|
|
@@ -45,16 +52,25 @@ $ARGUMENTS — phase number, or no args for milestone-wide planning, with option
|
|
|
45
52
|
| `plan` (no args) | init + roadmap | milestone | Plan all phases in current milestone |
|
|
46
53
|
| `plan 1` | init + roadmap | phase | Plan phase 1 only |
|
|
47
54
|
| `plan --dir scratch/analyze-xxx` | none | inherited | Plan against specified analyze session |
|
|
55
|
+
| `plan --revise "instructions"` | existing plan | revise | Modify existing plan with instructions |
|
|
56
|
+
| `plan --revise` | existing plan | revise | Modify existing plan, ask user for instructions |
|
|
57
|
+
| `plan --check scratch/plan-xxx` | existing plan | check | Verify existing plan (read-only) |
|
|
48
58
|
|
|
49
59
|
**Upstream context:**
|
|
50
60
|
- Reads `context.md` from prior analyze artifact (auto-discovered from state.json or via --dir)
|
|
51
61
|
- Reads `conclusions.json` if available (implementation_scope seeds task generation)
|
|
52
62
|
|
|
53
|
-
**Output directory
|
|
63
|
+
**Output directory** (relative to `.workflow/`):
|
|
64
|
+
|
|
65
|
+
| Scope | Directory format | Example |
|
|
66
|
+
|-------|-----------------|---------|
|
|
67
|
+
| Phase | `scratch/{YYYYMMDD}-plan-P{N}-{slug}/` | `20260420-plan-P1-auth` |
|
|
68
|
+
| Milestone | `scratch/{YYYYMMDD}-plan-M{N}-{slug}/` | `20260420-plan-M1-mvp` |
|
|
69
|
+
| Adhoc/Standalone | `scratch/{YYYYMMDD}-plan-{slug}/` | `20260420-plan-caching` |
|
|
54
70
|
|
|
55
71
|
**Output structure:**
|
|
56
72
|
```
|
|
57
|
-
|
|
73
|
+
{YYYYMMDD}-plan-P{N}-{slug}/
|
|
58
74
|
├── plan.json # summary, task_ids[], waves[] with phase labels
|
|
59
75
|
└── .task/
|
|
60
76
|
├── TASK-001.json # { phase: 1, phase_slug: "auth", ... }
|
|
@@ -72,7 +88,7 @@ scratch/plan-{slug}-{date}/
|
|
|
72
88
|
"milestone": "{current_milestone or null}",
|
|
73
89
|
"phase": "{phase_number or null}",
|
|
74
90
|
"scope": "{milestone|phase|adhoc|standalone}",
|
|
75
|
-
"path": "scratch/plan-{
|
|
91
|
+
"path": "scratch/{YYYYMMDD}-plan-P{N}-{slug}", // P{N} for phase, M{N} for milestone, omit for adhoc/standalone
|
|
76
92
|
"status": "completed",
|
|
77
93
|
"depends_on": "{ANL-NNN or null}",
|
|
78
94
|
"harvested": false,
|
|
@@ -133,14 +149,88 @@ Tasks: {task_count} tasks in {wave_count} waves
|
|
|
133
149
|
Check: {checker_status} (iteration {check_count}/{max_checks})
|
|
134
150
|
Collision: {collision_status}
|
|
135
151
|
|
|
136
|
-
Plan: {
|
|
137
|
-
Tasks: {
|
|
152
|
+
Plan: scratch/{YYYYMMDD}-plan-P{N}-{slug}/plan.json
|
|
153
|
+
Tasks: scratch/{YYYYMMDD}-plan-P{N}-{slug}/.task/TASK-*.json
|
|
138
154
|
|
|
139
155
|
Next steps:
|
|
140
156
|
/maestro-execute -- Execute the plan
|
|
141
157
|
/maestro-execute --dir {dir} -- Execute specific plan
|
|
142
158
|
/maestro-plan {phase} -- Re-plan with modifications
|
|
143
159
|
```
|
|
160
|
+
|
|
161
|
+
### Mode: Revise (`--revise [instructions]`)
|
|
162
|
+
|
|
163
|
+
Incrementally modify an existing plan without rebuilding from scratch.
|
|
164
|
+
|
|
165
|
+
**Plan discovery:**
|
|
166
|
+
- With `--dir`: use specified plan directory
|
|
167
|
+
- Without `--dir`: auto-discover latest completed plan for current phase from `state.json.artifacts[]` (type=plan, status=completed, matching phase)
|
|
168
|
+
|
|
169
|
+
**Execution flow:**
|
|
170
|
+
|
|
171
|
+
1. **Load existing plan**
|
|
172
|
+
- Read `plan.json` + all `.task/TASK-*.json` from discovered directory
|
|
173
|
+
- Show current plan summary: task count, waves, status per task
|
|
174
|
+
|
|
175
|
+
2. **Obtain revision instructions**
|
|
176
|
+
- If `--revise "instructions"` provided → parse as change directive
|
|
177
|
+
- If `--revise` without instructions → AskUserQuestion for what to change:
|
|
178
|
+
- Add/remove tasks
|
|
179
|
+
- Modify task scope, action, implementation
|
|
180
|
+
- Reorder waves or adjust dependencies
|
|
181
|
+
- Update convergence criteria
|
|
182
|
+
- Parse instructions into concrete changes
|
|
183
|
+
|
|
184
|
+
3. **Apply targeted changes**
|
|
185
|
+
- Modify affected TASK files in-place
|
|
186
|
+
- If tasks added/removed: re-sequence task IDs, regenerate wave assignments
|
|
187
|
+
- Update plan.json summary (task count, wave structure)
|
|
188
|
+
- Preserve unmodified tasks completely
|
|
189
|
+
|
|
190
|
+
4. **Re-run plan-checker (P4)**
|
|
191
|
+
- Validate modified plan with same checker as create mode
|
|
192
|
+
- Re-run collision detection against same-milestone plans
|
|
193
|
+
- Present check results for confirmation
|
|
194
|
+
|
|
195
|
+
5. **Update artifact**
|
|
196
|
+
- Overwrite plan files in existing scratch directory
|
|
197
|
+
- Update artifact timestamp in state.json (no new artifact created)
|
|
198
|
+
|
|
199
|
+
### Mode: Check (`--check <plan-dir>`)
|
|
200
|
+
|
|
201
|
+
Read-only plan verification without modification.
|
|
202
|
+
|
|
203
|
+
**Execution flow:**
|
|
204
|
+
|
|
205
|
+
1. **Load plan**
|
|
206
|
+
- Read `plan.json` + `.task/TASK-*.json` from specified directory
|
|
207
|
+
- Read `.workflow/roadmap.md` for consistency comparison
|
|
208
|
+
|
|
209
|
+
2. **Run checks**
|
|
210
|
+
- Plan-checker (P4 pipeline stage) — task quality, convergence criteria
|
|
211
|
+
- Roadmap consistency — plan tasks align with phase scope and requirements
|
|
212
|
+
- Collision detection — file overlaps with other plans in same milestone
|
|
213
|
+
- Dependency integrity — no broken cross-task dependencies
|
|
214
|
+
|
|
215
|
+
3. **Produce check report**
|
|
216
|
+
```
|
|
217
|
+
=== PLAN CHECK ===
|
|
218
|
+
Plan: {plan_dir}/plan.json
|
|
219
|
+
Tasks: {total} ({completed} done, {pending} pending)
|
|
220
|
+
|
|
221
|
+
Checker: {PASS|WARN|FAIL} ({issues} issues)
|
|
222
|
+
Roadmap: {aligned|drift detected}
|
|
223
|
+
Collision: {clear|{N} overlaps}
|
|
224
|
+
|
|
225
|
+
Issues:
|
|
226
|
+
1. [{severity}] {description}
|
|
227
|
+
|
|
228
|
+
Suggested actions:
|
|
229
|
+
/maestro-plan --revise "fix instructions" -- Apply fixes
|
|
230
|
+
/maestro-execute --dir {plan_dir} -- Execute as-is
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**No file modifications.** Pure verification + report.
|
|
144
234
|
</execution>
|
|
145
235
|
|
|
146
236
|
<error_codes>
|
|
@@ -148,6 +238,8 @@ Next steps:
|
|
|
148
238
|
|------|----------|-----------|----------|
|
|
149
239
|
| E001 | error | No args and no roadmap (cannot determine scope) | Provide phase number or topic, or create roadmap |
|
|
150
240
|
| E003 | error | --gaps requires prior verification/issues to exist | Run maestro-verify first |
|
|
241
|
+
| E004 | error | No plan found to revise (--revise without target) | Use --dir to specify plan, or create plan first |
|
|
242
|
+
| E005 | error | Plan directory not found (--check) | Check path, use --dir |
|
|
151
243
|
| W001 | warning | Exploration agent returned incomplete results | Retry exploration or proceed with available context |
|
|
152
244
|
| W002 | warning | Plan-checker found minor issues, continuing | Review plan-checker feedback, adjust plan if needed |
|
|
153
245
|
| W003 | warning | Wiki search unavailable or returned no results | Continue without prior knowledge context |
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: maestro-roadmap
|
|
3
3
|
description: Interactive roadmap creation with iterative refinement — lightweight alternative to spec-generate
|
|
4
|
-
argument-hint: "<requirement> [-y] [-c] [-m progressive|direct|auto] [--from-brainstorm SESSION-ID]"
|
|
4
|
+
argument-hint: "<requirement> [-y] [-c] [-m progressive|direct|auto] [--from-brainstorm SESSION-ID] [--revise [instructions]] [--review]"
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- Read
|
|
7
7
|
- Write
|
|
@@ -13,7 +13,12 @@ allowed-tools:
|
|
|
13
13
|
- AskUserQuestion
|
|
14
14
|
---
|
|
15
15
|
<purpose>
|
|
16
|
-
Create a project roadmap through interactive requirement decomposition and iterative refinement. This is the lightweight path for structured decomposition — directly from requirements to roadmap without full specification documents. For the heavy path with formal specs, use maestro-spec-generate instead.
|
|
16
|
+
Create or revise a project roadmap through interactive requirement decomposition and iterative refinement. This is the lightweight path for structured decomposition — directly from requirements to roadmap without full specification documents. For the heavy path with formal specs, use maestro-spec-generate instead.
|
|
17
|
+
|
|
18
|
+
Supports three modes:
|
|
19
|
+
- **Create** (default): Build roadmap from requirements
|
|
20
|
+
- **Revise** (`--revise`): Modify existing roadmap while preserving completed phase progress
|
|
21
|
+
- **Review** (`--review`): Health assessment of current roadmap — actual vs planned, drift detection, adjustment recommendations (read-only)
|
|
17
22
|
|
|
18
23
|
Produces `.workflow/roadmap.md` with milestone/phase structure ready for maestro-plan.
|
|
19
24
|
</purpose>
|
|
@@ -31,11 +36,14 @@ $ARGUMENTS -- requirement text, @file reference, or brainstorm session reference
|
|
|
31
36
|
- `-c` / `--continue`: Resume from last checkpoint
|
|
32
37
|
- `-m progressive|direct|auto`: Decomposition strategy (default: auto)
|
|
33
38
|
- `--from-brainstorm SESSION-ID`: Import guidance-specification.md from a brainstorm session as seed
|
|
39
|
+
- `--revise [instructions]`: Revise existing roadmap. If instructions provided, apply directly (e.g. `--revise "add phase 4 for perf optimization"` or `--revise "split phase 2 into 2a and 2b"`). If omitted, ask user for revision instructions via AskUserQuestion. Preserves completed phase progress.
|
|
40
|
+
- `--review`: Roadmap health assessment — compare actual vs planned progress, detect drift, assess remaining phases (read-only, produces review report)
|
|
34
41
|
|
|
35
42
|
**Input types:**
|
|
36
43
|
- Direct text: `"Implement user authentication system with OAuth and 2FA"`
|
|
37
44
|
- File reference: `@requirements.md`
|
|
38
45
|
- Brainstorm import: `--from-brainstorm WFS-xxx`
|
|
46
|
+
- No args + `--revise` / `--review`: Operate on existing `.workflow/roadmap.md`
|
|
39
47
|
|
|
40
48
|
**Relationship to pipeline:**
|
|
41
49
|
```
|
|
@@ -63,6 +71,9 @@ Auto-selection: ≥3 high uncertainty factors → Progressive, ≥3 low → Dire
|
|
|
63
71
|
</context>
|
|
64
72
|
|
|
65
73
|
<execution>
|
|
74
|
+
|
|
75
|
+
### Mode: Create (default)
|
|
76
|
+
|
|
66
77
|
Follow '~/.maestro/workflows/roadmap.md' completely.
|
|
67
78
|
|
|
68
79
|
**Next-step routing on completion:**
|
|
@@ -70,6 +81,104 @@ Follow '~/.maestro/workflows/roadmap.md' completely.
|
|
|
70
81
|
- Simple project, skip analysis → /maestro-plan 1
|
|
71
82
|
- Need UI design first → /maestro-ui-design 1
|
|
72
83
|
- View project dashboard → /manage-status
|
|
84
|
+
|
|
85
|
+
### Mode: Revise (`--revise [instructions]`)
|
|
86
|
+
|
|
87
|
+
Revise an existing roadmap while preserving completed phase progress.
|
|
88
|
+
|
|
89
|
+
**Pre-conditions:**
|
|
90
|
+
- `.workflow/roadmap.md` exists
|
|
91
|
+
- `.workflow/state.json` exists (for progress tracking)
|
|
92
|
+
|
|
93
|
+
**Execution flow:**
|
|
94
|
+
|
|
95
|
+
1. **Load current state**
|
|
96
|
+
- Read `.workflow/roadmap.md` — parse milestones, phases, dependencies, progress markers
|
|
97
|
+
- Read `.workflow/state.json` — get artifact registry, current milestone
|
|
98
|
+
- Identify completed vs in-progress vs pending phases
|
|
99
|
+
|
|
100
|
+
2. **Obtain revision instructions**
|
|
101
|
+
- If `--revise "instructions text"` provided → use directly as change directive
|
|
102
|
+
- If `--revise` without instructions → use AskUserQuestion to ask user what to change
|
|
103
|
+
- Show current roadmap summary with phase statuses
|
|
104
|
+
- Present options: add/remove/reorder phases, modify scope/criteria/deps, move between milestones
|
|
105
|
+
- Capture change instructions from response
|
|
106
|
+
|
|
107
|
+
3. **Impact analysis**
|
|
108
|
+
- For each proposed change, assess impact on:
|
|
109
|
+
- Phase dependency chain (re-validate no circular deps)
|
|
110
|
+
- Requirement coverage (every Active requirement still mapped)
|
|
111
|
+
- Completed phases (warn if change invalidates completed work)
|
|
112
|
+
- Existing plan artifacts (warn if plan exists for affected phase)
|
|
113
|
+
- Present impact summary for confirmation
|
|
114
|
+
|
|
115
|
+
4. **Apply revisions**
|
|
116
|
+
- Update `.workflow/roadmap.md` preserving:
|
|
117
|
+
- Completed phase progress markers (✓, completion dates)
|
|
118
|
+
- Phase numbering for completed phases (renumber only pending phases)
|
|
119
|
+
- Cross-references from state.json artifacts
|
|
120
|
+
- Update `state.json` if milestone structure changed
|
|
121
|
+
- Add revision log entry to roadmap.md metadata section
|
|
122
|
+
|
|
123
|
+
5. **Post-revision validation**
|
|
124
|
+
- Re-check dependency integrity (no circular deps)
|
|
125
|
+
- Re-check requirement coverage (every Active req mapped)
|
|
126
|
+
- Verify completed phases unaffected
|
|
127
|
+
|
|
128
|
+
**Next-step routing on completion:**
|
|
129
|
+
- Phases changed, need re-analysis → `/maestro-analyze {phase}`
|
|
130
|
+
- Phases changed, ready to plan → `/maestro-plan {phase}`
|
|
131
|
+
- Only pending phases adjusted → `/maestro-plan` (continue from where left off)
|
|
132
|
+
|
|
133
|
+
### Mode: Review (`--review`)
|
|
134
|
+
|
|
135
|
+
Read-only health assessment of the current roadmap.
|
|
136
|
+
|
|
137
|
+
**Pre-conditions:**
|
|
138
|
+
- `.workflow/roadmap.md` exists
|
|
139
|
+
|
|
140
|
+
**Execution flow:**
|
|
141
|
+
|
|
142
|
+
1. **Load roadmap + execution history**
|
|
143
|
+
- Read `.workflow/roadmap.md` — full structure
|
|
144
|
+
- Read `.workflow/state.json` — artifact registry, milestone progress
|
|
145
|
+
- Cross-reference: for each phase, check ANL/PLN/EXC/VRF artifact status
|
|
146
|
+
|
|
147
|
+
2. **Assessment dimensions**
|
|
148
|
+
- **Progress tracking**: Actual vs planned per phase, milestone velocity
|
|
149
|
+
- **Drift detection**: Completed phases deviating from original scope (via verify/audit findings)
|
|
150
|
+
- **Relevance check**: Pending phases still aligned with current project goals (from project.md)
|
|
151
|
+
- **Dependency health**: Pending phase dependencies still valid given completed work
|
|
152
|
+
- **Risk assessment**: Identify phases at risk (blocked, scope creep, dependency failures)
|
|
153
|
+
|
|
154
|
+
3. **Produce review report**
|
|
155
|
+
- Write to `.workflow/scratch/{YYYYMMDD}-roadmap-review.md`
|
|
156
|
+
- Format:
|
|
157
|
+
```
|
|
158
|
+
=== ROADMAP REVIEW ===
|
|
159
|
+
Date: {date}
|
|
160
|
+
Milestone: {current}
|
|
161
|
+
|
|
162
|
+
Progress: {completed}/{total} phases ({percentage}%)
|
|
163
|
+
Drift: {none|minor|significant}
|
|
164
|
+
Risk: {low|medium|high}
|
|
165
|
+
|
|
166
|
+
Phase Assessment:
|
|
167
|
+
[✓] Phase 1: {name} — completed, on-scope
|
|
168
|
+
[~] Phase 2: {name} — in-progress, {status notes}
|
|
169
|
+
[ ] Phase 3: {name} — pending, {risk/notes}
|
|
170
|
+
|
|
171
|
+
Recommendations:
|
|
172
|
+
1. {actionable recommendation}
|
|
173
|
+
2. ...
|
|
174
|
+
|
|
175
|
+
Suggested actions:
|
|
176
|
+
/maestro-roadmap --revise — Apply recommended changes
|
|
177
|
+
/maestro-plan {phase} — Plan next phase
|
|
178
|
+
/manage-status — View full dashboard
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
**No state modifications.** Pure assessment + recommendations.
|
|
73
182
|
</execution>
|
|
74
183
|
|
|
75
184
|
<error_codes>
|
|
@@ -78,6 +187,8 @@ Follow '~/.maestro/workflows/roadmap.md' completely.
|
|
|
78
187
|
| E001 | error | Requirement text or @file required | Prompt user for input |
|
|
79
188
|
| E002 | error | Brainstorm session not found (--from-brainstorm) | Show available sessions |
|
|
80
189
|
| E003 | error | Circular dependency detected in phases | Prompt user to re-decompose |
|
|
190
|
+
| E004 | error | roadmap.md not found (--revise/--review) | Run maestro-roadmap first |
|
|
191
|
+
| E005 | error | Revision invalidates completed phase work | Warn user, ask to confirm or adjust |
|
|
81
192
|
| W001 | warning | CLI analysis failed, using fallback | Continue with available data |
|
|
82
193
|
| W002 | warning | Max refinement rounds (5) reached | Force proceed with current roadmap |
|
|
83
194
|
| W005 | warning | External research agent failed | Continue without apiResearchContext |
|
|
@@ -49,7 +49,7 @@ $ARGUMENTS — phase number for phase mode, topic text for scratch mode, with op
|
|
|
49
49
|
- Flags `--layouts N` and `--refine` are only effective with `ui-design.md` (full pipeline)
|
|
50
50
|
|
|
51
51
|
**Phase mode** (number): resolves phase directory, reads context.md/brainstorm for requirements.
|
|
52
|
-
**Scratch mode** (text): creates `.workflow/scratch/ui-design-{slug}
|
|
52
|
+
**Scratch mode** (text): creates `.workflow/scratch/{YYYYMMDD}-ui-design-{slug}/` for standalone exploration.
|
|
53
53
|
|
|
54
54
|
**Output artifacts (in phase or scratch directory):**
|
|
55
55
|
| Artifact | Description |
|
|
@@ -101,12 +101,12 @@ Stack: {stack}
|
|
|
101
101
|
Matrix: {S x L x T} = {total} prototypes
|
|
102
102
|
|
|
103
103
|
Design System:
|
|
104
|
-
MASTER.md: {
|
|
105
|
-
Tokens: {
|
|
106
|
-
Animation: {
|
|
107
|
-
Layout Templates: {
|
|
108
|
-
Prototypes: {
|
|
109
|
-
Compare: {
|
|
104
|
+
MASTER.md: {scratch_dir}/design-ref/MASTER.md
|
|
105
|
+
Tokens: {scratch_dir}/design-ref/design-tokens.json
|
|
106
|
+
Animation: {scratch_dir}/design-ref/animation-tokens.json
|
|
107
|
+
Layout Templates: {scratch_dir}/design-ref/layout-templates/
|
|
108
|
+
Prototypes: {scratch_dir}/design-ref/prototypes/
|
|
109
|
+
Compare: {scratch_dir}/design-ref/prototypes/compare.html
|
|
110
110
|
|
|
111
111
|
Next steps:
|
|
112
112
|
/maestro-plan {phase} -- Plan with design reference
|