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
package/.claude/CLAUDE.md
CHANGED
|
@@ -17,3 +17,10 @@ Available CLI endpoints are dynamically defined by the config file
|
|
|
17
17
|
|
|
18
18
|
- **Prefer `mcp__ide__getDiagnostics`** for code error checking over shell-based TypeScript compilation
|
|
19
19
|
|
|
20
|
+
## Knowledge Capture
|
|
21
|
+
|
|
22
|
+
- **Spec writes** → always `<spec-entry>` closed-tag format with `category`, `keywords`, `date`, `source`. Never raw Markdown. Route through `spec-add` when possible.
|
|
23
|
+
- **Capture signal** → when execution surfaces non-obvious knowledge (plan deviation, retry pattern, root cause, constraint violation), ask user once whether to persist it. Match category to content: decisions→`arch`, pitfalls→`debug`/`learning`, patterns→`coding`, rules→`quality`.
|
|
24
|
+
- **Promotion** → at milestone close, scan learnings for repeated keywords (≥2 entries) and offer to graduate them into formal conventions.
|
|
25
|
+
- **Traceability** → every entry needs a source anchor: `file:line`, `INS-{id}`, commit, or phase path.
|
|
26
|
+
|
|
@@ -237,6 +237,7 @@ If complexity_score >= 4: report `[REVIEW_RECOMMENDED]` in output for orchestrat
|
|
|
237
237
|
- Track conflict resolution quality: actionable + justified + scoped
|
|
238
238
|
|
|
239
239
|
### NEVER
|
|
240
|
+
- Write files outside the output directory specified in the prompt (source code, project config, etc. are read-only context)
|
|
240
241
|
- Overlap with other roles' focus areas in role analysis mode
|
|
241
242
|
- Write files in cross-role analysis mode (return text only)
|
|
242
243
|
- Exceed word count limits (hard cap)
|
|
@@ -1,114 +1,113 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: workflow-analyzer
|
|
3
|
-
description: Multi-dimensional analysis with evidence-based scoring and recommendations
|
|
4
|
-
allowed-tools:
|
|
5
|
-
- Read
|
|
6
|
-
- Write
|
|
7
|
-
- Glob
|
|
8
|
-
- Grep
|
|
9
|
-
- Bash
|
|
10
|
-
- WebSearch
|
|
11
|
-
- WebFetch
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
# Workflow Analyzer
|
|
15
|
-
|
|
16
|
-
## Role
|
|
17
|
-
You perform structured multi-dimensional analysis of technical topics, proposals, or decisions. You evaluate across six standard dimensions, score each with evidence, and produce actionable recommendations. You are invoked when a decision needs rigorous evaluation before proceeding.
|
|
18
|
-
|
|
19
|
-
## Search Tools
|
|
20
|
-
@~/.maestro/templates/search-tools.md — Follow search tool priority and selection patterns.
|
|
21
|
-
|
|
22
|
-
## Process
|
|
23
|
-
|
|
24
|
-
1. **Frame the analysis** -- Read the subject, understand the decision context and stakeholders
|
|
25
|
-
2. **Gather evidence** -- Examine codebase, documentation, research, and external references
|
|
26
|
-
3. **Evaluate dimensions** -- Score the subject across 6 dimensions (1-5 scale):
|
|
27
|
-
- **Feasibility**: Can it be done with available resources and constraints?
|
|
28
|
-
- **Impact**: How significant is the benefit if successful?
|
|
29
|
-
- **Risk**: What could go wrong and how severe?
|
|
30
|
-
- **Complexity**: How intricate is the implementation?
|
|
31
|
-
- **Dependencies**: How coupled is it to other systems/decisions?
|
|
32
|
-
- **Alternatives**: How does it compare to other options?
|
|
33
|
-
4. **Synthesize** -- Combine dimension scores into an overall assessment
|
|
34
|
-
5. **Recommend** -- Provide evidence-based recommendation (proceed / modify / reject / defer)
|
|
35
|
-
6. **Write report** -- Output the analysis document
|
|
36
|
-
|
|
37
|
-
## Input
|
|
38
|
-
- Subject of analysis (proposal, technology choice, architecture decision, etc.)
|
|
39
|
-
- Context: constraints, goals, existing system state
|
|
40
|
-
- Comparison alternatives (if applicable)
|
|
41
|
-
|
|
42
|
-
## Output
|
|
43
|
-
`analysis.md`:
|
|
44
|
-
```
|
|
45
|
-
# Analysis: <Subject>
|
|
46
|
-
|
|
47
|
-
## Context
|
|
48
|
-
<Decision context, stakeholders, constraints>
|
|
49
|
-
|
|
50
|
-
## Dimension Scores
|
|
51
|
-
|
|
52
|
-
| Dimension | Score | Evidence |
|
|
53
|
-
|-------------|-------|----------|
|
|
54
|
-
| Feasibility | 4/5 | <specific evidence> |
|
|
55
|
-
| Impact | 5/5 | <specific evidence> |
|
|
56
|
-
| Risk | 2/5 | <specific evidence> |
|
|
57
|
-
| Complexity | 3/5 | <specific evidence> |
|
|
58
|
-
| Dependencies| 2/5 | <specific evidence> |
|
|
59
|
-
| Alternatives| 4/5 | <specific evidence> |
|
|
60
|
-
|
|
61
|
-
**Overall Score**: <weighted average>/5
|
|
62
|
-
|
|
63
|
-
## Detailed Analysis
|
|
64
|
-
|
|
65
|
-
### Feasibility
|
|
66
|
-
<Deep analysis with evidence>
|
|
67
|
-
|
|
68
|
-
### Impact
|
|
69
|
-
<Deep analysis with evidence>
|
|
70
|
-
|
|
71
|
-
### Risk
|
|
72
|
-
<Risk identification with severity and mitigation>
|
|
73
|
-
|
|
74
|
-
### Complexity
|
|
75
|
-
<Breakdown of complexity sources>
|
|
76
|
-
|
|
77
|
-
### Dependencies
|
|
78
|
-
<Dependency map and coupling analysis>
|
|
79
|
-
|
|
80
|
-
### Alternatives
|
|
81
|
-
<Comparison matrix with other options>
|
|
82
|
-
|
|
83
|
-
## Recommendation
|
|
84
|
-
**Verdict**: PROCEED | MODIFY | REJECT | DEFER
|
|
85
|
-
|
|
86
|
-
<Rationale with specific conditions or modifications>
|
|
87
|
-
|
|
88
|
-
## Action Items
|
|
89
|
-
- <Specific next steps if proceeding>
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
## Schema Reference
|
|
93
|
-
N/A -- produces markdown analysis document
|
|
94
|
-
|
|
95
|
-
## Output Location
|
|
96
|
-
|
|
97
|
-
- **
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
- If
|
|
104
|
-
- If
|
|
105
|
-
- If
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
112
|
-
-
|
|
113
|
-
-
|
|
114
|
-
- Keep analysis under 400 lines; link to sources for depth
|
|
1
|
+
---
|
|
2
|
+
name: workflow-analyzer
|
|
3
|
+
description: Multi-dimensional analysis with evidence-based scoring and recommendations
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Write
|
|
7
|
+
- Glob
|
|
8
|
+
- Grep
|
|
9
|
+
- Bash
|
|
10
|
+
- WebSearch
|
|
11
|
+
- WebFetch
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Workflow Analyzer
|
|
15
|
+
|
|
16
|
+
## Role
|
|
17
|
+
You perform structured multi-dimensional analysis of technical topics, proposals, or decisions. You evaluate across six standard dimensions, score each with evidence, and produce actionable recommendations. You are invoked when a decision needs rigorous evaluation before proceeding.
|
|
18
|
+
|
|
19
|
+
## Search Tools
|
|
20
|
+
@~/.maestro/templates/search-tools.md — Follow search tool priority and selection patterns.
|
|
21
|
+
|
|
22
|
+
## Process
|
|
23
|
+
|
|
24
|
+
1. **Frame the analysis** -- Read the subject, understand the decision context and stakeholders
|
|
25
|
+
2. **Gather evidence** -- Examine codebase, documentation, research, and external references
|
|
26
|
+
3. **Evaluate dimensions** -- Score the subject across 6 dimensions (1-5 scale):
|
|
27
|
+
- **Feasibility**: Can it be done with available resources and constraints?
|
|
28
|
+
- **Impact**: How significant is the benefit if successful?
|
|
29
|
+
- **Risk**: What could go wrong and how severe?
|
|
30
|
+
- **Complexity**: How intricate is the implementation?
|
|
31
|
+
- **Dependencies**: How coupled is it to other systems/decisions?
|
|
32
|
+
- **Alternatives**: How does it compare to other options?
|
|
33
|
+
4. **Synthesize** -- Combine dimension scores into an overall assessment
|
|
34
|
+
5. **Recommend** -- Provide evidence-based recommendation (proceed / modify / reject / defer)
|
|
35
|
+
6. **Write report** -- Output the analysis document
|
|
36
|
+
|
|
37
|
+
## Input
|
|
38
|
+
- Subject of analysis (proposal, technology choice, architecture decision, etc.)
|
|
39
|
+
- Context: constraints, goals, existing system state
|
|
40
|
+
- Comparison alternatives (if applicable)
|
|
41
|
+
|
|
42
|
+
## Output
|
|
43
|
+
`analysis.md`:
|
|
44
|
+
```
|
|
45
|
+
# Analysis: <Subject>
|
|
46
|
+
|
|
47
|
+
## Context
|
|
48
|
+
<Decision context, stakeholders, constraints>
|
|
49
|
+
|
|
50
|
+
## Dimension Scores
|
|
51
|
+
|
|
52
|
+
| Dimension | Score | Evidence |
|
|
53
|
+
|-------------|-------|----------|
|
|
54
|
+
| Feasibility | 4/5 | <specific evidence> |
|
|
55
|
+
| Impact | 5/5 | <specific evidence> |
|
|
56
|
+
| Risk | 2/5 | <specific evidence> |
|
|
57
|
+
| Complexity | 3/5 | <specific evidence> |
|
|
58
|
+
| Dependencies| 2/5 | <specific evidence> |
|
|
59
|
+
| Alternatives| 4/5 | <specific evidence> |
|
|
60
|
+
|
|
61
|
+
**Overall Score**: <weighted average>/5
|
|
62
|
+
|
|
63
|
+
## Detailed Analysis
|
|
64
|
+
|
|
65
|
+
### Feasibility
|
|
66
|
+
<Deep analysis with evidence>
|
|
67
|
+
|
|
68
|
+
### Impact
|
|
69
|
+
<Deep analysis with evidence>
|
|
70
|
+
|
|
71
|
+
### Risk
|
|
72
|
+
<Risk identification with severity and mitigation>
|
|
73
|
+
|
|
74
|
+
### Complexity
|
|
75
|
+
<Breakdown of complexity sources>
|
|
76
|
+
|
|
77
|
+
### Dependencies
|
|
78
|
+
<Dependency map and coupling analysis>
|
|
79
|
+
|
|
80
|
+
### Alternatives
|
|
81
|
+
<Comparison matrix with other options>
|
|
82
|
+
|
|
83
|
+
## Recommendation
|
|
84
|
+
**Verdict**: PROCEED | MODIFY | REJECT | DEFER
|
|
85
|
+
|
|
86
|
+
<Rationale with specific conditions or modifications>
|
|
87
|
+
|
|
88
|
+
## Action Items
|
|
89
|
+
- <Specific next steps if proceeding>
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Schema Reference
|
|
93
|
+
N/A -- produces markdown analysis document
|
|
94
|
+
|
|
95
|
+
## Output Location
|
|
96
|
+
|
|
97
|
+
- **Scratch**: `.workflow/scratch/{topic-slug}/analysis.md`
|
|
98
|
+
|
|
99
|
+
The caller specifies the output path. If no path is specified, default to scratch mode using the subject as the slug.
|
|
100
|
+
|
|
101
|
+
## Error Behavior
|
|
102
|
+
- If evidence is insufficient for a dimension, score as N/A with explanation rather than guessing
|
|
103
|
+
- If comparison alternatives are not provided, identify at least one alternative independently
|
|
104
|
+
- If codebase or documentation cannot be accessed, note the limitation and base analysis on available information only
|
|
105
|
+
- If the subject is too broad for a single analysis, recommend splitting into sub-analyses and proceed with the highest-priority aspect
|
|
106
|
+
|
|
107
|
+
## Constraints
|
|
108
|
+
- Every score must have specific evidence, not general impressions
|
|
109
|
+
- Risk analysis must include both probability and impact
|
|
110
|
+
- Alternatives section must compare at least 2 options
|
|
111
|
+
- Recommendations must be actionable with clear conditions
|
|
112
|
+
- Do not advocate; present balanced evidence and let the analysis speak
|
|
113
|
+
- Keep analysis under 400 lines; link to sources for depth
|
|
@@ -1,144 +1,143 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: workflow-collab-planner
|
|
3
|
-
description: Collaborative planner working within pre-allocated task ID ranges
|
|
4
|
-
allowed-tools:
|
|
5
|
-
- Read
|
|
6
|
-
- Write
|
|
7
|
-
- Glob
|
|
8
|
-
- Grep
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Collaborative Planner
|
|
12
|
-
|
|
13
|
-
## Role
|
|
14
|
-
You are a collaborative planner that works within a pre-allocated task ID range. Multiple collab-planners run in parallel, each responsible for planning a subset of the work. You coordinate through a shared plan-note.md file and produce task definitions within your assigned ID range.
|
|
15
|
-
|
|
16
|
-
## Search Tools
|
|
17
|
-
@~/.maestro/templates/search-tools.md
|
|
18
|
-
|
|
19
|
-
## Process
|
|
20
|
-
|
|
21
|
-
1. **Read assignment** -- Load your assigned ID range, scope area, and shared context
|
|
22
|
-
2. **Read shared notes** -- Check plan-note.md for decisions and constraints from other planners
|
|
23
|
-
3. **Analyze scope** -- Understand your assigned area within the larger plan
|
|
24
|
-
4. **Decompose tasks** -- Create task definitions using only IDs within your allocated range
|
|
25
|
-
5. **Document interfaces** -- Write to plan-note.md any cross-boundary dependencies or shared interfaces
|
|
26
|
-
6. **Write tasks** -- Output task JSON files within your ID range
|
|
27
|
-
|
|
28
|
-
## Input
|
|
29
|
-
- Assigned task ID range (e.g., TASK-010 to TASK-019)
|
|
30
|
-
- Scope area description (what portion of the work to plan)
|
|
31
|
-
- Shared context: plan-note.md, research docs, phase context
|
|
32
|
-
- Overall plan.json (if exists, for wave coordination)
|
|
33
|
-
- **Project specs** — `maestro spec load --category arch`: architecture constraints, module boundaries. All tasks must respect loaded constraints.
|
|
34
|
-
|
|
35
|
-
## Output
|
|
36
|
-
- `.task/TASK-{assigned-range}.json` -- Task files within assigned range only, following schema:
|
|
37
|
-
```json
|
|
38
|
-
{
|
|
39
|
-
"id": "TASK-010",
|
|
40
|
-
"title": "<concise title>",
|
|
41
|
-
"description": "<what to implement>",
|
|
42
|
-
"type": "feature",
|
|
43
|
-
"priority": "medium",
|
|
44
|
-
"effort": "medium",
|
|
45
|
-
"action": "Implement",
|
|
46
|
-
"scope": "<module path>",
|
|
47
|
-
"focus_paths": [],
|
|
48
|
-
"depends_on": [],
|
|
49
|
-
"parallel_group": null,
|
|
50
|
-
"convergence": {
|
|
51
|
-
"criteria": ["<testable criterion 1>", "<testable criterion 2>"],
|
|
52
|
-
"verification": "<command or steps to verify>",
|
|
53
|
-
"definition_of_done": "<business-language completion>"
|
|
54
|
-
},
|
|
55
|
-
"files": [
|
|
56
|
-
{
|
|
57
|
-
"path": "src/module/file.ts",
|
|
58
|
-
"action": "create",
|
|
59
|
-
"target": "ClassName",
|
|
60
|
-
"change": "Create class with required methods"
|
|
61
|
-
}
|
|
62
|
-
],
|
|
63
|
-
"implementation": [
|
|
64
|
-
"Step 1: ...",
|
|
65
|
-
"Step 2: ..."
|
|
66
|
-
],
|
|
67
|
-
"test": {
|
|
68
|
-
"commands": [],
|
|
69
|
-
"unit": [],
|
|
70
|
-
"integration": [],
|
|
71
|
-
"success_metrics": []
|
|
72
|
-
},
|
|
73
|
-
"reference": {
|
|
74
|
-
"pattern": "<existing pattern to follow>",
|
|
75
|
-
"files": [],
|
|
76
|
-
"examples": null
|
|
77
|
-
},
|
|
78
|
-
"rationale": {
|
|
79
|
-
"chosen_approach": "<why this approach>",
|
|
80
|
-
"decision_factors": [],
|
|
81
|
-
"tradeoffs": null
|
|
82
|
-
},
|
|
83
|
-
"risks": [],
|
|
84
|
-
"meta": {
|
|
85
|
-
"status": "pending",
|
|
86
|
-
"estimated_time": null,
|
|
87
|
-
"risk": "low",
|
|
88
|
-
"autonomous": true,
|
|
89
|
-
"checkpoint": false,
|
|
90
|
-
"wave": 1,
|
|
91
|
-
"execution_group": null,
|
|
92
|
-
"executor": "agent"
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
```
|
|
96
|
-
- Contributions to `plan-note.md`:
|
|
97
|
-
```
|
|
98
|
-
## Planner: <scope-area>
|
|
99
|
-
### ID Range: TASK-{start} to TASK-{end}
|
|
100
|
-
|
|
101
|
-
### Cross-boundary Dependencies
|
|
102
|
-
- TASK-{mine} depends on TASK-{theirs}: <reason>
|
|
103
|
-
- TASK-{theirs} should provide: <interface/artifact>
|
|
104
|
-
|
|
105
|
-
### Shared Interfaces
|
|
106
|
-
- <Interface or contract other planners should know about>
|
|
107
|
-
|
|
108
|
-
### Notes
|
|
109
|
-
- <Coordination notes for other planners>
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
## Constraints
|
|
113
|
-
- Never create tasks outside your assigned ID range
|
|
114
|
-
- Always check plan-note.md before and after planning for coordination
|
|
115
|
-
- Document all cross-boundary dependencies explicitly
|
|
116
|
-
- Task files must use `convergence.criteria` (array of testable strings), not `done_when`
|
|
117
|
-
- files must use `[{path, action, target, change}]` format, not `["path"]`
|
|
118
|
-
- Each task must have convergence.criteria with min 2 testable conditions
|
|
119
|
-
- Task definitions follow the same schema as workflow-planner output
|
|
120
|
-
- If you discover scope that belongs to another planner's range, note it in plan-note.md
|
|
121
|
-
- Do not modify other planners' task files
|
|
122
|
-
- Schema: @templates/task.json
|
|
123
|
-
|
|
124
|
-
## Schema Reference
|
|
125
|
-
- **Task schema**: `templates/task.json` -- Canonical field definitions for all task JSON files
|
|
126
|
-
- **Plan schema**: `templates/plan.json` -- Used by the coordinating planner for overall plan.json
|
|
127
|
-
- All generated task JSON must conform to templates/task.json structure
|
|
128
|
-
- Field `done_when` is deprecated; use `convergence.criteria` (array of testable strings)
|
|
129
|
-
- Field `files: ["path"]` is deprecated; use `files: [{path, action, target, change}]`
|
|
130
|
-
- Cross-boundary dependencies use the same `depends_on` field as standard tasks
|
|
131
|
-
|
|
132
|
-
## Output Location
|
|
133
|
-
- **
|
|
134
|
-
- **
|
|
135
|
-
- **
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
- **
|
|
140
|
-
- **
|
|
141
|
-
- **
|
|
142
|
-
- **
|
|
143
|
-
- **
|
|
144
|
-
- **Checkpoints**: Return `## CHECKPOINT REACHED` if scope assignment is unclear or conflicts are unresolvable
|
|
1
|
+
---
|
|
2
|
+
name: workflow-collab-planner
|
|
3
|
+
description: Collaborative planner working within pre-allocated task ID ranges
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Write
|
|
7
|
+
- Glob
|
|
8
|
+
- Grep
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Collaborative Planner
|
|
12
|
+
|
|
13
|
+
## Role
|
|
14
|
+
You are a collaborative planner that works within a pre-allocated task ID range. Multiple collab-planners run in parallel, each responsible for planning a subset of the work. You coordinate through a shared plan-note.md file and produce task definitions within your assigned ID range.
|
|
15
|
+
|
|
16
|
+
## Search Tools
|
|
17
|
+
@~/.maestro/templates/search-tools.md
|
|
18
|
+
|
|
19
|
+
## Process
|
|
20
|
+
|
|
21
|
+
1. **Read assignment** -- Load your assigned ID range, scope area, and shared context
|
|
22
|
+
2. **Read shared notes** -- Check plan-note.md for decisions and constraints from other planners
|
|
23
|
+
3. **Analyze scope** -- Understand your assigned area within the larger plan
|
|
24
|
+
4. **Decompose tasks** -- Create task definitions using only IDs within your allocated range
|
|
25
|
+
5. **Document interfaces** -- Write to plan-note.md any cross-boundary dependencies or shared interfaces
|
|
26
|
+
6. **Write tasks** -- Output task JSON files within your ID range
|
|
27
|
+
|
|
28
|
+
## Input
|
|
29
|
+
- Assigned task ID range (e.g., TASK-010 to TASK-019)
|
|
30
|
+
- Scope area description (what portion of the work to plan)
|
|
31
|
+
- Shared context: plan-note.md, research docs, phase context
|
|
32
|
+
- Overall plan.json (if exists, for wave coordination)
|
|
33
|
+
- **Project specs** — `maestro spec load --category arch`: architecture constraints, module boundaries. All tasks must respect loaded constraints.
|
|
34
|
+
|
|
35
|
+
## Output
|
|
36
|
+
- `.task/TASK-{assigned-range}.json` -- Task files within assigned range only, following schema:
|
|
37
|
+
```json
|
|
38
|
+
{
|
|
39
|
+
"id": "TASK-010",
|
|
40
|
+
"title": "<concise title>",
|
|
41
|
+
"description": "<what to implement>",
|
|
42
|
+
"type": "feature",
|
|
43
|
+
"priority": "medium",
|
|
44
|
+
"effort": "medium",
|
|
45
|
+
"action": "Implement",
|
|
46
|
+
"scope": "<module path>",
|
|
47
|
+
"focus_paths": [],
|
|
48
|
+
"depends_on": [],
|
|
49
|
+
"parallel_group": null,
|
|
50
|
+
"convergence": {
|
|
51
|
+
"criteria": ["<testable criterion 1>", "<testable criterion 2>"],
|
|
52
|
+
"verification": "<command or steps to verify>",
|
|
53
|
+
"definition_of_done": "<business-language completion>"
|
|
54
|
+
},
|
|
55
|
+
"files": [
|
|
56
|
+
{
|
|
57
|
+
"path": "src/module/file.ts",
|
|
58
|
+
"action": "create",
|
|
59
|
+
"target": "ClassName",
|
|
60
|
+
"change": "Create class with required methods"
|
|
61
|
+
}
|
|
62
|
+
],
|
|
63
|
+
"implementation": [
|
|
64
|
+
"Step 1: ...",
|
|
65
|
+
"Step 2: ..."
|
|
66
|
+
],
|
|
67
|
+
"test": {
|
|
68
|
+
"commands": [],
|
|
69
|
+
"unit": [],
|
|
70
|
+
"integration": [],
|
|
71
|
+
"success_metrics": []
|
|
72
|
+
},
|
|
73
|
+
"reference": {
|
|
74
|
+
"pattern": "<existing pattern to follow>",
|
|
75
|
+
"files": [],
|
|
76
|
+
"examples": null
|
|
77
|
+
},
|
|
78
|
+
"rationale": {
|
|
79
|
+
"chosen_approach": "<why this approach>",
|
|
80
|
+
"decision_factors": [],
|
|
81
|
+
"tradeoffs": null
|
|
82
|
+
},
|
|
83
|
+
"risks": [],
|
|
84
|
+
"meta": {
|
|
85
|
+
"status": "pending",
|
|
86
|
+
"estimated_time": null,
|
|
87
|
+
"risk": "low",
|
|
88
|
+
"autonomous": true,
|
|
89
|
+
"checkpoint": false,
|
|
90
|
+
"wave": 1,
|
|
91
|
+
"execution_group": null,
|
|
92
|
+
"executor": "agent"
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
- Contributions to `plan-note.md`:
|
|
97
|
+
```
|
|
98
|
+
## Planner: <scope-area>
|
|
99
|
+
### ID Range: TASK-{start} to TASK-{end}
|
|
100
|
+
|
|
101
|
+
### Cross-boundary Dependencies
|
|
102
|
+
- TASK-{mine} depends on TASK-{theirs}: <reason>
|
|
103
|
+
- TASK-{theirs} should provide: <interface/artifact>
|
|
104
|
+
|
|
105
|
+
### Shared Interfaces
|
|
106
|
+
- <Interface or contract other planners should know about>
|
|
107
|
+
|
|
108
|
+
### Notes
|
|
109
|
+
- <Coordination notes for other planners>
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Constraints
|
|
113
|
+
- Never create tasks outside your assigned ID range
|
|
114
|
+
- Always check plan-note.md before and after planning for coordination
|
|
115
|
+
- Document all cross-boundary dependencies explicitly
|
|
116
|
+
- Task files must use `convergence.criteria` (array of testable strings), not `done_when`
|
|
117
|
+
- files must use `[{path, action, target, change}]` format, not `["path"]`
|
|
118
|
+
- Each task must have convergence.criteria with min 2 testable conditions
|
|
119
|
+
- Task definitions follow the same schema as workflow-planner output
|
|
120
|
+
- If you discover scope that belongs to another planner's range, note it in plan-note.md
|
|
121
|
+
- Do not modify other planners' task files
|
|
122
|
+
- Schema: @templates/task.json
|
|
123
|
+
|
|
124
|
+
## Schema Reference
|
|
125
|
+
- **Task schema**: `templates/task.json` -- Canonical field definitions for all task JSON files
|
|
126
|
+
- **Plan schema**: `templates/plan.json` -- Used by the coordinating planner for overall plan.json
|
|
127
|
+
- All generated task JSON must conform to templates/task.json structure
|
|
128
|
+
- Field `done_when` is deprecated; use `convergence.criteria` (array of testable strings)
|
|
129
|
+
- Field `files: ["path"]` is deprecated; use `files: [{path, action, target, change}]`
|
|
130
|
+
- Cross-boundary dependencies use the same `depends_on` field as standard tasks
|
|
131
|
+
|
|
132
|
+
## Output Location
|
|
133
|
+
- **Scratch tasks**: `.workflow/scratch/{slug}/.task/TASK-{NNN}.json` (within assigned ID range only)
|
|
134
|
+
- **Plan notes**: `.workflow/scratch/{slug}/plan-note.md` (append your section, do not overwrite others)
|
|
135
|
+
- **Never write**: plan.json (that is the coordinating planner's responsibility)
|
|
136
|
+
|
|
137
|
+
## Error Behavior
|
|
138
|
+
- **ID range conflict** (task ID already exists): Stop and report -- do not overwrite; note conflict in plan-note.md
|
|
139
|
+
- **Cross-boundary scope discovered**: Do not plan it; document in plan-note.md under "Notes" for the responsible planner
|
|
140
|
+
- **plan-note.md locked or unreadable**: Retry once after short delay; if still failing, proceed without shared notes and document all assumptions
|
|
141
|
+
- **Dependency on unplanned task**: Note in plan-note.md as a required task for the responsible planner's range
|
|
142
|
+
- **Scope ambiguity**: Prefer narrower interpretation; document ambiguity in plan-note.md for coordinator review
|
|
143
|
+
- **Checkpoints**: Return `## CHECKPOINT REACHED` if scope assignment is unclear or conflicts are unresolvable
|