maestro-flow 0.4.11 → 0.4.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.
Files changed (166) hide show
  1. package/.agents/agents/cli-explore-agent.md +1 -3
  2. package/.agents/agents/cross-role-reviewer.md +173 -0
  3. package/.agents/agents/role-design-author.md +218 -0
  4. package/.agents/agents/ui-design-agent.md +1 -18
  5. package/.agents/agents/workflow-analyzer.md +1 -1
  6. package/.agents/agents/workflow-external-researcher.md +1 -1
  7. package/.agents/skills/maestro/SKILL.md +61 -27
  8. package/.agents/skills/maestro-analyze/SKILL.md +30 -4
  9. package/.agents/skills/maestro-blueprint/SKILL.md +132 -0
  10. package/.agents/skills/maestro-brainstorm/SKILL.md +119 -103
  11. package/.agents/skills/maestro-help/SKILL.md +48 -14
  12. package/.agents/skills/maestro-help/index/catalog.json +29 -11
  13. package/.agents/skills/maestro-help/phases/01-parse-intent.md +1 -1
  14. package/.agents/skills/maestro-help/phases/02-search-present.md +6 -4
  15. package/.agents/skills/maestro-help/phases/03-workflow-guide.md +60 -33
  16. package/.agents/skills/maestro-init/SKILL.md +3 -3
  17. package/.agents/skills/maestro-milestone-audit/SKILL.md +5 -3
  18. package/.agents/skills/maestro-milestone-complete/SKILL.md +7 -5
  19. package/.agents/skills/maestro-plan/SKILL.md +14 -4
  20. package/.agents/skills/maestro-ralph/SKILL.md +297 -226
  21. package/.agents/skills/maestro-ralph-execute/SKILL.md +81 -67
  22. package/.agents/skills/maestro-roadmap/SKILL.md +42 -81
  23. package/.agents/skills/quality-auto-test/SKILL.md +1 -1
  24. package/.agents/skills/team-lifecycle-v4/roles/analyst/role.md +1 -1
  25. package/.agents/skills/team-lifecycle-v4/roles/reviewer/commands/review-spec.md +2 -2
  26. package/.agents/skills/team-lifecycle-v4/roles/writer/role.md +1 -1
  27. package/.agents/skills/team-lifecycle-v4/templates/architecture.md +3 -3
  28. package/.agents/skills/team-lifecycle-v4/templates/epics.md +2 -2
  29. package/.agents/skills/team-lifecycle-v4/templates/product-brief.md +3 -3
  30. package/.agents/skills/team-lifecycle-v4/templates/requirements.md +2 -2
  31. package/.agy/agents/cli-explore-agent.md +1 -3
  32. package/.agy/agents/cross-role-reviewer.md +170 -0
  33. package/.agy/agents/role-design-author.md +215 -0
  34. package/.agy/agents/ui-design-agent.md +1 -18
  35. package/.agy/agents/workflow-analyzer.md +1 -1
  36. package/.agy/agents/workflow-external-researcher.md +1 -1
  37. package/.agy/skills/maestro/SKILL.md +61 -27
  38. package/.agy/skills/maestro-analyze/SKILL.md +30 -4
  39. package/.agy/skills/maestro-blueprint/SKILL.md +132 -0
  40. package/.agy/skills/maestro-brainstorm/SKILL.md +119 -103
  41. package/.agy/skills/maestro-help/SKILL.md +48 -14
  42. package/.agy/skills/maestro-help/index/catalog.json +29 -11
  43. package/.agy/skills/maestro-help/phases/01-parse-intent.md +1 -1
  44. package/.agy/skills/maestro-help/phases/02-search-present.md +6 -4
  45. package/.agy/skills/maestro-help/phases/03-workflow-guide.md +60 -33
  46. package/.agy/skills/maestro-init/SKILL.md +3 -3
  47. package/.agy/skills/maestro-milestone-audit/SKILL.md +5 -3
  48. package/.agy/skills/maestro-milestone-complete/SKILL.md +7 -5
  49. package/.agy/skills/maestro-plan/SKILL.md +14 -4
  50. package/.agy/skills/maestro-ralph/SKILL.md +297 -226
  51. package/.agy/skills/maestro-ralph-execute/SKILL.md +81 -67
  52. package/.agy/skills/maestro-roadmap/SKILL.md +42 -81
  53. package/.agy/skills/quality-auto-test/SKILL.md +1 -1
  54. package/.agy/skills/team-lifecycle-v4/roles/analyst/role.md +1 -1
  55. package/.agy/skills/team-lifecycle-v4/roles/reviewer/commands/review-spec.md +2 -2
  56. package/.agy/skills/team-lifecycle-v4/roles/writer/role.md +1 -1
  57. package/.agy/skills/team-lifecycle-v4/templates/architecture.md +3 -3
  58. package/.agy/skills/team-lifecycle-v4/templates/epics.md +2 -2
  59. package/.agy/skills/team-lifecycle-v4/templates/product-brief.md +3 -3
  60. package/.agy/skills/team-lifecycle-v4/templates/requirements.md +2 -2
  61. package/.claude/agents/cli-explore-agent.md +1 -3
  62. package/.claude/agents/cross-role-reviewer.md +171 -0
  63. package/.claude/agents/role-design-author.md +216 -0
  64. package/.claude/agents/ui-design-agent.md +1 -18
  65. package/.claude/agents/workflow-analyzer.md +1 -1
  66. package/.claude/agents/workflow-external-researcher.md +1 -1
  67. package/.claude/commands/maestro-analyze.md +30 -4
  68. package/.claude/commands/maestro-blueprint.md +130 -0
  69. package/.claude/commands/maestro-brainstorm.md +132 -116
  70. package/.claude/commands/maestro-init.md +3 -3
  71. package/.claude/commands/maestro-milestone-audit.md +5 -3
  72. package/.claude/commands/maestro-milestone-complete.md +7 -5
  73. package/.claude/commands/maestro-plan.md +14 -4
  74. package/.claude/commands/maestro-ralph-execute.md +81 -67
  75. package/.claude/commands/maestro-ralph.md +297 -226
  76. package/.claude/commands/maestro-roadmap.md +42 -81
  77. package/.claude/commands/maestro.md +61 -27
  78. package/.claude/commands/quality-auto-test.md +1 -1
  79. package/.claude/skills/maestro-help/SKILL.md +48 -14
  80. package/.claude/skills/maestro-help/index/catalog.json +29 -11
  81. package/.claude/skills/maestro-help/phases/01-parse-intent.md +1 -1
  82. package/.claude/skills/maestro-help/phases/02-search-present.md +6 -4
  83. package/.claude/skills/maestro-help/phases/03-workflow-guide.md +60 -33
  84. package/.claude/skills/team-lifecycle-v4/roles/analyst/role.md +1 -1
  85. package/.claude/skills/team-lifecycle-v4/roles/reviewer/commands/review-spec.md +2 -2
  86. package/.claude/skills/team-lifecycle-v4/roles/writer/role.md +1 -1
  87. package/.claude/skills/team-lifecycle-v4/templates/architecture.md +3 -3
  88. package/.claude/skills/team-lifecycle-v4/templates/epics.md +2 -2
  89. package/.claude/skills/team-lifecycle-v4/templates/product-brief.md +3 -3
  90. package/.claude/skills/team-lifecycle-v4/templates/requirements.md +2 -2
  91. package/.codex/skills/maestro/SKILL.md +75 -38
  92. package/.codex/skills/maestro-amend/SKILL.md +157 -0
  93. package/.codex/skills/maestro-analyze/SKILL.md +71 -23
  94. package/.codex/skills/maestro-blueprint/SKILL.md +122 -0
  95. package/.codex/skills/maestro-brainstorm/SKILL.md +135 -45
  96. package/.codex/skills/maestro-composer/SKILL.md +1 -1
  97. package/.codex/skills/maestro-execute/SKILL.md +13 -4
  98. package/.codex/skills/maestro-help/SKILL.md +28 -18
  99. package/.codex/skills/maestro-help/catalog.json +29 -11
  100. package/.codex/skills/maestro-init/SKILL.md +7 -7
  101. package/.codex/skills/maestro-plan/SKILL.md +27 -9
  102. package/.codex/skills/maestro-ralph/SKILL.md +740 -601
  103. package/.codex/skills/maestro-roadmap/SKILL.md +55 -72
  104. package/.codex/skills/maestro-update/SKILL.md +169 -0
  105. package/.codex/skills/maestro-verify/SKILL.md +11 -2
  106. package/.codex/skills/manage-codebase-rebuild/SKILL.md +2 -2
  107. package/.codex/skills/manage-harvest/SKILL.md +10 -2
  108. package/.codex/skills/quality-retrospective/SKILL.md +9 -2
  109. package/.codex/skills/team-lifecycle-v4/roles/analyst/role.md +2 -2
  110. package/.codex/skills/team-lifecycle-v4/roles/reviewer/commands/review-spec.md +2 -2
  111. package/.codex/skills/team-lifecycle-v4/roles/writer/role.md +1 -1
  112. package/.codex/skills/team-lifecycle-v4/templates/architecture.md +3 -3
  113. package/.codex/skills/team-lifecycle-v4/templates/epics.md +2 -2
  114. package/.codex/skills/team-lifecycle-v4/templates/product-brief.md +3 -3
  115. package/.codex/skills/team-lifecycle-v4/templates/requirements.md +2 -2
  116. package/README.md +8 -8
  117. package/README.zh-CN.md +8 -8
  118. package/dashboard/dist-server/dashboard/src/server/routes/settings.js +3 -3
  119. package/dashboard/dist-server/dashboard/src/server/routes/settings.js.map +1 -1
  120. package/dist/src/agents/cli-agent-runner.d.ts.map +1 -1
  121. package/dist/src/agents/cli-agent-runner.js +13 -7
  122. package/dist/src/agents/cli-agent-runner.js.map +1 -1
  123. package/dist/src/commands/spec.d.ts.map +1 -1
  124. package/dist/src/commands/spec.js +8 -1
  125. package/dist/src/commands/spec.js.map +1 -1
  126. package/dist/src/tools/spec-init.d.ts +16 -2
  127. package/dist/src/tools/spec-init.d.ts.map +1 -1
  128. package/dist/src/tools/spec-init.js +58 -187
  129. package/dist/src/tools/spec-init.js.map +1 -1
  130. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  131. package/dist/src/tools/spec-loader.js +16 -16
  132. package/dist/src/tools/spec-loader.js.map +1 -1
  133. package/dist/src/tools/spec-seeds.d.ts +33 -0
  134. package/dist/src/tools/spec-seeds.d.ts.map +1 -0
  135. package/dist/src/tools/spec-seeds.js +200 -0
  136. package/dist/src/tools/spec-seeds.js.map +1 -0
  137. package/dist/src/tools/spec-writer.d.ts.map +1 -1
  138. package/dist/src/tools/spec-writer.js +7 -9
  139. package/dist/src/tools/spec-writer.js.map +1 -1
  140. package/dist/src/utils/update-notices.js +12 -0
  141. package/dist/src/utils/update-notices.js.map +1 -1
  142. package/package.json +1 -1
  143. package/templates/business-test-report.json +1 -1
  144. package/templates/index.json +1 -1
  145. package/templates/roadmap.md +15 -9
  146. package/templates/state.json +18 -17
  147. package/workflows/analyze.md +79 -11
  148. package/workflows/auto-test.md +6 -6
  149. package/workflows/blueprint.md +431 -0
  150. package/workflows/brainstorm.md +603 -496
  151. package/workflows/business-test.md +7 -7
  152. package/workflows/codebase-rebuild.md +4 -4
  153. package/workflows/harvest.md +184 -10
  154. package/workflows/init.md +9 -8
  155. package/workflows/maestro.md +1 -1
  156. package/workflows/milestone-audit.md +12 -4
  157. package/workflows/milestone-complete.md +11 -6
  158. package/workflows/plan.md +88 -22
  159. package/workflows/roadmap-common.md +1 -1
  160. package/workflows/roadmap.md +13 -3
  161. package/workflows/spec-generate.md +24 -13
  162. package/workflows/ui-design.md +2 -2
  163. package/workflows/ui-style.md +1 -1
  164. package/.agents/agents/conceptual-planning-agent.md +0 -247
  165. package/.agy/agents/conceptual-planning-agent.md +0 -244
  166. package/.claude/agents/conceptual-planning-agent.md +0 -245
@@ -1,66 +1,67 @@
1
1
  ---
2
2
  name: maestro-roadmap
3
- description: Generate roadmap from requirements (light or full mode)
4
- argument-hint: "\"<requirements>\" [--mode light|full] [-y|--yes] [-c] [--phases N] [--skip-research] [--from-brainstorm SESSION-ID] [--revise [instructions]] [--review]"
3
+ description: Generate milestone/phase roadmap from requirements or upstream context
4
+ argument-hint: "\"<requirements>\" [-m progressive|direct|auto] [-y|--yes] [-c] [--phases N] [--skip-research] [--from <source>] [--from-brainstorm SESSION-ID] [--revise [instructions]] [--review]"
5
5
  allowed-tools: spawn_agents_on_csv, Read, Write, Edit, Bash, Glob, Grep, request_user_input
6
6
  ---
7
7
 
8
8
  <purpose>
9
- Unified 2-wave roadmap generation using `spawn_agents_on_csv` with dual modes:
9
+ Generate a milestone/phase roadmap using `spawn_agents_on_csv` with 2-wave analysis:
10
10
 
11
- - **Light** (default): Wave 1 parallel analysis (scope, risk, dependency). Wave 2 assembly -> roadmap.md.
12
- - **Full** (`--mode full`): Wave 1 parallel research (domain, competitive, tech stack). Wave 2 synthesis -> 7-phase spec chain + roadmap.md.
11
+ Wave 1: parallel analysis (scope, risk, dependency). Wave 2: assembly -> roadmap.md with Milestone > Phase hierarchy.
13
12
 
14
13
  Additional: `--revise` (modify existing roadmap), `--review` (read-only health check).
14
+
15
+ For formal specification documents (Product Brief, PRD, Architecture, Epics), use `maestro-blueprint` instead.
15
16
  </purpose>
16
17
 
17
18
  <context>
18
19
  $ARGUMENTS -- requirement/idea text or @file reference, plus optional flags.
19
20
 
20
21
  **Flags**:
21
- - `--mode light|full`: Execution mode (default: light)
22
22
  - `-y, --yes`: Skip all confirmations
23
- - `-m progressive|direct|auto`: Decomposition strategy (default: auto, light only)
24
- - `--phases N`: Target phase count (light only)
25
- - `--revise [instructions]`: Revise existing roadmap preserving completed phases (light only)
26
- - `--review`: Read-only roadmap health assessment (light only)
27
- - `--skip-research`: Skip Wave 1, jump to doc generation (full only)
28
- - `--from-brainstorm SESSION-ID`: Import guidance-specification.md as seed
29
-
30
- **Session**: `.workflow/.csv-wave/{YYYYMMDD}-roadmap[-full]-{slug}/`
23
+ - `-m progressive|direct|auto`: Decomposition strategy (default: auto)
24
+ - `--phases N`: Target phase count
25
+ - `--revise [instructions]`: Revise existing roadmap preserving completed phases
26
+ - `--review`: Read-only roadmap health assessment
27
+ - `--from <source>`: Load upstream context package (brainstorm:ID, blueprint:BLP-xxx, analyze:ANL-xxx, @file, or path)
28
+ - `--from-brainstorm SESSION-ID`: (backward compat alias for `--from brainstorm:ID`)
29
+
30
+ **Session**: `.workflow/.csv-wave/{YYYYMMDD}-roadmap-{slug}/`
31
31
  **Output**: tasks.csv, results.csv, discoveries.ndjson, context.md, `.workflow/roadmap.md`
32
- **Full mode additional**: Spec package in `.workflow/.spec/SPEC-{slug}-{date}/`
33
32
  </context>
34
33
 
34
+ <interview_protocol>
35
+ Interview the user relentlessly until shared understanding is reached. Active only in interactive mode; skip when `-y/--yes`, `--revise`, `--review`, `-c`, or input is already specific (clear requirement + mode).
36
+
37
+ - One decision per turn via request_user_input with 2–4 options + a (Recommended) default; every question must include a `Proceed now` option.
38
+ - Never ask what code can verify — resolve via `state.json`, existing `roadmap.md`, `project.md`, or `maestro spec load`.
39
+ - Walk the decision dependency tree strictly: mode → requirement scope → decomposition strategy → phase dependencies/order. Do not open the next branch until the current one is settled.
40
+ - Scope guard: only decide the shape of the roadmap. Do not pre-resolve intra-phase task breakdown — that belongs to `plan`.
41
+
42
+ Decision points: scope (MVP / complete / phased) → strategy (progressive / direct / auto) → milestone boundaries → phase dependencies and order.
43
+
44
+ Exit: on consensus or `Proceed now`, append the table below to a `Roadmap Decisions` section at the top of `.workflow/roadmap.md`:
45
+ `| # | Decision | Choice | Source (user / code / default) |`
46
+ </interview_protocol>
47
+
35
48
  <csv_schema>
36
49
 
37
- ### tasks.csv -- Light Mode
50
+ ### tasks.csv
38
51
 
39
52
  ```csv
40
53
  id,title,description,analysis_focus,deps,context_from,wave,status,findings,error
41
54
  "1","Scope Analysis","Identify features, MVP boundaries, must-have vs nice-to-have, size estimates.","scope","","","1","","",""
42
55
  "2","Risk Analysis","Technical/project risks, unknowns, feasibility, risk levels, mitigations.","risk","","","1","","",""
43
56
  "3","Dependency Analysis","Feature dependencies, ordering constraints, parallel-safe groups, external deps.","dependency","","","1","","",""
44
- "4","Roadmap Assembly","Synthesize findings into roadmap.md: phases, milestones, success criteria.","","1;2;3","1;2;3","2","","",""
57
+ "4","Roadmap Assembly","Synthesize findings into roadmap.md: Milestone > Phase hierarchy, success criteria.","","1;2;3","1;2;3","2","","",""
45
58
  ```
46
59
 
47
- ### tasks.csv -- Full Mode
48
-
49
- ```csv
50
- id,title,description,research_focus,doc_phase,deps,context_from,wave,status,findings,output_file,error
51
- "1","Domain Research","Target users, market needs, existing solutions, terminology.","domain","","","","1","","","",""
52
- "2","Competitive Analysis","Feature comparison, UX patterns, gaps, opportunities.","competitive","","","","1","","","",""
53
- "3","Tech Stack Analysis","Languages, frameworks, databases, constraints, scalability.","tech_stack","","","","1","","","",""
54
- "4","Document Chain","7-phase spec: Product Brief, PRD (REQ-*/NFR-*), Architecture (ADR-*), Data Model, API, UI Wireframes, Epic-to-Roadmap (EPIC-*). + glossary.json.","","1-7","1;2;3","1;2;3","2","","","",""
55
- ```
56
-
57
- **Shared column semantics**:
58
- - Input: id (unique string), title, description (detailed instructions), deps (semicolon-sep IDs), context_from (IDs whose findings needed), wave (1=analysis/research, 2=assembly/synthesis)
60
+ **Column semantics**:
61
+ - Input: id (unique string), title, description (detailed instructions), analysis_focus (scope/risk/dependency), deps (semicolon-sep IDs), context_from (IDs whose findings needed), wave (1=analysis, 2=assembly)
59
62
  - Output: status (pending->completed/failed/skipped), findings (max 500 chars), error
60
- - Light-only: analysis_focus (scope/risk/dependency)
61
- - Full-only: research_focus (domain/competitive/tech_stack), doc_phase (1-7), output_file
62
63
 
63
- Wave 1: 3 analysis/research rows (parallel). Wave 2: 1 assembly/synthesis row.
64
+ Wave 1: 3 analysis rows (parallel). Wave 2: 1 assembly row.
64
65
  </csv_schema>
65
66
 
66
67
  <invariants>
@@ -74,12 +75,11 @@ Wave 1: 3 analysis/research rows (parallel). Wave 2: 1 assembly/synthesis row.
74
75
  <state_machine>
75
76
 
76
77
  <states>
77
- S_PARSE -- 解析参数、检测 mode/operation PERSIST: --
78
- S_INPUT -- 解析输入(text/@file/brainstorm PERSIST: --
78
+ S_PARSE -- 解析参数、检测 operation PERSIST: --
79
+ S_INPUT -- 解析输入(text/@file/upstream context PERSIST: --
79
80
  S_CSV_GEN -- 生成 tasks.csv PERSIST: tasks.csv
80
- S_WAVE_1 -- Analysis/Research (parallel spawn) PERSIST: findings + tasks.csv
81
- S_WAVE_2 -- Assembly/Synthesis (single agent spawn) PERSIST: roadmap.md [+ spec package]
82
- S_SPEC_GEN -- Spec package generation (full mode only) PERSIST: .workflow/.spec/SPEC-*/
81
+ S_WAVE_1 -- Analysis (parallel spawn) PERSIST: findings + tasks.csv
82
+ S_WAVE_2 -- Assembly (single agent spawn) PERSIST: roadmap.md
83
83
  S_AGGREGATE -- 精炼、评估、输出 PERSIST: context.md + .workflow/roadmap.md
84
84
  </states>
85
85
 
@@ -91,21 +91,16 @@ S_PARSE:
91
91
  -> REVIEW_FLOW WHEN: --review (read-only health assessment)
92
92
 
93
93
  S_INPUT:
94
- -> S_CSV_GEN DO: parse requirement (text/@file), import brainstorm if --from-brainstorm, codebase detection, load specs
94
+ -> S_CSV_GEN DO: parse requirement (text/@file), load context-package.json if --from, codebase detection, load specs
95
95
 
96
96
  S_CSV_GEN:
97
- -> S_WAVE_1 WHEN: normal pipeline DO: generate mode-specific CSV
98
- -> S_WAVE_2 WHEN: --skip-research DO: generate wave 2 only
97
+ -> S_WAVE_1 DO: generate analysis CSV
99
98
 
100
99
  S_WAVE_1:
101
100
  -> S_WAVE_2 DO: A_SPAWN_WAVE_1
102
101
 
103
102
  S_WAVE_2:
104
- -> S_SPEC_GEN WHEN: full mode DO: A_SPAWN_WAVE_2
105
- -> S_AGGREGATE WHEN: light mode DO: A_SPAWN_WAVE_2
106
-
107
- S_SPEC_GEN:
108
- -> S_AGGREGATE DO: generate 7-phase spec package per spec-generate.md
103
+ -> S_AGGREGATE DO: A_SPAWN_WAVE_2
109
104
 
110
105
  S_AGGREGATE:
111
106
  -> END DO: A_AGGREGATE_RESULTS
@@ -118,16 +113,15 @@ S_AGGREGATE:
118
113
 
119
114
  Filter wave==1 -> write wave-1.csv -> `spawn_agents_on_csv`.
120
115
 
121
- **Light mode agents**: scope analysis (feature inventory + priority), risk analysis (unknowns + mitigations), dependency analysis (dependency graph + critical path).
122
- **Full mode agents**: domain research (users, market, solutions), competitive analysis (feature matrix, gaps), tech stack analysis (feasibility, constraints).
116
+ **Agents**: scope analysis (feature inventory + priority), risk analysis (unknowns + mitigations), dependency analysis (dependency graph + critical path).
123
117
 
124
118
  Merge results -> master tasks.csv.
125
119
 
126
120
  ### A_SPAWN_WAVE_2
127
121
 
128
- Build prev_context from wave 1. Inject strategy + --phases constraint (light mode). Spawn.
122
+ Build prev_context from wave 1. Inject strategy + `--phases` constraint. Spawn.
129
123
 
130
- **Light mode**: Assembly agent produces roadmap.md with phases (goal, depends-on, requirements, success criteria), milestones, scope decisions.
124
+ Assembly agent produces roadmap.md with Milestone > Phase hierarchy (goal, depends-on, requirements, success criteria), scope decisions.
131
125
 
132
126
  **Strategy selection** via uncertainty assessment (5 factors):
133
127
  | Factor | Low | Medium | High |
@@ -139,26 +133,15 @@ Build prev_context from wave 1. Inject strategy + --phases constraint (light mod
139
133
  | Requirement stability | locked | some flux | evolving |
140
134
 
141
135
  >=3 high -> progressive, >=3 low -> direct, else -> ask (or auto if -y).
142
- **Full mode**: Document chain agent produces 7-phase spec package + glossary.json.
143
136
 
144
137
  ### A_AGGREGATE_RESULTS
145
138
 
146
139
  1. Export results.csv
147
140
  2. Interactive refinement (max 3 rounds, skip if -y): Approve / Refine / Regenerate
148
- 3. **Full mode readiness** (4 dimensions, 25% each): Completeness, Consistency, Traceability, Depth. Gate: >=80% pass, 60-79% review with caveats, <60% auto-fix attempt
149
- 4. Generate context.md (light: summary + analysis findings + roadmap stats; full: research findings + doc chain status + readiness scores)
150
- 5. Write .workflow/roadmap.md (both modes)
151
- 6. Write spec package to .workflow/.spec/SPEC-{slug}-{date}/ (full mode):
152
- ```
153
- SPEC-{slug}-{date}/
154
- +-- spec-config.json, product-brief.md, glossary.json, spec-summary.md
155
- +-- requirements/ (_index.md, REQ-NNN-{slug}.md, NFR-{type}-NNN-{slug}.md)
156
- +-- architecture/ (_index.md, ADR-NNN-{slug}.md)
157
- +-- epics/ (_index.md, EPIC-NNN-{slug}.md)
158
- +-- readiness-report.md
159
- ```
160
- 7. Update state.json milestones + current_milestone
161
- 8. Next-step routing: need analysis -> maestro-analyze; ready to plan -> maestro-plan; UI first -> maestro-impeccable build; full mode setup -> maestro-init
141
+ 3. Generate context.md (summary + analysis findings + roadmap stats)
142
+ 4. Write .workflow/roadmap.md with Milestone > Phase hierarchy
143
+ 5. Update state.json milestones + current_milestone
144
+ 6. Next-step routing: need analysis -> maestro-analyze; ready to plan -> maestro-plan; UI first -> maestro-impeccable build; need formal specs -> maestro-blueprint
162
145
 
163
146
  </actions>
164
147
 
@@ -182,20 +165,20 @@ Protocol: read before analysis, append-only, dedup by type+key.
182
165
  | Condition | Recovery |
183
166
  |-----------|----------|
184
167
  | No requirement text provided | Abort: "Requirement text or @file required" |
185
- | Brainstorm session not found | Abort with available sessions list |
168
+ | Context source not found (--from / --from-brainstorm) | Abort with available sessions/sources list |
186
169
  | roadmap.md not found (--revise/--review) | Run maestro-roadmap first |
187
170
  | All Wave 1 agents failed | Wave 2 in degraded mode (seed only) |
188
- | Wave 2 agent failed (light) | Abort: "Roadmap generation failed" |
189
- | Wave 2 agent failed (full) | Export partial output, log issues |
190
- | Readiness < 60% (full) | Log issues, proceed with available output |
171
+ | Wave 2 agent failed | Abort: "Roadmap generation failed" |
172
+ | Readiness < 60% | Log issues, proceed with available output |
191
173
  </error_codes>
192
174
 
193
175
  <success_criteria>
176
+ - [ ] Interactive mode: interview decision table appended to `.workflow/roadmap.md` "Roadmap Decisions" section
194
177
  - [ ] Wave 1 agents completed (analysis or research)
195
- - [ ] Wave 2 produced output (roadmap.md + optional spec package)
196
- - [ ] .workflow/roadmap.md written, state.json updated
178
+ - [ ] Wave 2 produced output (roadmap.md)
179
+ - [ ] .workflow/roadmap.md written with Milestone > Phase hierarchy, state.json updated
197
180
  - [ ] context.md generated
198
- - [ ] Light: uncertainty assessed, strategy selected, phases with milestones + success criteria
199
- - [ ] Full: spec package in .workflow/.spec/, readiness scored on 4 dimensions
181
+ - [ ] Uncertainty assessed, strategy selected, milestones with phases + success criteria
182
+ - [ ] Artifact registered in state.json with milestone entries
200
183
  </success_criteria>
201
184
  </output>
@@ -0,0 +1,169 @@
1
+ ---
2
+ name: maestro-update
3
+ description: Detect version, preview changes, apply workflow upgrades
4
+ argument-hint: "[--dry-run] [--force]"
5
+ allowed-tools: Read, Write, Edit, Bash, Glob, Grep, request_user_input
6
+ ---
7
+ <purpose>
8
+ Detect the current `.workflow/` schema version, show available migrations, and interactively apply them step-by-step. Uses a migration registry that supports incremental version upgrades (e.g., 1.0 → 2.0 → 3.0).
9
+
10
+ Each migration step is previewed before execution. The user confirms each step in a loop.
11
+ </purpose>
12
+
13
+ <context>
14
+ $ARGUMENTS — optional flags.
15
+
16
+ **Flags:**
17
+ - `--dry-run` -- Preview migration plan without executing
18
+ - `--force` -- Skip confirmation prompts (apply all pending migrations)
19
+
20
+ **Migration registry:** `src/migrations/`
21
+ - Each migration is a standalone file (e.g., `v1-to-v2.ts`) exporting a `MigrationDef`
22
+ - All migrations are registered via `src/migrations/index.ts`
23
+ - Registry auto-chains: detects current version → walks chain → applies in order
24
+ - To add a new migration: create `src/migrations/v{N}-to-v{N+1}.ts`, register in `index.ts`
25
+
26
+ **CLI runner:** `src/migrations/run.ts`
27
+ - Executable entrypoint: `npx tsx src/migrations/run.ts [root] [--dry-run] [--force] [--json]`
28
+ - Outputs JSON (with `--json`) or human-readable text
29
+
30
+ **State version source:** `.workflow/state.json` → `version` field
31
+ </context>
32
+
33
+ <execution>
34
+
35
+ ### Step 1: Detect Current State
36
+
37
+ ```
38
+ 1. Read .workflow/state.json
39
+ 2. Extract version field (default "1.0" if missing)
40
+ 3. Display:
41
+
42
+ === Maestro Workflow Update ===
43
+ Project: {project_name}
44
+ Version: {version}
45
+ Location: {.workflow/ path}
46
+ ```
47
+
48
+ ### Step 2: Dry-Run Preview
49
+
50
+ Run the migration CLI in dry-run + JSON mode to get the full plan:
51
+
52
+ ```bash
53
+ npx tsx src/migrations/run.ts "$(pwd)" --dry-run --json
54
+ ```
55
+
56
+ Parse the JSON output. If status is `up-to-date`:
57
+ ```
58
+ Already up to date (v{version})
59
+ ```
60
+ → EXIT
61
+
62
+ Otherwise display the migration plan:
63
+ ```
64
+ Pending Migrations ({N} step(s)):
65
+
66
+ 1. [v{from} → v{to}] {name}
67
+ {description}
68
+
69
+ 2. [v{from} → v{to}] {name}
70
+ {description}
71
+ ```
72
+
73
+ If `--dry-run` flag was passed by user → display plan and EXIT.
74
+
75
+ ### Step 3: Interactive Confirmation Loop
76
+
77
+ For each migration step (unless `--force`):
78
+
79
+ ```
80
+ LOOP for step_index = 1 to N:
81
+
82
+ Display:
83
+ --- Step {step_index}/{N}: {name} ---
84
+ Version: v{from} → v{to}
85
+
86
+ Changes:
87
+ {description, indented}
88
+
89
+ IF NOT --force:
90
+ AskUserQuestion: "Apply this migration?"
91
+ Options: [yes / skip / abort]
92
+
93
+ - "yes" → proceed to Step 4 (execute)
94
+ - "skip" → WARN "Skipping may break the migration chain"
95
+ continue to next step
96
+ - "abort" → display summary of what was applied so far → EXIT
97
+
98
+ IF --force:
99
+ → proceed to Step 4 (execute)
100
+ ```
101
+
102
+ ### Step 4: Execute Single Migration
103
+
104
+ ```
105
+ 1. Create backup:
106
+ Bash: cp .workflow/state.json .workflow/state.json.backup-v{from}-{timestamp}
107
+
108
+ 2. Run migration:
109
+ Bash: npx tsx src/migrations/run.ts "$(pwd)" --json
110
+
111
+ NOTE: The runner executes ALL pending migrations. For step-by-step control,
112
+ read state.json, call the migration function directly, or use the runner
113
+ which stops on first failure.
114
+
115
+ 3. Parse result JSON and display:
116
+
117
+ {status_icon} Step {N} completed: {name}
118
+ Summary: {summary}
119
+ Changes:
120
+ - {change_1}
121
+ - {change_2}
122
+ - ...
123
+
124
+ 4. If failed:
125
+ Display: "Migration failed: {summary}"
126
+ Display: "Backup available at: {backup_path}"
127
+ Display: "Restore with: cp {backup_path} .workflow/state.json"
128
+ → EXIT
129
+
130
+ 5. Continue loop to next step
131
+ ```
132
+
133
+ ### Step 5: Summary
134
+
135
+ After all steps completed (or user aborted):
136
+
137
+ ```
138
+ === Migration Complete ===
139
+ Applied: {applied_count} / {total_count} migration(s)
140
+ Skipped: {skipped_count}
141
+ Version: v{original} → v{final}
142
+ Backup: .workflow/state.json.backup-v{original}-{timestamp}
143
+
144
+ Next steps:
145
+ /manage-status -- Verify project state
146
+ /maestro -- Continue workflow
147
+ ```
148
+
149
+ </execution>
150
+
151
+ <error_codes>
152
+ | Code | Severity | Condition | Recovery |
153
+ |------|----------|-----------|----------|
154
+ | E001 | error | .workflow/state.json not found | Run /maestro-init first |
155
+ | E002 | error | state.json parse error | Check file for corruption |
156
+ | E003 | error | Migration function failed | Restore from backup |
157
+ | W001 | warning | Skipped migration may break version chain | Re-run /maestro-update later |
158
+ | W002 | warning | tsx not available | Install tsx: npm i -D tsx |
159
+ </error_codes>
160
+
161
+ <success_criteria>
162
+ - [ ] Current version detected from state.json
163
+ - [ ] Dry-run preview shows full migration plan without execution
164
+ - [ ] Each step confirmed interactively (unless --force)
165
+ - [ ] Backup created before each migration
166
+ - [ ] Migration executed and result displayed with change list
167
+ - [ ] Abort stops cleanly with partial summary
168
+ - [ ] Summary shows applied/skipped counts and version change
169
+ </success_criteria>
@@ -94,9 +94,18 @@ S_AGGREGATE -- 生成报告、创建 issues、修复计划 PERSIST:
94
94
  <transitions>
95
95
 
96
96
  S_PARSE:
97
- -> S_MUST_HAVE WHEN: phase resolved DO: load index.json, plan.json, TASK-*.json, summaries, uat.md, ARCHITECTURE.md
97
+ -> S_MUST_HAVE WHEN: phase resolved DO: load index.json, plan.json, TASK-*.json, summaries, uat.md, ARCHITECTURE.md; **D-007 milestone reverse lookup** for numeric phase
98
98
  -> ERROR WHEN: phase not found
99
99
 
100
+ **D-007 milestone reverse lookup** (numeric phase arg):
101
+ ```
102
+ resolve_milestone(phase_number):
103
+ for ms in state.json.milestones[]:
104
+ if str(phase_number) in ms.phase_slugs: return ms.id
105
+ return state.json.current_milestone # fallback
106
+ ```
107
+ Write resolved milestone into `session.milestone` and VRF artifact registration. NEVER read `current_milestone` directly for phase-scoped runs.
108
+
100
109
  S_MUST_HAVE:
101
110
  -> S_CSV_GEN DO: establish must-haves from success_criteria (primary), convergence.criteria (per-task), derived behaviors (fallback). Decompose into truth/artifact/wiring layers.
102
111
 
@@ -202,7 +211,7 @@ Protocol: read before analysis, append-only, dedup by type+key.
202
211
  - [ ] Issues auto-created for gaps + blocker anti-patterns
203
212
  - [ ] Post-verify knowledge inquiry triggered when applicable
204
213
  - [ ] Phase index.json updated with verification status
205
- - [ ] VRF artifact registered in state.json
214
+ - [ ] VRF artifact registered in state.json (numeric scope: milestone resolved via D-007 `phase_slugs` reverse lookup, NOT direct `current_milestone` read)
206
215
  - [ ] Gap-fix closure loop documented: gaps → plan --gaps → execute → verify (re-run)
207
216
  - [ ] Next step routed (quality-review if passed, plan --gaps if gaps, quality-auto-test if low coverage)
208
217
  - [ ] discoveries.ndjson append-only throughout
@@ -82,8 +82,8 @@ When `--yes` or `-y`: Auto-confirm rebuild (implies --force), skip all prompts.
82
82
  ```csv
83
83
  id,title,description,doc_dimension,output_path,deps,context_from,wave
84
84
  "1","Component Scanner","Scan all source directories for components: models, services, controllers, utils, types, config, middleware, core modules. For each component extract exported symbols, determine type, record code locations. Output JSON array of component entries with id (TC-NNN), name, type, code_locations, symbols.","components",".workflow/codebase/doc-index.json#components","","","1"
85
- "2","Feature Mapper","Group discovered components by domain/functional area using directory proximity, naming patterns, and import relationships. Map features to requirements if .workflow/.spec/ exists. Output JSON array of feature entries with id (FT-NNN), name, status, component_ids, requirement_ids, phase.","features",".workflow/codebase/doc-index.json#features","","","1"
86
- "3","Requirement Linker","If .workflow/.spec/ exists, scan SPEC-*/requirements/REQ-*.md files. Parse requirement metadata (title, priority, acceptance_criteria). Match requirements to features by keyword analysis. Also scan for ADR-*.md architecture decisions. Output JSON arrays for requirements and architecture_decisions.","requirements",".workflow/codebase/doc-index.json#requirements","","","1"
85
+ "2","Feature Mapper","Group discovered components by domain/functional area using directory proximity, naming patterns, and import relationships. Map features to requirements if .workflow/blueprint/ exists. Output JSON array of feature entries with id (FT-NNN), name, status, component_ids, requirement_ids, phase.","features",".workflow/codebase/doc-index.json#features","","","1"
86
+ "3","Requirement Linker","If .workflow/blueprint/ exists, scan BLP-*/requirements/REQ-*.md files. Parse requirement metadata (title, priority, acceptance_criteria). Match requirements to features by keyword analysis. Also scan for ADR-*.md architecture decisions. Output JSON arrays for requirements and architecture_decisions.","requirements",".workflow/codebase/doc-index.json#requirements","","","1"
87
87
  "4","Tech Registry Writer","For each component discovered, generate a markdown documentation file in .workflow/codebase/tech-registry/{slug}.md with: ID, type, features, code locations, exported symbols, dependencies. Generate _index.md with component table. Output file count and paths.","tech-registry",".workflow/codebase/tech-registry/","","","1"
88
88
  "5","Feature Map Writer","For each feature discovered, generate a markdown documentation file in .workflow/codebase/feature-maps/{slug}.md with: ID, status, phase, requirements, component table. Generate _index.md with feature table. Output file count and paths.","feature-maps",".workflow/codebase/feature-maps/","","","1"
89
89
  ```
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: manage-harvest
3
3
  description: Extract knowledge from artifacts into wiki/spec/issues
4
- argument-hint: "[<session-id|path>] [--to wiki|spec|issue|auto] [--source <type>] [--recent N] [--dry-run] [-y]"
4
+ argument-hint: "[<session-id|path>] [--to wiki|spec|issue|auto] [--source <type>] [--recent N] [--dry-run] [-y] [--prune] [--age N]"
5
5
  allowed-tools: Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion
6
6
  ---
7
7
 
@@ -31,6 +31,8 @@ $ARGUMENTS — session-id, path, or empty for scan mode.
31
31
  - `--dry-run` — Preview without writing
32
32
  - `-y` — Skip confirmations
33
33
  - `--min-confidence N` — Minimum 0.0-1.0 (default: 0.5)
34
+ - `--prune` — State hygiene mode: classify artifacts, graduate harvested → knowhow, archive from state.json, prune accumulated_context
35
+ - `--age N` — Graduation age threshold in days (default: 14). Used with `--prune`
34
36
 
35
37
  **Source registry:**
36
38
  | Source | Scan Path | Key Files |
@@ -46,7 +48,7 @@ $ARGUMENTS — session-id, path, or empty for scan mode.
46
48
  </context>
47
49
 
48
50
  <execution>
49
- Follow '~/.maestro/workflows/harvest.md' Stages 1–8.
51
+ Follow '~/.maestro/workflows/harvest.md' Stages 1–8 (standard mode) or Stage 9 (`--prune` mode).
50
52
 
51
53
  **Key invariants:**
52
54
  1. **Read-only until Stage 6** — extraction/classification in-memory only
@@ -65,6 +67,8 @@ Follow '~/.maestro/workflows/harvest.md' Stages 1–8.
65
67
  - Issue: append to `issues.jsonl` matching canonical schema
66
68
 
67
69
  **Next steps:** `/manage-wiki health`, `maestro wiki list --type note`, `/wiki-connect --fix`, `/wiki-digest`, `/manage-issue list --source harvest`
70
+
71
+ **Prune mode** (`--prune`): Classifies artifacts (active/graduated/stale/protected), graduates harvested artifacts to wiki knowhow, archives from `artifacts[]` → `artifact_archive[]`, prunes resolved entries from accumulated_context. Files on disk are never deleted. Always backs up state.json before writing.
68
72
  </execution>
69
73
 
70
74
  <error_codes>
@@ -88,4 +92,8 @@ Follow '~/.maestro/workflows/harvest.md' Stages 1–8.
88
92
  - [ ] harvest-log.jsonl updated with provenance
89
93
  - [ ] harvest-report-{date}.md written
90
94
  - [ ] No source artifacts modified
95
+ - [ ] If --prune: artifacts classified (active/graduated/stale/protected)
96
+ - [ ] If --prune: graduated artifacts → knowhow + artifact_archive[]
97
+ - [ ] If --prune: accumulated_context pruned (resolved deferred/blockers, deduplicated decisions)
98
+ - [ ] If --prune: state.json backed up before modification
91
99
  </success_criteria>
@@ -76,9 +76,16 @@ When `-y`: Accept all routing recommendations without prompting. Route all insig
76
76
 
77
77
  **Storage read (never modified)** — all resolved via `state.json.artifacts[]`:
78
78
  ```
79
+ # D-007 milestone reverse lookup — phase N may belong to a milestone different from current
80
+ target_milestone = resolve_milestone(target_phase) # see below
79
81
  related = artifacts.filter(a =>
80
- a.phase === target_phase && a.milestone === current_milestone
82
+ a.phase === target_phase && a.milestone === target_milestone
81
83
  ).sort_by(completed_at asc)
84
+
85
+ resolve_milestone(phase_number):
86
+ for ms in state.json.milestones[]:
87
+ if str(phase_number) in ms.phase_slugs: return ms.id
88
+ return state.json.current_milestone # fallback
82
89
  ```
83
90
  Each artifact's type determines its outputs at `.workflow/{a.path}/`:
84
91
  - **execute** → index.json, plan.json, .task/TASK-*.json, .summaries/TASK-*-summary.md
@@ -168,7 +175,7 @@ spawn_agent({
168
175
  task_name: "ctx",
169
176
  fork_turns: "none",
170
177
  message: `Load and summarize all phase ${targetPhase} artifacts for retrospective.
171
- 1. Query state.json artifacts[] for phase === ${targetPhase} && milestone === current_milestone
178
+ 1. Query state.json artifacts[] for phase === ${targetPhase} && milestone === resolve_milestone(${targetPhase}) [D-007 reverse lookup via state.json.milestones[].phase_slugs; fallback to current_milestone if phase unmatched]
172
179
  2. Load per-artifact outputs (execute→index/plan/tasks/summaries, verify→verification.json, review→review.json, debug→understanding/evidence, test→uat/tests)
173
180
  3. Filter issues.jsonl for this phase; read state.json for project context
174
181
  EXPECTED: Goals vs outcomes, completion rates, verification/review/UAT results, issue counts, key metrics`
@@ -75,7 +75,7 @@ EXPECTED: JSON with: tech_stack[], architecture_patterns[], conventions[], integ
75
75
 
76
76
  ## Phase 4: Context Packaging
77
77
 
78
- 1. Write spec-config.json -> <session>/spec/
78
+ 1. Write blueprint-config.json -> <session>/spec/
79
79
  2. Write discovery-context.json -> <session>/spec/
80
80
  3. Inline Discuss (DISCUSS-001):
81
81
  - Artifact: <session>/spec/discovery-context.json
@@ -94,7 +94,7 @@ EXPECTED: JSON with: tech_stack[], architecture_patterns[], conventions[], integ
94
94
  "discuss_verdict": "<verdict>"
95
95
  },
96
96
  "data": {
97
- "output_paths": ["spec-config.json", "discovery-context.json"]
97
+ "output_paths": ["blueprint-config.json", "discovery-context.json"]
98
98
  }
99
99
  }
100
100
  ```
@@ -22,7 +22,7 @@
22
22
  2. Load quality gate thresholds from specs/quality-gates.md
23
23
  3. Score each dimension
24
24
  4. Run cross-document validation
25
- 5. Generate readiness-report.md + spec-summary.md
25
+ 5. Generate readiness-report.md + blueprint-summary.md
26
26
  6. Run DISCUSS-003:
27
27
  - Artifact: `{session}/spec/readiness-report.md`
28
28
  - Perspectives: product, technical, quality, risk, coverage
@@ -41,4 +41,4 @@
41
41
 
42
42
  Write to `{session}/artifacts/`:
43
43
  - readiness-report.md: Dimension scores, issue list, traceability matrix
44
- - spec-summary.md: Executive summary of all spec docs
44
+ - blueprint-summary.md: Executive summary of all spec docs
@@ -50,7 +50,7 @@ Template-driven document generation with progressive dependency loading.
50
50
 
51
51
  ### Inputs
52
52
  - Template from routing table
53
- - spec-config.json from <session>/spec/
53
+ - blueprint-config.json from <session>/spec/
54
54
  - discovery-context.json from <session>/spec/
55
55
  - Prior decisions from context_accumulator (inner loop)
56
56
  - Discussion feedback from <session>/discussions/ (if exists)
@@ -32,7 +32,7 @@ status: draft
32
32
  generated_at: {timestamp}
33
33
  version: 1
34
34
  dependencies:
35
- - ../spec-config.json
35
+ - ../blueprint-config.json
36
36
  - ../product-brief.md
37
37
  - ../requirements/_index.md
38
38
  ---
@@ -246,9 +246,9 @@ date: {timestamp}
246
246
 
247
247
  | Variable | Source | Description |
248
248
  |----------|--------|-------------|
249
- | `{session_id}` | spec-config.json | Session identifier |
249
+ | `{session_id}` | blueprint-config.json | Session identifier |
250
250
  | `{timestamp}` | Runtime | ISO8601 generation timestamp |
251
251
  | `{product_name}` | product-brief.md | Product/feature name |
252
252
  | `{NNN}` | Auto-increment | ADR/requirement number |
253
253
  | `{slug}` | Auto-generated | Kebab-case from decision title |
254
- | `{has_codebase}` | spec-config.json | Whether existing codebase exists |
254
+ | `{has_codebase}` | blueprint-config.json | Whether existing codebase exists |
@@ -32,7 +32,7 @@ status: draft
32
32
  generated_at: {timestamp}
33
33
  version: 1
34
34
  dependencies:
35
- - ../spec-config.json
35
+ - ../blueprint-config.json
36
36
  - ../product-brief.md
37
37
  - ../requirements/_index.md
38
38
  - ../architecture/_index.md
@@ -187,7 +187,7 @@ status: draft
187
187
 
188
188
  | Variable | Source | Description |
189
189
  |----------|--------|-------------|
190
- | `{session_id}` | spec-config.json | Session identifier |
190
+ | `{session_id}` | blueprint-config.json | Session identifier |
191
191
  | `{timestamp}` | Runtime | ISO8601 generation timestamp |
192
192
  | `{product_name}` | product-brief.md | Product/feature name |
193
193
  | `{EPIC}` | Auto-increment | Epic number (3 digits) |
@@ -23,7 +23,7 @@ generated_at: {timestamp}
23
23
  stepsCompleted: []
24
24
  version: 1
25
25
  dependencies:
26
- - spec-config.json
26
+ - blueprint-config.json
27
27
  ---
28
28
 
29
29
  # Product Brief: {product_name}
@@ -117,7 +117,7 @@ dependencies:
117
117
 
118
118
  ## References
119
119
 
120
- - Derived from: [spec-config.json](spec-config.json)
120
+ - Derived from: [blueprint-config.json](blueprint-config.json)
121
121
  - Next: [Requirements PRD](requirements.md)
122
122
  ```
123
123
 
@@ -125,7 +125,7 @@ dependencies:
125
125
 
126
126
  | Variable | Source | Description |
127
127
  |----------|--------|-------------|
128
- | `{session_id}` | spec-config.json | Session identifier |
128
+ | `{session_id}` | blueprint-config.json | Session identifier |
129
129
  | `{timestamp}` | Runtime | ISO8601 generation timestamp |
130
130
  | `{product_name}` | Seed analysis | Product/feature name |
131
131
  | `{executive_summary}` | CLI synthesis | 2-3 sentence summary |
@@ -36,7 +36,7 @@ status: draft
36
36
  generated_at: {timestamp}
37
37
  version: 1
38
38
  dependencies:
39
- - ../spec-config.json
39
+ - ../blueprint-config.json
40
40
  - ../product-brief.md
41
41
  ---
42
42
 
@@ -215,7 +215,7 @@ status: draft
215
215
 
216
216
  | Variable | Source | Description |
217
217
  |----------|--------|-------------|
218
- | `{session_id}` | spec-config.json | Session identifier |
218
+ | `{session_id}` | blueprint-config.json | Session identifier |
219
219
  | `{timestamp}` | Runtime | ISO8601 generation timestamp |
220
220
  | `{product_name}` | product-brief.md | Product/feature name |
221
221
  | `{NNN}` | Auto-increment | Requirement number (zero-padded 3 digits) |