maestro-flow 0.3.10 → 0.3.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/agents/conceptual-planning-agent.md +1 -0
- package/.claude/agents/workflow-analyzer.md +114 -114
- package/.claude/agents/workflow-collab-planner.md +144 -144
- package/.claude/agents/workflow-debugger.md +102 -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 +85 -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 +178 -178
- package/.claude/agents/workflow-roadmapper.md +81 -83
- package/.claude/agents/workflow-verifier.md +119 -119
- package/.claude/commands/learn-decompose.md +176 -176
- package/.claude/commands/learn-follow.md +167 -167
- package/.claude/commands/learn-retro.md +3 -3
- package/.claude/commands/learn-second-opinion.md +2 -2
- package/.claude/commands/maestro-brainstorm.md +1 -0
- package/.claude/commands/maestro-coordinate.md +1 -3
- package/.claude/commands/maestro-fork.md +133 -111
- package/.claude/commands/maestro-merge.md +85 -77
- package/.claude/commands/maestro-plan.md +88 -2
- package/.claude/commands/maestro-roadmap.md +113 -2
- package/.claude/commands/maestro.md +1 -0
- package/.claude/commands/manage-harvest.md +131 -131
- package/.claude/commands/manage-issue.md +2 -2
- package/.claude/commands/quality-business-test.md +5 -5
- package/.claude/commands/quality-debug.md +3 -2
- package/.claude/commands/quality-retrospective.md +6 -4
- package/.claude/commands/quality-review.md +1 -1
- package/.claude/commands/quality-test-gen.md +5 -4
- package/.claude/commands/spec-add.md +67 -56
- package/.claude/commands/spec-load.md +66 -64
- package/.claude/commands/spec-setup.md +5 -9
- package/.codex/skills/learn-decompose/SKILL.md +119 -0
- package/.codex/skills/learn-follow/SKILL.md +83 -0
- package/.codex/skills/learn-investigate/SKILL.md +83 -0
- package/.codex/skills/learn-retro/SKILL.md +83 -0
- package/.codex/skills/learn-second-opinion/SKILL.md +86 -0
- package/.codex/skills/maestro/SKILL.md +151 -279
- package/.codex/skills/maestro-analyze/SKILL.md +59 -71
- package/.codex/skills/maestro-brainstorm/SKILL.md +452 -463
- package/.codex/skills/maestro-chain/SKILL.md +95 -110
- package/.codex/skills/maestro-coordinate/SKILL.md +68 -234
- package/.codex/skills/maestro-execute/SKILL.md +435 -446
- package/.codex/skills/maestro-fork/SKILL.md +98 -0
- package/.codex/skills/maestro-init/SKILL.md +172 -167
- package/.codex/skills/maestro-learn/SKILL.md +80 -0
- package/.codex/skills/maestro-link-coordinate/SKILL.md +224 -220
- package/.codex/skills/maestro-merge/SKILL.md +69 -0
- package/.codex/skills/maestro-milestone-audit/SKILL.md +108 -103
- package/.codex/skills/maestro-milestone-complete/SKILL.md +155 -149
- package/.codex/skills/maestro-milestone-release/SKILL.md +70 -0
- package/.codex/skills/maestro-overlay/SKILL.md +188 -185
- package/.codex/skills/maestro-plan/SKILL.md +58 -69
- package/.codex/skills/maestro-quick/SKILL.md +26 -23
- package/.codex/skills/maestro-roadmap/SKILL.md +65 -73
- package/.codex/skills/maestro-spec-generate/SKILL.md +66 -74
- package/.codex/skills/maestro-ui-design/SKILL.md +35 -32
- package/.codex/skills/maestro-verify/SKILL.md +556 -566
- package/.codex/skills/manage-codebase-rebuild/SKILL.md +397 -405
- package/.codex/skills/manage-codebase-refresh/SKILL.md +93 -82
- package/.codex/skills/manage-harvest/SKILL.md +82 -0
- package/.codex/skills/manage-issue/SKILL.md +80 -65
- package/.codex/skills/manage-issue-discover/SKILL.md +491 -503
- package/.codex/skills/manage-learn/SKILL.md +190 -186
- package/.codex/skills/manage-memory/SKILL.md +95 -72
- package/.codex/skills/manage-memory-capture/SKILL.md +99 -86
- package/.codex/skills/manage-status/SKILL.md +102 -89
- package/.codex/skills/quality-business-test/SKILL.md +228 -223
- package/.codex/skills/quality-debug/SKILL.md +54 -66
- package/.codex/skills/quality-integration-test/SKILL.md +532 -544
- package/.codex/skills/quality-refactor/SKILL.md +197 -191
- package/.codex/skills/quality-retrospective/SKILL.md +512 -505
- package/.codex/skills/quality-review/SKILL.md +95 -107
- package/.codex/skills/quality-sync/SKILL.md +101 -89
- package/.codex/skills/quality-test/SKILL.md +202 -198
- package/.codex/skills/quality-test-gen/SKILL.md +94 -105
- package/.codex/skills/spec-add/SKILL.md +58 -39
- package/.codex/skills/spec-load/SKILL.md +45 -40
- package/.codex/skills/spec-map/SKILL.md +180 -182
- package/.codex/skills/spec-setup/SKILL.md +94 -76
- package/.codex/skills/team-coordinate/SKILL.md +346 -357
- package/.codex/skills/team-executor/SKILL.md +70 -112
- package/.codex/skills/team-lifecycle-v4/SKILL.md +311 -299
- package/.codex/skills/team-quality-assurance/SKILL.md +234 -227
- package/.codex/skills/team-review/SKILL.md +232 -225
- package/.codex/skills/team-tech-debt/SKILL.md +78 -100
- package/.codex/skills/team-testing/SKILL.md +242 -235
- package/.codex/skills/wiki-connect/SKILL.md +75 -0
- package/.codex/skills/wiki-digest/SKILL.md +87 -0
- package/README.md +9 -4
- package/README.zh-CN.md +9 -4
- 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/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/specs.d.ts +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/specs.js +75 -30
- package/dashboard/dist-server/dashboard/src/server/routes/specs.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/state/event-bus.d.ts +5 -0
- package/dashboard/dist-server/dashboard/src/server/state/event-bus.js +5 -0
- package/dashboard/dist-server/dashboard/src/server/state/event-bus.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 +10 -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 +22 -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/types.d.ts +3 -2
- package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +28 -2
- 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/hooks/constants.d.ts +3 -1
- package/dashboard/dist-server/src/hooks/constants.js +4 -2
- package/dashboard/dist-server/src/hooks/constants.js.map +1 -1
- package/dist/shared/agent-types.d.ts +4 -0
- package/dist/shared/agent-types.d.ts.map +1 -1
- package/dist/src/commands/collab.js +4 -4
- package/dist/src/commands/collab.js.map +1 -1
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +66 -1
- 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/spec.d.ts.map +1 -1
- package/dist/src/commands/spec.js +7 -2
- package/dist/src/commands/spec.js.map +1 -1
- package/dist/src/hooks/__tests__/statusline-visual-test.js +23 -1
- package/dist/src/hooks/__tests__/statusline-visual-test.js.map +1 -1
- package/dist/src/hooks/constants.d.ts +3 -1
- package/dist/src/hooks/constants.d.ts.map +1 -1
- package/dist/src/hooks/constants.js +4 -2
- package/dist/src/hooks/constants.js.map +1 -1
- package/dist/src/hooks/guards/index.d.ts +1 -0
- package/dist/src/hooks/guards/index.d.ts.map +1 -1
- package/dist/src/hooks/guards/index.js +1 -0
- package/dist/src/hooks/guards/index.js.map +1 -1
- package/dist/src/hooks/guards/spec-validator.d.ts +25 -0
- package/dist/src/hooks/guards/spec-validator.d.ts.map +1 -0
- package/dist/src/hooks/guards/spec-validator.js +66 -0
- package/dist/src/hooks/guards/spec-validator.js.map +1 -0
- package/dist/src/hooks/keyword-spec-injector.d.ts +21 -0
- package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -0
- package/dist/src/hooks/keyword-spec-injector.js +96 -0
- package/dist/src/hooks/keyword-spec-injector.js.map +1 -0
- package/dist/src/hooks/plugins/spec-injection-plugin.d.ts +2 -1
- package/dist/src/hooks/plugins/spec-injection-plugin.d.ts.map +1 -1
- package/dist/src/hooks/plugins/spec-injection-plugin.js +21 -12
- package/dist/src/hooks/plugins/spec-injection-plugin.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 +95 -9
- package/dist/src/hooks/skill-context.js.map +1 -1
- package/dist/src/hooks/spec-bridge.d.ts +40 -0
- package/dist/src/hooks/spec-bridge.d.ts.map +1 -0
- package/dist/src/hooks/spec-bridge.js +97 -0
- package/dist/src/hooks/spec-bridge.js.map +1 -0
- package/dist/src/hooks/spec-injector.d.ts.map +1 -1
- package/dist/src/hooks/spec-injector.js +18 -12
- package/dist/src/hooks/spec-injector.js.map +1 -1
- package/dist/src/hooks/statusline.d.ts.map +1 -1
- package/dist/src/hooks/statusline.js +6 -3
- package/dist/src/hooks/statusline.js.map +1 -1
- package/dist/src/team/phase-orchestrator.d.ts +52 -0
- package/dist/src/team/phase-orchestrator.d.ts.map +1 -0
- package/dist/src/team/phase-orchestrator.js +165 -0
- package/dist/src/team/phase-orchestrator.js.map +1 -0
- package/dist/src/team/phase-types.d.ts +51 -0
- package/dist/src/team/phase-types.d.ts.map +1 -0
- package/dist/src/team/phase-types.js +41 -0
- package/dist/src/team/phase-types.js.map +1 -0
- package/dist/src/tools/index.d.ts.map +1 -1
- package/dist/src/tools/index.js +6 -0
- package/dist/src/tools/index.js.map +1 -1
- 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/spec-entry-parser.d.ts +56 -0
- package/dist/src/tools/spec-entry-parser.d.ts.map +1 -0
- package/dist/src/tools/spec-entry-parser.js +196 -0
- package/dist/src/tools/spec-entry-parser.js.map +1 -0
- package/dist/src/tools/spec-init.d.ts.map +1 -1
- package/dist/src/tools/spec-init.js +66 -92
- package/dist/src/tools/spec-init.js.map +1 -1
- package/dist/src/tools/spec-keyword-index.d.ts +30 -0
- package/dist/src/tools/spec-keyword-index.d.ts.map +1 -0
- package/dist/src/tools/spec-keyword-index.js +101 -0
- package/dist/src/tools/spec-keyword-index.js.map +1 -0
- package/dist/src/tools/spec-loader.d.ts +3 -3
- package/dist/src/tools/spec-loader.d.ts.map +1 -1
- package/dist/src/tools/spec-loader.js +49 -23
- package/dist/src/tools/spec-loader.js.map +1 -1
- package/dist/src/tools/team-agents.d.ts +27 -0
- package/dist/src/tools/team-agents.d.ts.map +1 -0
- package/dist/src/tools/team-agents.js +362 -0
- package/dist/src/tools/team-agents.js.map +1 -0
- package/dist/src/tools/team-mailbox.d.ts +40 -0
- package/dist/src/tools/team-mailbox.d.ts.map +1 -0
- package/dist/src/tools/team-mailbox.js +384 -0
- package/dist/src/tools/team-mailbox.js.map +1 -0
- package/dist/src/tools/team-msg.d.ts +17 -8
- package/dist/src/tools/team-msg.d.ts.map +1 -1
- package/dist/src/tools/team-msg.js +110 -13
- package/dist/src/tools/team-msg.js.map +1 -1
- package/dist/src/tools/team-tasks-mcp.d.ts +27 -0
- package/dist/src/tools/team-tasks-mcp.d.ts.map +1 -0
- package/dist/src/tools/team-tasks-mcp.js +408 -0
- package/dist/src/tools/team-tasks-mcp.js.map +1 -0
- package/package.json +2 -1
- package/shared/agent-types.ts +4 -0
- package/templates/worktree-scope.json +9 -10
- package/templates/worktrees.json +26 -27
- package/workflows/analyze.md +816 -816
- package/workflows/brainstorm.md +480 -471
- package/workflows/codebase-rebuild.md +332 -332
- package/workflows/codebase-refresh.md +240 -240
- package/workflows/debug.md +16 -6
- package/workflows/execute.md +1 -1
- package/workflows/fork.md +100 -36
- package/workflows/harvest.md +420 -420
- package/workflows/integration-test.md +355 -343
- package/workflows/issue-discover.md +414 -414
- package/workflows/issue.md +14 -4
- package/workflows/learn.md +19 -5
- package/workflows/maestro.md +1 -0
- package/workflows/map.md +111 -111
- package/workflows/merge.md +113 -55
- package/workflows/milestone-complete.md +176 -176
- package/workflows/plan.md +1 -1
- package/workflows/quick.md +497 -497
- package/workflows/refactor.md +300 -300
- package/workflows/retrospective.md +61 -22
- package/workflows/review.md +17 -4
- package/workflows/roadmap.md +335 -335
- package/workflows/spec-generate.md +640 -640
- package/workflows/specs-add.md +46 -81
- package/workflows/specs-load.md +15 -17
- package/workflows/specs-setup.md +40 -161
- package/workflows/test.md +12 -2
- package/workflows/ui-style.md +9 -2
- 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
|
@@ -5,13 +5,15 @@ argument-hint: "\"task description\" [--discuss] [--full]"
|
|
|
5
5
|
allowed-tools: Read, Write, Edit, Bash, Glob, Grep, Agent, AskUserQuestion
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
<purpose>
|
|
9
|
+
Shortened pipeline for well-understood tasks. Creates a scratch directory, runs quick analysis, generates a plan, executes tasks, and optionally verifies results. Single agent, sequential flow — no CSV waves needed.
|
|
9
10
|
|
|
10
|
-
|
|
11
|
+
**Pipeline**: `[discuss] → analyze-q → plan → execute → [verify]`
|
|
11
12
|
|
|
12
|
-
|
|
13
|
+
Quick tasks default to minimal interaction. `--discuss` adds a decision extraction step. `--full` adds plan-checking and post-execution verification.
|
|
14
|
+
</purpose>
|
|
13
15
|
|
|
14
|
-
|
|
16
|
+
<context>
|
|
15
17
|
|
|
16
18
|
```bash
|
|
17
19
|
$maestro-quick "add rate limiting to /api/auth endpoints"
|
|
@@ -26,17 +28,17 @@ $maestro-quick "add dark mode toggle to settings page" --discuss --full
|
|
|
26
28
|
|
|
27
29
|
**Output**: `.workflow/scratch/{slug}/` with plan.json, execution results, optional verification
|
|
28
30
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
## Overview
|
|
31
|
+
</context>
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
**
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
<invariants>
|
|
34
|
+
1. **Speed over ceremony** — minimal overhead, get to implementation fast
|
|
35
|
+
2. **Follow existing patterns** — grep for 3+ similar implementations before writing new code
|
|
36
|
+
3. **Atomic commits** — one commit per quick task, descriptive message
|
|
37
|
+
4. **Scratch isolation** — all metadata stays in .workflow/scratch/{slug}/
|
|
38
|
+
5. **Works without init** — quick tasks function even without full .workflow/ setup
|
|
39
|
+
</invariants>
|
|
38
40
|
|
|
39
|
-
|
|
41
|
+
<execution>
|
|
40
42
|
|
|
41
43
|
### Step 1: Parse Arguments
|
|
42
44
|
|
|
@@ -143,9 +145,9 @@ Verification: {PASS|GAPS}
|
|
|
143
145
|
{endif}
|
|
144
146
|
```
|
|
145
147
|
|
|
146
|
-
|
|
148
|
+
</execution>
|
|
147
149
|
|
|
148
|
-
|
|
150
|
+
<error_codes>
|
|
149
151
|
|
|
150
152
|
| Code | Severity | Description | Recovery |
|
|
151
153
|
|------|----------|-------------|----------|
|
|
@@ -153,12 +155,13 @@ Verification: {PASS|GAPS}
|
|
|
153
155
|
| E002 | error | Scratch directory creation failed | Check permissions |
|
|
154
156
|
| W001 | warning | Verification found minor gaps | Report gaps, continue |
|
|
155
157
|
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
## Core Rules
|
|
158
|
+
</error_codes>
|
|
159
159
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
160
|
+
<success_criteria>
|
|
161
|
+
- [ ] Scratch directory created with config.json
|
|
162
|
+
- [ ] Analysis completed and context.md written
|
|
163
|
+
- [ ] Plan generated with subtasks
|
|
164
|
+
- [ ] All tasks executed and statuses updated
|
|
165
|
+
- [ ] Changes committed with descriptive message
|
|
166
|
+
- [ ] Completion report displayed
|
|
167
|
+
</success_criteria>
|
|
@@ -5,36 +5,10 @@ argument-hint: "\"<requirements>\" [-y|--yes] [--phases N] [--from-brainstorm SE
|
|
|
5
5
|
allowed-tools: spawn_agents_on_csv, Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
When `--yes` or `-y`: Auto-confirm strategy selection, skip interactive refinement rounds, use recommended defaults for decomposition mode and phase count.
|
|
11
|
-
|
|
12
|
-
# Maestro Roadmap (CSV Wave)
|
|
13
|
-
|
|
14
|
-
## Usage
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
$maestro-roadmap "Implement user authentication with OAuth and 2FA"
|
|
18
|
-
$maestro-roadmap -y "@requirements.md"
|
|
19
|
-
$maestro-roadmap --phases 4 "Build real-time notification system"
|
|
20
|
-
$maestro-roadmap --from-brainstorm WFS-001 "Enhance auth system"
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
**Flags**:
|
|
24
|
-
- `-y, --yes`: Skip all confirmations (auto mode)
|
|
25
|
-
- `--phases N`: Target number of roadmap phases (default: auto-determined)
|
|
26
|
-
- `--from-brainstorm SESSION-ID`: Import guidance-specification.md from brainstorm session as seed
|
|
27
|
-
|
|
28
|
-
**Output Directory**: `.workflow/.csv-wave/{session-id}/`
|
|
29
|
-
**Core Output**: `tasks.csv` (master state) + `results.csv` (final) + `discoveries.ndjson` (shared exploration) + `context.md` (human-readable report) + `.workflow/roadmap.md`
|
|
30
|
-
|
|
31
|
-
---
|
|
32
|
-
|
|
33
|
-
## Overview
|
|
34
|
-
|
|
8
|
+
<purpose>
|
|
35
9
|
2-wave roadmap generation using `spawn_agents_on_csv`. Wave 1 runs parallel requirement analysis agents to assess scope, risk, and dependencies. Wave 2 runs a single roadmap assembly agent that synthesizes analysis findings into a complete roadmap with phases, milestones, and success criteria.
|
|
36
10
|
|
|
37
|
-
**Core workflow**: Parse Requirements
|
|
11
|
+
**Core workflow**: Parse Requirements -> Parallel Analysis -> Roadmap Assembly -> Interactive Refinement -> Output
|
|
38
12
|
|
|
39
13
|
```
|
|
40
14
|
+---------------------------------------------------------------------------+
|
|
@@ -78,10 +52,32 @@ $maestro-roadmap --from-brainstorm WFS-001 "Enhance auth system"
|
|
|
78
52
|
| |
|
|
79
53
|
+---------------------------------------------------------------------------+
|
|
80
54
|
```
|
|
55
|
+
</purpose>
|
|
81
56
|
|
|
82
|
-
|
|
57
|
+
<context>
|
|
58
|
+
$ARGUMENTS -- requirement text or @file reference, plus optional flags.
|
|
59
|
+
|
|
60
|
+
**Usage**:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
$maestro-roadmap "Implement user authentication with OAuth and 2FA"
|
|
64
|
+
$maestro-roadmap -y "@requirements.md"
|
|
65
|
+
$maestro-roadmap --phases 4 "Build real-time notification system"
|
|
66
|
+
$maestro-roadmap --from-brainstorm WFS-001 "Enhance auth system"
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**Flags**:
|
|
70
|
+
- `-y, --yes`: Skip all confirmations (auto mode)
|
|
71
|
+
- `--phases N`: Target number of roadmap phases (default: auto-determined)
|
|
72
|
+
- `--from-brainstorm SESSION-ID`: Import guidance-specification.md from brainstorm session as seed
|
|
73
|
+
|
|
74
|
+
When `--yes` or `-y`: Auto-confirm strategy selection, skip interactive refinement rounds, use recommended defaults for decomposition mode and phase count.
|
|
75
|
+
|
|
76
|
+
**Output Directory**: `.workflow/.csv-wave/{session-id}/`
|
|
77
|
+
**Core Output**: `tasks.csv` (master state) + `results.csv` (final) + `discoveries.ndjson` (shared exploration) + `context.md` (human-readable report) + `.workflow/roadmap.md`
|
|
78
|
+
</context>
|
|
83
79
|
|
|
84
|
-
|
|
80
|
+
<csv_schema>
|
|
85
81
|
|
|
86
82
|
### tasks.csv (Master State)
|
|
87
83
|
|
|
@@ -111,22 +107,32 @@ id,title,description,analysis_focus,deps,context_from,wave,status,findings,error
|
|
|
111
107
|
### Per-Wave CSV (Temporary)
|
|
112
108
|
|
|
113
109
|
Each wave generates `wave-{N}.csv` with extra `prev_context` column.
|
|
110
|
+
</csv_schema>
|
|
114
111
|
|
|
115
|
-
|
|
112
|
+
<invariants>
|
|
113
|
+
1. **Start Immediately**: First action is session initialization, then Phase 1
|
|
114
|
+
2. **Wave Order is Sacred**: Never execute wave 2 before wave 1 completes and results are merged
|
|
115
|
+
3. **CSV is Source of Truth**: Master tasks.csv holds all state
|
|
116
|
+
4. **Context Propagation**: prev_context built from master CSV, not from memory
|
|
117
|
+
5. **Discovery Board is Append-Only**: Never clear, modify, or recreate discoveries.ndjson
|
|
118
|
+
6. **Graceful Degradation**: If analysis fails, assembly proceeds with requirement text only
|
|
119
|
+
7. **Cleanup Temp Files**: Remove wave-{N}.csv after results are merged
|
|
120
|
+
8. **DO NOT STOP**: Continuous execution until all waves complete
|
|
121
|
+
</invariants>
|
|
122
|
+
|
|
123
|
+
<execution>
|
|
116
124
|
|
|
117
|
-
|
|
125
|
+
### Output Artifacts
|
|
118
126
|
|
|
119
127
|
| File | Purpose | Lifecycle |
|
|
120
128
|
|------|---------|-----------|
|
|
121
|
-
| `tasks.csv` | Master state
|
|
129
|
+
| `tasks.csv` | Master state -- all tasks with status/findings | Updated after each wave |
|
|
122
130
|
| `wave-{N}.csv` | Per-wave input (temporary) | Created before wave, deleted after |
|
|
123
131
|
| `results.csv` | Final export of all task results | Created in Phase 3 |
|
|
124
132
|
| `discoveries.ndjson` | Shared exploration board | Append-only, carries across waves |
|
|
125
133
|
| `context.md` | Human-readable roadmap generation report | Created in Phase 3 |
|
|
126
134
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
## Session Structure
|
|
135
|
+
### Session Structure
|
|
130
136
|
|
|
131
137
|
```
|
|
132
138
|
.workflow/.csv-wave/roadmap-{slug}-{date}/
|
|
@@ -137,10 +143,6 @@ Each wave generates `wave-{N}.csv` with extra `prev_context` column.
|
|
|
137
143
|
+-- wave-{N}.csv (temporary)
|
|
138
144
|
```
|
|
139
145
|
|
|
140
|
-
---
|
|
141
|
-
|
|
142
|
-
## Implementation
|
|
143
|
-
|
|
144
146
|
### Session Initialization
|
|
145
147
|
|
|
146
148
|
```javascript
|
|
@@ -168,15 +170,13 @@ const sessionFolder = `.workflow/.csv-wave/${sessionId}`
|
|
|
168
170
|
Bash(`mkdir -p ${sessionFolder}`)
|
|
169
171
|
```
|
|
170
172
|
|
|
171
|
-
---
|
|
172
|
-
|
|
173
173
|
### Phase 1: Requirement Parsing + CSV Generation
|
|
174
174
|
|
|
175
175
|
**Objective**: Parse requirements, assess uncertainty, select strategy, generate tasks.csv.
|
|
176
176
|
|
|
177
177
|
**Decomposition Rules**:
|
|
178
178
|
|
|
179
|
-
1. **Input parsing**: Parse `{requirementArg}`
|
|
179
|
+
1. **Input parsing**: Parse `{requirementArg}` -- direct text or `@file` reference
|
|
180
180
|
2. **Brainstorm import**: If `--from-brainstorm`, read `guidance-specification.md` for enriched context (problem statement, features, non-goals, terminology)
|
|
181
181
|
3. **Codebase detection**: Check for source files; if found, add codebase context to analysis prompts
|
|
182
182
|
4. **Load project specs**: Read `.workflow/specs/` for constraint awareness
|
|
@@ -195,12 +195,10 @@ Strategy: >= 3 high -> progressive, >= 3 low -> direct, else -> ask user (or aut
|
|
|
195
195
|
|
|
196
196
|
6. **CSV generation**: 3 analysis tasks (wave 1) + 1 assembly task (wave 2).
|
|
197
197
|
|
|
198
|
-
7. **Wave computation**: Simple 2-wave
|
|
198
|
+
7. **Wave computation**: Simple 2-wave -- all analysis tasks = wave 1, assembly = wave 2.
|
|
199
199
|
|
|
200
200
|
**User validation**: Display task breakdown + strategy (skip if AUTO_YES).
|
|
201
201
|
|
|
202
|
-
---
|
|
203
|
-
|
|
204
202
|
### Phase 2: Wave Execution Engine
|
|
205
203
|
|
|
206
204
|
**Objective**: Execute analysis and assembly wave-by-wave via spawn_agents_on_csv.
|
|
@@ -241,7 +239,7 @@ spawn_agents_on_csv({
|
|
|
241
239
|
|
|
242
240
|
1. Read master `tasks.csv`
|
|
243
241
|
2. Filter rows where `wave == 2` AND `status == pending`
|
|
244
|
-
3. Check deps
|
|
242
|
+
3. Check deps -- if all wave 1 tasks failed, use degraded mode (requirement text only)
|
|
245
243
|
4. Build `prev_context` from wave 1 findings:
|
|
246
244
|
```
|
|
247
245
|
[Task 1: Scope Analysis] Features: auth, OAuth, 2FA. MVP: basic auth + OAuth. Size: M...
|
|
@@ -254,8 +252,6 @@ spawn_agents_on_csv({
|
|
|
254
252
|
8. Merge results into master `tasks.csv`
|
|
255
253
|
9. Delete `wave-2.csv`
|
|
256
254
|
|
|
257
|
-
---
|
|
258
|
-
|
|
259
255
|
### Phase 3: Results Aggregation
|
|
260
256
|
|
|
261
257
|
**Objective**: Generate final results, optional refinement, and write roadmap.
|
|
@@ -321,11 +317,9 @@ Next steps:
|
|
|
321
317
|
manage-status -- View project dashboard
|
|
322
318
|
```
|
|
323
319
|
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
## Shared Discovery Board Protocol
|
|
320
|
+
### Shared Discovery Board Protocol
|
|
327
321
|
|
|
328
|
-
|
|
322
|
+
#### Standard Discovery Types
|
|
329
323
|
|
|
330
324
|
| Type | Dedup Key | Data Schema | Description |
|
|
331
325
|
|------|-----------|-------------|-------------|
|
|
@@ -334,7 +328,7 @@ Next steps:
|
|
|
334
328
|
| `convention` | singleton | `{naming, imports, formatting}` | Project code conventions |
|
|
335
329
|
| `tech_stack` | singleton | `{framework, language, tools[]}` | Technology stack info |
|
|
336
330
|
|
|
337
|
-
|
|
331
|
+
#### Domain Discovery Types
|
|
338
332
|
|
|
339
333
|
| Type | Dedup Key | Data Schema | Description |
|
|
340
334
|
|------|-----------|-------------|-------------|
|
|
@@ -343,7 +337,7 @@ Next steps:
|
|
|
343
337
|
| `dependency_constraint` | `data.from+data.to` | `{from, to, type, strength}` | Dependency between features |
|
|
344
338
|
| `external_dependency` | `data.name` | `{name, type, risk, alternative}` | External system dependency |
|
|
345
339
|
|
|
346
|
-
|
|
340
|
+
#### Protocol
|
|
347
341
|
|
|
348
342
|
1. **Read** `{session_folder}/discoveries.ndjson` before own analysis
|
|
349
343
|
2. **Skip covered**: If discovery of same type + dedup key exists, skip
|
|
@@ -354,15 +348,13 @@ Next steps:
|
|
|
354
348
|
```bash
|
|
355
349
|
echo '{"ts":"<ISO>","worker":"{id}","type":"risk_factor","data":{"name":"OAuth provider rate limits","severity":"medium","probability":"high","mitigation":"Implement token caching and retry logic"}}' >> {session_folder}/discoveries.ndjson
|
|
356
350
|
```
|
|
351
|
+
</execution>
|
|
357
352
|
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
## Error Handling
|
|
361
|
-
|
|
353
|
+
<error_codes>
|
|
362
354
|
| Error | Resolution |
|
|
363
355
|
|-------|------------|
|
|
364
356
|
| No requirement text provided | Abort with error: "Requirement text or @file required" |
|
|
365
|
-
| Brainstorm session not found | Abort with error: "Session {id} not found"
|
|
357
|
+
| Brainstorm session not found | Abort with error: "Session {id} not found" -- list available sessions |
|
|
366
358
|
| @file not found | Abort with error: "File {path} not found" |
|
|
367
359
|
| Analysis agent timeout | Mark as failed, assembly uses available findings |
|
|
368
360
|
| All analysis agents failed | Assembly runs in degraded mode (requirement text only) |
|
|
@@ -371,16 +363,16 @@ echo '{"ts":"<ISO>","worker":"{id}","type":"risk_factor","data":{"name":"OAuth p
|
|
|
371
363
|
| CSV parse error | Validate format, show line number |
|
|
372
364
|
| discoveries.ndjson corrupt | Ignore malformed lines |
|
|
373
365
|
| Max refinement rounds (3) | Force proceed with current roadmap |
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
366
|
+
</error_codes>
|
|
367
|
+
|
|
368
|
+
<success_criteria>
|
|
369
|
+
- [ ] Requirements parsed from text, @file, or brainstorm session
|
|
370
|
+
- [ ] Uncertainty assessed and decomposition strategy selected
|
|
371
|
+
- [ ] Wave 1 analysis agents completed (scope, risk, dependency)
|
|
372
|
+
- [ ] Wave 2 assembly agent produced roadmap.md
|
|
373
|
+
- [ ] Interactive refinement offered (or skipped with -y)
|
|
374
|
+
- [ ] .workflow/roadmap.md written with phases, milestones, success criteria
|
|
375
|
+
- [ ] state.json updated with milestones and current_phase
|
|
376
|
+
- [ ] context.md generated with analysis summary
|
|
377
|
+
- [ ] Completion report displayed with next steps
|
|
378
|
+
</success_criteria>
|
|
@@ -5,36 +5,10 @@ argument-hint: "\"<idea or @file>\" [-y|--yes] [--skip-research] [--from-brainst
|
|
|
5
5
|
allowed-tools: spawn_agents_on_csv, Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
When `--yes` or `-y`: Auto-confirm all interactive decisions, skip requirement clarification rounds, use recommended defaults for spec type and depth.
|
|
11
|
-
|
|
12
|
-
# Maestro Spec Generate (CSV Wave)
|
|
13
|
-
|
|
14
|
-
## Usage
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
$maestro-spec-generate "Build a real-time collaboration platform"
|
|
18
|
-
$maestro-spec-generate -y "@requirements.md"
|
|
19
|
-
$maestro-spec-generate --skip-research "CLI workflow orchestration tool"
|
|
20
|
-
$maestro-spec-generate --from-brainstorm WFS-001 "Enhance auth system"
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
**Flags**:
|
|
24
|
-
- `-y, --yes`: Skip all confirmations (auto mode)
|
|
25
|
-
- `--skip-research`: Skip Wave 1 research, jump directly to document generation
|
|
26
|
-
- `--from-brainstorm SESSION-ID`: Import guidance-specification.md from brainstorm session as seed
|
|
27
|
-
|
|
28
|
-
**Output Directory**: `.workflow/.csv-wave/{session-id}/`
|
|
29
|
-
**Core Output**: `tasks.csv` (master state) + `results.csv` (final) + `discoveries.ndjson` (shared exploration) + `context.md` (human-readable report) + spec package in `.workflow/.spec/SPEC-{slug}-{date}/`
|
|
30
|
-
|
|
31
|
-
---
|
|
32
|
-
|
|
33
|
-
## Overview
|
|
34
|
-
|
|
8
|
+
<purpose>
|
|
35
9
|
2-wave specification generation using `spawn_agents_on_csv`. Wave 1 runs parallel research agents to gather domain, competitive, and technical context. Wave 2 runs a single synthesis agent that produces the full 7-phase document chain (product brief, PRD, architecture, data model, API spec, UI wireframes, epic-to-roadmap) using Wave 1 research as context.
|
|
36
10
|
|
|
37
|
-
**Core workflow**: Parse Input
|
|
11
|
+
**Core workflow**: Parse Input -> Parallel Research -> Sequential Document Chain -> Readiness Check -> Roadmap Output
|
|
38
12
|
|
|
39
13
|
```
|
|
40
14
|
+---------------------------------------------------------------------------+
|
|
@@ -79,10 +53,32 @@ $maestro-spec-generate --from-brainstorm WFS-001 "Enhance auth system"
|
|
|
79
53
|
| |
|
|
80
54
|
+---------------------------------------------------------------------------+
|
|
81
55
|
```
|
|
56
|
+
</purpose>
|
|
82
57
|
|
|
83
|
-
|
|
58
|
+
<context>
|
|
59
|
+
$ARGUMENTS -- idea/topic text or @file reference, plus optional flags.
|
|
60
|
+
|
|
61
|
+
**Usage**:
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
$maestro-spec-generate "Build a real-time collaboration platform"
|
|
65
|
+
$maestro-spec-generate -y "@requirements.md"
|
|
66
|
+
$maestro-spec-generate --skip-research "CLI workflow orchestration tool"
|
|
67
|
+
$maestro-spec-generate --from-brainstorm WFS-001 "Enhance auth system"
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
**Flags**:
|
|
71
|
+
- `-y, --yes`: Skip all confirmations (auto mode)
|
|
72
|
+
- `--skip-research`: Skip Wave 1 research, jump directly to document generation
|
|
73
|
+
- `--from-brainstorm SESSION-ID`: Import guidance-specification.md from brainstorm session as seed
|
|
74
|
+
|
|
75
|
+
When `--yes` or `-y`: Auto-confirm all interactive decisions, skip requirement clarification rounds, use recommended defaults for spec type and depth.
|
|
76
|
+
|
|
77
|
+
**Output Directory**: `.workflow/.csv-wave/{session-id}/`
|
|
78
|
+
**Core Output**: `tasks.csv` (master state) + `results.csv` (final) + `discoveries.ndjson` (shared exploration) + `context.md` (human-readable report) + spec package in `.workflow/.spec/SPEC-{slug}-{date}/`
|
|
79
|
+
</context>
|
|
84
80
|
|
|
85
|
-
|
|
81
|
+
<csv_schema>
|
|
86
82
|
|
|
87
83
|
### tasks.csv (Master State)
|
|
88
84
|
|
|
@@ -114,23 +110,33 @@ id,title,description,research_focus,doc_phase,deps,context_from,wave,status,find
|
|
|
114
110
|
### Per-Wave CSV (Temporary)
|
|
115
111
|
|
|
116
112
|
Each wave generates `wave-{N}.csv` with extra `prev_context` column.
|
|
113
|
+
</csv_schema>
|
|
117
114
|
|
|
118
|
-
|
|
115
|
+
<invariants>
|
|
116
|
+
1. **Start Immediately**: First action is session initialization, then Phase 1
|
|
117
|
+
2. **Wave Order is Sacred**: Never execute wave 2 before wave 1 completes and results are merged
|
|
118
|
+
3. **CSV is Source of Truth**: Master tasks.csv holds all state
|
|
119
|
+
4. **Context Propagation**: prev_context built from master CSV, not from memory
|
|
120
|
+
5. **Discovery Board is Append-Only**: Never clear, modify, or recreate discoveries.ndjson
|
|
121
|
+
6. **Graceful Degradation**: If research fails, document chain proceeds with seed input only
|
|
122
|
+
7. **Cleanup Temp Files**: Remove wave-{N}.csv after results are merged
|
|
123
|
+
8. **DO NOT STOP**: Continuous execution until all waves complete
|
|
124
|
+
</invariants>
|
|
125
|
+
|
|
126
|
+
<execution>
|
|
119
127
|
|
|
120
|
-
|
|
128
|
+
### Output Artifacts
|
|
121
129
|
|
|
122
130
|
| File | Purpose | Lifecycle |
|
|
123
131
|
|------|---------|-----------|
|
|
124
|
-
| `tasks.csv` | Master state
|
|
132
|
+
| `tasks.csv` | Master state -- all tasks with status/findings | Updated after each wave |
|
|
125
133
|
| `wave-{N}.csv` | Per-wave input (temporary) | Created before wave, deleted after |
|
|
126
134
|
| `results.csv` | Final export of all task results | Created in Phase 3 |
|
|
127
135
|
| `discoveries.ndjson` | Shared exploration board | Append-only, carries across waves |
|
|
128
136
|
| `context.md` | Human-readable spec generation report | Created in Phase 3 |
|
|
129
137
|
| `spec-config.json` | Session metadata and phase tracking | Created in Phase 1 |
|
|
130
138
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
## Session Structure
|
|
139
|
+
### Session Structure
|
|
134
140
|
|
|
135
141
|
```
|
|
136
142
|
.workflow/.csv-wave/spec-generate-{slug}-{date}/
|
|
@@ -163,10 +169,6 @@ Each wave generates `wave-{N}.csv` with extra `prev_context` column.
|
|
|
163
169
|
+-- roadmap.md
|
|
164
170
|
```
|
|
165
171
|
|
|
166
|
-
---
|
|
167
|
-
|
|
168
|
-
## Implementation
|
|
169
|
-
|
|
170
172
|
### Session Initialization
|
|
171
173
|
|
|
172
174
|
```javascript
|
|
@@ -193,15 +195,13 @@ const sessionFolder = `.workflow/.csv-wave/${sessionId}`
|
|
|
193
195
|
Bash(`mkdir -p ${sessionFolder}`)
|
|
194
196
|
```
|
|
195
197
|
|
|
196
|
-
---
|
|
197
|
-
|
|
198
198
|
### Phase 1: Input Parsing + CSV Generation
|
|
199
199
|
|
|
200
200
|
**Objective**: Parse input, detect type, initialize session, generate tasks.csv.
|
|
201
201
|
|
|
202
202
|
**Decomposition Rules**:
|
|
203
203
|
|
|
204
|
-
1. **Input parsing**: Parse `{topicArg}`
|
|
204
|
+
1. **Input parsing**: Parse `{topicArg}` -- direct text, `@file` reference, or brainstorm import
|
|
205
205
|
2. **Brainstorm import**: If `--from-brainstorm`, read `guidance-specification.md` as enriched seed
|
|
206
206
|
3. **Codebase detection**: Check for source files (*.ts, *.js, *.py); if found, add codebase context to research prompts
|
|
207
207
|
4. **Session init**: Create `spec-config.json` with session metadata
|
|
@@ -214,12 +214,10 @@ Bash(`mkdir -p ${sessionFolder}`)
|
|
|
214
214
|
| `--skip-research` | 0 (skipped) | 1 document chain agent (wave 1) |
|
|
215
215
|
| `--from-brainstorm` | 3 research agents (enriched) | 1 document chain agent |
|
|
216
216
|
|
|
217
|
-
6. **Wave computation**: Simple 2-wave
|
|
217
|
+
6. **Wave computation**: Simple 2-wave -- all research tasks = wave 1, document chain = wave 2.
|
|
218
218
|
|
|
219
219
|
**User validation**: Display task breakdown (skip if AUTO_YES).
|
|
220
220
|
|
|
221
|
-
---
|
|
222
|
-
|
|
223
221
|
### Phase 2: Wave Execution Engine
|
|
224
222
|
|
|
225
223
|
**Objective**: Execute research and document generation wave-by-wave via spawn_agents_on_csv.
|
|
@@ -261,7 +259,7 @@ spawn_agents_on_csv({
|
|
|
261
259
|
|
|
262
260
|
1. Read master `tasks.csv`
|
|
263
261
|
2. Filter rows where `wave == 2` AND `status == pending`
|
|
264
|
-
3. Check deps
|
|
262
|
+
3. Check deps -- if all wave 1 tasks failed, use degraded mode (basic seed only)
|
|
265
263
|
4. Build `prev_context` from wave 1 findings:
|
|
266
264
|
```
|
|
267
265
|
[Task 1: Domain Research] Target users: developers building workflow tools. Market trends: ...
|
|
@@ -273,15 +271,13 @@ spawn_agents_on_csv({
|
|
|
273
271
|
7. Merge results into master `tasks.csv`
|
|
274
272
|
8. Delete `wave-2.csv`
|
|
275
273
|
|
|
276
|
-
---
|
|
277
|
-
|
|
278
274
|
### Phase 3: Results Aggregation
|
|
279
275
|
|
|
280
276
|
**Objective**: Generate final results, readiness check, and write spec package.
|
|
281
277
|
|
|
282
278
|
1. Read final master `tasks.csv`
|
|
283
279
|
2. Export as `results.csv`
|
|
284
|
-
3. **Readiness check**
|
|
280
|
+
3. **Readiness check** -- score on 4 dimensions (25% each):
|
|
285
281
|
- Completeness: all required documents generated with substantive content
|
|
286
282
|
- Consistency: glossary terms used uniformly, scope containment
|
|
287
283
|
- Traceability: goals -> requirements -> architecture -> epics chain
|
|
@@ -335,11 +331,9 @@ spawn_agents_on_csv({
|
|
|
335
331
|
7. Write `.workflow/roadmap.md`
|
|
336
332
|
8. Display summary.
|
|
337
333
|
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
## Shared Discovery Board Protocol
|
|
334
|
+
### Shared Discovery Board Protocol
|
|
341
335
|
|
|
342
|
-
|
|
336
|
+
#### Standard Discovery Types
|
|
343
337
|
|
|
344
338
|
| Type | Dedup Key | Data Schema | Description |
|
|
345
339
|
|------|-----------|-------------|-------------|
|
|
@@ -348,7 +342,7 @@ spawn_agents_on_csv({
|
|
|
348
342
|
| `convention` | singleton | `{naming, imports, formatting}` | Project code conventions |
|
|
349
343
|
| `tech_stack` | singleton | `{framework, language, tools[]}` | Technology stack info |
|
|
350
344
|
|
|
351
|
-
|
|
345
|
+
#### Domain Discovery Types
|
|
352
346
|
|
|
353
347
|
| Type | Dedup Key | Data Schema | Description |
|
|
354
348
|
|------|-----------|-------------|-------------|
|
|
@@ -357,7 +351,7 @@ spawn_agents_on_csv({
|
|
|
357
351
|
| `market_trend` | `data.name` | `{name, impact, relevance}` | Market trend |
|
|
358
352
|
| `tech_constraint` | `data.name` | `{name, type, severity, mitigation}` | Technical constraint |
|
|
359
353
|
|
|
360
|
-
|
|
354
|
+
#### Protocol
|
|
361
355
|
|
|
362
356
|
1. **Read** `{session_folder}/discoveries.ndjson` before own analysis
|
|
363
357
|
2. **Skip covered**: If discovery of same type + dedup key exists, skip
|
|
@@ -368,15 +362,13 @@ spawn_agents_on_csv({
|
|
|
368
362
|
```bash
|
|
369
363
|
echo '{"ts":"<ISO>","worker":"{id}","type":"domain_term","data":{"term":"workflow","definition":"A sequence of orchestrated tasks","aliases":["pipeline","process"]}}' >> {session_folder}/discoveries.ndjson
|
|
370
364
|
```
|
|
365
|
+
</execution>
|
|
371
366
|
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
## Error Handling
|
|
375
|
-
|
|
367
|
+
<error_codes>
|
|
376
368
|
| Error | Resolution |
|
|
377
369
|
|-------|------------|
|
|
378
370
|
| No idea/topic provided | Abort with error: "Idea or topic text required" |
|
|
379
|
-
| Brainstorm session not found | Abort with error: "Session {id} not found"
|
|
371
|
+
| Brainstorm session not found | Abort with error: "Session {id} not found" -- list available sessions |
|
|
380
372
|
| @file not found | Abort with error: "File {path} not found" |
|
|
381
373
|
| Research agent timeout | Mark as failed, document chain uses available findings |
|
|
382
374
|
| All research agents failed | Document chain runs in degraded mode (seed only) |
|
|
@@ -384,16 +376,16 @@ echo '{"ts":"<ISO>","worker":"{id}","type":"domain_term","data":{"term":"workflo
|
|
|
384
376
|
| CSV parse error | Validate format, show line number |
|
|
385
377
|
| discoveries.ndjson corrupt | Ignore malformed lines |
|
|
386
378
|
| Readiness score < 60% | Log issues, proceed with available output |
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
379
|
+
</error_codes>
|
|
380
|
+
|
|
381
|
+
<success_criteria>
|
|
382
|
+
- [ ] Input parsed from text, @file, or brainstorm session
|
|
383
|
+
- [ ] Session initialized with spec-config.json and tasks.csv
|
|
384
|
+
- [ ] Wave 1 research agents completed (domain, competitive, tech stack)
|
|
385
|
+
- [ ] Wave 2 document chain produced 7-phase spec package
|
|
386
|
+
- [ ] Readiness check scored on completeness, consistency, traceability, depth
|
|
387
|
+
- [ ] Spec package written to .workflow/.spec/SPEC-{slug}-{date}/
|
|
388
|
+
- [ ] .workflow/roadmap.md written
|
|
389
|
+
- [ ] context.md generated with research and spec summary
|
|
390
|
+
- [ ] Completion report displayed with quality score and next steps
|
|
391
|
+
</success_criteria>
|