specdacular 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.md +72 -74
  2. package/commands/specd/continue.md +59 -0
  3. package/commands/specd/new.md +65 -0
  4. package/commands/specd/status.md +1 -1
  5. package/commands/specd/toolbox.md +59 -0
  6. package/package.json +1 -1
  7. package/specdacular/HELP.md +19 -16
  8. package/specdacular/agents/feature-researcher.md +4 -4
  9. package/specdacular/references/load-context.md +83 -0
  10. package/specdacular/references/record-decision.md +61 -0
  11. package/specdacular/references/select-feature.md +20 -20
  12. package/specdacular/references/select-phase.md +3 -3
  13. package/specdacular/references/spawn-research-agents.md +180 -0
  14. package/specdacular/references/synthesize-research.md +127 -0
  15. package/specdacular/references/validate-task.md +64 -0
  16. package/specdacular/templates/{features → tasks}/CHANGELOG.md +2 -8
  17. package/specdacular/templates/{features → tasks}/CONTEXT.md +6 -17
  18. package/specdacular/templates/tasks/DECISIONS.md +46 -0
  19. package/specdacular/templates/{features → tasks}/FEATURE.md +3 -3
  20. package/specdacular/templates/tasks/PLAN.md +91 -0
  21. package/specdacular/templates/tasks/RESEARCH.md +121 -0
  22. package/specdacular/templates/{features → tasks}/ROADMAP.md +6 -43
  23. package/specdacular/templates/tasks/STATE.md +93 -0
  24. package/specdacular/templates/tasks/config.json +15 -0
  25. package/specdacular/workflows/continue.md +275 -0
  26. package/specdacular/workflows/discuss.md +184 -0
  27. package/specdacular/workflows/execute.md +174 -0
  28. package/specdacular/workflows/new.md +299 -0
  29. package/specdacular/workflows/orchestrator/new.md +265 -0
  30. package/specdacular/workflows/orchestrator/plan.md +169 -0
  31. package/specdacular/workflows/plan.md +201 -0
  32. package/specdacular/workflows/research.md +166 -0
  33. package/specdacular/workflows/review.md +289 -0
  34. package/specdacular/workflows/status.md +17 -17
  35. package/commands/specd/blueprint.md +0 -64
  36. package/commands/specd/feature/continue.md +0 -84
  37. package/commands/specd/feature/new.md +0 -67
  38. package/commands/specd/feature/toolbox.md +0 -49
  39. package/specdacular/templates/blueprint/index.html +0 -110
  40. package/specdacular/templates/blueprint/scripts.js +0 -71
  41. package/specdacular/templates/blueprint/styles.css +0 -429
  42. package/specdacular/templates/features/DECISIONS.md +0 -109
  43. package/specdacular/templates/features/DEPENDENCIES.md +0 -47
  44. package/specdacular/templates/features/PLAN.md +0 -180
  45. package/specdacular/templates/features/RESEARCH.md +0 -183
  46. package/specdacular/templates/features/STATE.md +0 -110
  47. package/specdacular/templates/features/config.json +0 -20
  48. package/specdacular/workflows/blueprint-diagrams.md +0 -273
  49. package/specdacular/workflows/blueprint-wireframes.md +0 -312
  50. package/specdacular/workflows/blueprint.md +0 -372
  51. package/specdacular/workflows/continue-feature.md +0 -621
  52. package/specdacular/workflows/discuss-feature.md +0 -382
  53. package/specdacular/workflows/execute-plan.md +0 -636
  54. package/specdacular/workflows/insert-phase.md +0 -246
  55. package/specdacular/workflows/new-feature.md +0 -760
  56. package/specdacular/workflows/plan-feature.md +0 -691
  57. package/specdacular/workflows/plan-phase.md +0 -355
  58. package/specdacular/workflows/prepare-phase.md +0 -745
  59. package/specdacular/workflows/renumber-phases.md +0 -273
  60. package/specdacular/workflows/research-feature.md +0 -252
  61. package/specdacular/workflows/research-phase.md +0 -576
  62. package/specdacular/workflows/review-feature.md +0 -316
  63. package/specdacular/workflows/review-phase.md +0 -545
@@ -1,691 +0,0 @@
1
- <purpose>
2
- Create a roadmap with phase overview and empty phase directories. Detailed PLAN.md files are created later per-phase with `/specd:phase:plan`.
3
-
4
- **Key principles:**
5
- - Roadmap defines phases with goals, deliverables, and dependencies
6
- - Phases follow natural code dependencies (types->API->UI)
7
- - Empty phase directories are created as scaffolding
8
- - No PLAN.md files — those are created just-in-time per phase
9
-
10
- **Output:** ROADMAP.md + empty `plans/phase-XX/` directories
11
- </purpose>
12
-
13
- <philosophy>
14
-
15
- ## Roadmap, Not Plans
16
-
17
- The roadmap defines WHAT each phase does and WHY it's ordered that way. The HOW (detailed plans) comes later, per phase, when context is freshest.
18
-
19
- ## Dependency-Driven Phases
20
-
21
- Phases follow natural code dependencies:
22
- 1. **Types first** — Shared type definitions
23
- 2. **Data layer** — Database schemas, API routes
24
- 3. **Business logic** — Hooks, utilities, services
25
- 4. **UI** — Components that consume the above
26
-
27
- Each phase's output is input for the next.
28
-
29
- ## Just-in-Time Detail
30
-
31
- Creating detailed plans for all phases upfront means later plans go stale as earlier phases deviate. Instead:
32
- 1. Create the roadmap (this workflow)
33
- 2. For each phase: prepare -> plan -> execute
34
- 3. Each phase's plans use the latest context
35
-
36
- </philosophy>
37
-
38
- <process>
39
-
40
- <step name="validate">
41
- Validate feature exists and has required context.
42
-
43
- ```bash
44
- # Check feature exists
45
- [ -d ".specd/features/$ARGUMENTS" ] || { echo "not found"; exit 1; }
46
-
47
- # Check required files
48
- [ -f ".specd/features/$ARGUMENTS/FEATURE.md" ] || { echo "missing FEATURE.md"; exit 1; }
49
- [ -f ".specd/features/$ARGUMENTS/CONTEXT.md" ] || { echo "missing CONTEXT.md"; exit 1; }
50
- [ -f ".specd/features/$ARGUMENTS/DECISIONS.md" ] || { echo "missing DECISIONS.md"; exit 1; }
51
-
52
- # Check optional files
53
- [ -f ".specd/features/$ARGUMENTS/RESEARCH.md" ] && echo "has_research"
54
- ```
55
-
56
- **If feature not found:**
57
- ```
58
- Feature '{name}' not found.
59
-
60
- Run /specd:feature:new {name} to create it.
61
- ```
62
-
63
- **If missing required files:**
64
- ```
65
- Feature '{name}' is missing required context for planning:
66
- - {missing file}
67
-
68
- Run /specd:feature:discuss {name} to build more context.
69
- ```
70
-
71
- Continue to load_context.
72
- </step>
73
-
74
- <step name="load_context">
75
- Load ALL context.
76
-
77
- **Read feature context:**
78
- - `FEATURE.md` — Technical requirements, files to create
79
- - `CONTEXT.md` — Resolved gray areas, code patterns discussed
80
- - `DECISIONS.md` — All active decisions
81
- - `RESEARCH.md` — If exists, implementation patterns and pitfalls
82
-
83
- **Read codebase context (if available):**
84
- - `PATTERNS.md` — Code patterns to follow
85
- - `STRUCTURE.md` — Where files go
86
- - `MAP.md` — System overview, integration points
87
-
88
- **Extract key information:**
89
- - Files that must be created (from FEATURE.md)
90
- - Integration points (from FEATURE.md)
91
- - Patterns to follow (from CONTEXT.md, RESEARCH.md, codebase)
92
- - Decisions that affect implementation
93
- - Pitfalls to avoid (from RESEARCH.md)
94
-
95
- **Check for orchestrator mode:**
96
-
97
- Read feature's `config.json`. If `"orchestrator": true`:
98
-
99
- Set mode = "orchestrator".
100
-
101
- **Load orchestrator-level context:**
102
- - Orchestrator FEATURE.md — System-level requirements, project responsibilities
103
- - Orchestrator CONTEXT.md — Cross-project discussion, resolved questions
104
- - Orchestrator DECISIONS.md — System-level decisions
105
-
106
- **Load system-level codebase docs:**
107
- - `.specd/codebase/PROJECTS.md` — Project registry
108
- - `.specd/codebase/TOPOLOGY.md` — Communication patterns
109
- - `.specd/codebase/CONTRACTS.md` — Shared interfaces
110
-
111
- **Load sub-project feature context:**
112
- From feature config.json `"projects"` array, for each project:
113
- - Read `{project-path}/.specd/features/{feature-name}/FEATURE.md` — Project-specific requirements
114
- - Read `{project-path}/.specd/codebase/MAP.md` — Project code overview (if exists)
115
- - Read `{project-path}/.specd/codebase/PATTERNS.md` — Project patterns (if exists)
116
-
117
- ```
118
- Orchestrator mode: {N} projects involved in this feature.
119
- Loading cross-project context for phase derivation.
120
- ```
121
-
122
- Continue to orchestrator_derive_phases.
123
-
124
- **If not orchestrator:**
125
- Set mode = "project".
126
- Continue to assess_readiness.
127
- </step>
128
-
129
- <step name="orchestrator_derive_phases">
130
- Derive phases for all involved projects in a single orchestrator pass.
131
-
132
- **For each involved project, analyze:**
133
- - Project's FEATURE.md requirements (what it must create)
134
- - Project's codebase patterns (how code is organized)
135
- - Cross-project dependencies (from CONTRACTS.md, TOPOLOGY.md)
136
-
137
- **Derive per-project phases:**
138
- Apply the same dependency-driven phasing as single-project mode, but for each project:
139
- 1. Types/interfaces needed by this project
140
- 2. Data layer changes
141
- 3. Business logic
142
- 4. UI components (if applicable)
143
- 5. Integration/wiring
144
-
145
- Adjust per project — not all projects need all phases. A backend API project may have 3 phases while a UI project has 4.
146
-
147
- **Consider cross-project ordering:**
148
- - Which project phases produce outputs that other project phases consume?
149
- - Which phases can run independently?
150
- - Reference CONTRACTS.md for interface dependencies
151
-
152
- **Present consolidated view:**
153
- ```
154
- Here's the proposed phase structure across all projects:
155
-
156
- **{project-1}** ({N} phases):
157
- Phase 1: {Name} — {Goal}
158
- Phase 2: {Name} — {Goal}
159
- ...
160
-
161
- **{project-2}** ({N} phases):
162
- Phase 1: {Name} — {Goal}
163
- Phase 2: {Name} — {Goal}
164
- ...
165
-
166
- **Cross-project dependencies (preliminary):**
167
- - {project-1}/phase-1 → no cross-project deps
168
- - {project-2}/phase-2 → after {project-1}/phase-2
169
-
170
- Does this phasing make sense? Any adjustments?
171
- ```
172
-
173
- Use AskUserQuestion:
174
- - header: "Phases"
175
- - question: "Does this phase structure look right?"
176
- - options:
177
- - "Yes, looks good" — Continue with this structure
178
- - "I want to adjust" — Modify phases or ordering
179
-
180
- **If "I want to adjust":**
181
- Ask user for specific changes. Apply adjustments.
182
-
183
- Continue to write_project_roadmaps.
184
- </step>
185
-
186
- <step name="write_project_roadmaps">
187
- Write ROADMAP.md for each involved sub-project.
188
-
189
- For each project:
190
-
191
- **Write ROADMAP.md:**
192
- Use template at `~/.claude/specdacular/templates/features/ROADMAP.md`
193
-
194
- Fill in with project-specific phases:
195
- - Overview table: total phases, current phase 1, not started
196
- - Phase list with one-liners
197
- - Phase details: goal, creates, modifies, success criteria, dependencies (within this project only)
198
- - Execution order
199
- - Key decisions affecting this project's roadmap
200
-
201
- **IMPORTANT (DEC-001):** Sub-project ROADMAP.md must be self-contained. Dependencies listed are intra-project only. No references to other projects or cross-project phases.
202
-
203
- **Create phase directories:**
204
- ```bash
205
- {For each project:}
206
- mkdir -p {project-path}/.specd/features/{feature-name}/plans/phase-01
207
- mkdir -p {project-path}/.specd/features/{feature-name}/plans/phase-02
208
- # ... for each phase
209
- ```
210
-
211
- **Update sub-project STATE.md:**
212
- - Stage: discussion -> planned
213
- - Add phases info
214
-
215
- **Update sub-project config.json:**
216
- ```json
217
- {
218
- "stage": "planned",
219
- "phases": {
220
- "total": {N},
221
- "completed": 0,
222
- "current": 1
223
- }
224
- }
225
- ```
226
-
227
- After all projects processed, verify:
228
- ```bash
229
- for project in {project-paths}; do
230
- echo "Checking $project..."
231
- ls "$project/.specd/features/{feature-name}/ROADMAP.md"
232
- ls "$project/.specd/features/{feature-name}/plans/"
233
- done
234
- ```
235
-
236
- Continue to build_dependency_graph.
237
- </step>
238
-
239
- <step name="build_dependency_graph">
240
- Build cross-project phase dependency graph.
241
-
242
- **Analyze cross-project dependencies:**
243
- For each phase across all projects, determine:
244
- - Does this phase produce outputs consumed by phases in other projects?
245
- - Does this phase require outputs from phases in other projects?
246
-
247
- Use these sources to infer dependencies:
248
- - CONTRACTS.md — Which projects share interfaces? Phase that creates an interface must precede phase that consumes it.
249
- - TOPOLOGY.md — Communication patterns indicate dependency direction.
250
- - Per-project FEATURE.md — Integration points reveal cross-project needs.
251
- - Per-project ROADMAP.md — Phase goals indicate what each phase produces.
252
-
253
- **Build dependency table:**
254
- ```
255
- | Phase | Depends On | Reason |
256
- |-------|------------|--------|
257
- | {project-1}/phase-1 | — | No cross-project deps |
258
- | {project-2}/phase-1 | — | No cross-project deps |
259
- | {project-1}/phase-2 | {project-2}/phase-1 | Needs {interface} from {project-2} |
260
- | {project-2}/phase-2 | {project-1}/phase-2 | Consumes {output} from {project-1} |
261
- ```
262
-
263
- **Present proposed dependencies:**
264
- ```
265
- Here are the cross-project phase dependencies I've identified:
266
-
267
- {dependency table}
268
-
269
- Phases with no cross-project deps can start independently.
270
- Phases with dependencies must wait for their prerequisites.
271
- ```
272
-
273
- Use AskUserQuestion:
274
- - header: "Dependencies"
275
- - question: "Do these cross-project dependencies look right?"
276
- - options:
277
- - "Yes, looks right" — Continue with these dependencies
278
- - "I need to adjust" — Modify dependencies
279
-
280
- **If "I need to adjust":**
281
- Ask user for specific changes. Apply adjustments.
282
-
283
- Continue to validate_dependencies.
284
- </step>
285
-
286
- <step name="validate_dependencies">
287
- Validate the dependency graph has no cycles (DEC-009).
288
-
289
- **Perform topological sort:**
290
-
291
- Build a directed graph from the dependency table. For each phase node:
292
- 1. Calculate in-degree (number of dependencies)
293
- 2. Start with all nodes that have in-degree 0 (no dependencies)
294
- 3. Process each node: remove its edges, decrement in-degrees of dependent nodes
295
- 4. If any new nodes reach in-degree 0, add them to the queue
296
- 5. If all nodes are processed: graph is valid (no cycles)
297
- 6. If unprocessed nodes remain: cycle detected
298
-
299
- **If no cycles:**
300
- ```
301
- Dependency graph validated — no cycles detected.
302
- {N} phases can start independently.
303
- {M} phases have cross-project dependencies.
304
- ```
305
-
306
- Continue to write_dependencies.
307
-
308
- **If cycle detected:**
309
- Identify the cycle path from the unprocessed nodes.
310
-
311
- ```
312
- Cycle detected in cross-project dependencies:
313
-
314
- {project-1}/phase-{X} → {project-2}/phase-{Y} → {project-1}/phase-{X}
315
-
316
- This means these phases depend on each other, creating a deadlock.
317
-
318
- To resolve:
319
- - Split one of the phases so part can run earlier
320
- - Remove one direction of the dependency
321
- - Merge the dependent work into a single phase
322
- ```
323
-
324
- Use AskUserQuestion:
325
- - header: "Cycle"
326
- - question: "How would you like to resolve this cycle?"
327
- - options:
328
- - "I'll restructure" — Go back to adjust dependencies
329
- - "Split a phase" — Break a phase into sub-phases
330
- - "Help me decide" — Get a recommendation
331
-
332
- **If "I'll restructure":** Return to build_dependency_graph.
333
- **If "Split a phase":** Discuss which phase to split, update project roadmap, return to validate_dependencies.
334
- **If "Help me decide":** Analyze the cycle and recommend the simplest resolution. Apply after user confirms.
335
- </step>
336
-
337
- <step name="write_dependencies">
338
- Write DEPENDENCIES.md in the orchestrator's feature folder.
339
-
340
- **Write DEPENDENCIES.md:**
341
- Use template at `~/.claude/specdacular/templates/features/DEPENDENCIES.md`
342
-
343
- Fill in:
344
- - **Project Involvement table:** Each project with its role, phase count, and feature path
345
- - **Phase Dependencies table:** All cross-project dependencies with status (all "pending" initially)
346
- - **Mermaid DAG:** Visual representation of the dependency graph
347
-
348
- ```mermaid
349
- graph TD
350
- A["{project-1}/phase-1"] --> C["{project-1}/phase-2"]
351
- B["{project-2}/phase-1"] --> D["{project-2}/phase-2"]
352
- C --> D
353
- ```
354
-
355
- - **Scheduling Notes:** Which phases can start immediately, which are blocked
356
-
357
- **Also update orchestrator STATE.md and config.json:**
358
-
359
- Update STATE.md:
360
- - Stage: discussion -> planned
361
- - Add phases info (total phases across all projects)
362
-
363
- Update config.json:
364
- ```json
365
- {
366
- "stage": "planned",
367
- "phases": {
368
- "total": {sum of all project phases},
369
- "completed": 0,
370
- "current": 1
371
- }
372
- }
373
- ```
374
-
375
- Continue to orchestrator_plan_commit.
376
- </step>
377
-
378
- <step name="orchestrator_plan_commit">
379
- Commit all roadmaps and dependency graph.
380
-
381
- ```bash
382
- # Add orchestrator feature updates
383
- git add .specd/features/{feature-name}/DEPENDENCIES.md
384
- git add .specd/features/{feature-name}/STATE.md
385
- git add .specd/features/{feature-name}/config.json
386
-
387
- # Add per-project roadmaps, state, and phase directories
388
- {For each project:}
389
- git add {project-path}/.specd/features/{feature-name}/ROADMAP.md
390
- git add {project-path}/.specd/features/{feature-name}/plans/
391
- git add {project-path}/.specd/features/{feature-name}/STATE.md
392
- git add {project-path}/.specd/features/{feature-name}/config.json
393
-
394
- git commit -m "docs({feature-name}): create multi-project roadmap
395
-
396
- Orchestrator:
397
- - DEPENDENCIES.md: Cross-project phase dependency graph
398
-
399
- Projects:
400
- {For each project:}
401
- - {project-name}: {N} phases — ROADMAP.md + phase directories
402
-
403
- Co-Authored-By: Claude <noreply@anthropic.com>"
404
- ```
405
-
406
- Continue to orchestrator_plan_completion.
407
- </step>
408
-
409
- <step name="orchestrator_plan_completion">
410
- Present multi-project roadmap summary.
411
-
412
- ```
413
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
414
- MULTI-PROJECT ROADMAP CREATED
415
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
416
-
417
- **Feature:** {feature-name}
418
-
419
- ## Per-Project Phases
420
-
421
- {For each project:}
422
- **{project-name}** ({N} phases):
423
- Phase 1: {Name} — {Goal}
424
- Phase 2: {Name} — {Goal}
425
- ...
426
-
427
- ## Cross-Project Dependencies
428
-
429
- {dependency summary — which phases block which}
430
- {N} independent phases, {M} dependent phases
431
- No cycles detected.
432
-
433
- ## Files Created
434
-
435
- - `.specd/features/{feature-name}/DEPENDENCIES.md` — Dependency graph
436
- {For each project:}
437
- - `{project-path}/.specd/features/{feature-name}/ROADMAP.md`
438
- - `{project-path}/.specd/features/{feature-name}/plans/phase-{NN}/`
439
-
440
- ───────────────────────────────────────────────────────
441
-
442
- ## What's Next — Phase by Phase
443
-
444
- The orchestrator will guide you through phases respecting cross-project dependencies.
445
-
446
- /specd:feature:continue {feature-name} — Start executing phases
447
- ```
448
-
449
- End workflow.
450
- </step>
451
-
452
- <step name="assess_readiness">
453
- Check if there's enough context to create a good roadmap.
454
-
455
- **Required for planning:**
456
- - [ ] Clear list of files to create
457
- - [ ] Integration points identified
458
- - [ ] Key decisions made (at least technology choices)
459
-
460
- **Warning signs (insufficient context):**
461
- - FEATURE.md has placeholder text
462
- - CONTEXT.md has many unresolved gray areas
463
- - No decisions in DECISIONS.md
464
- - Major technical questions unanswered
465
-
466
- **If insufficient:**
467
- ```
468
- Feature '{name}' might benefit from more discussion before planning.
469
-
470
- **Current state:**
471
- - Files to create: {count or "unclear"}
472
- - Integration points: {count or "unclear"}
473
- - Decisions made: {count}
474
- - Gray areas remaining: {count}
475
-
476
- **Recommendation:**
477
- /specd:feature:discuss {name} — Resolve remaining gray areas
478
- /specd:feature:research {name} — Research implementation approach
479
-
480
- Continue anyway? (Roadmap may need revision)
481
- ```
482
-
483
- Use AskUserQuestion:
484
- - header: "Plan Readiness"
485
- - question: "How would you like to proceed?"
486
- - options:
487
- - "Continue planning" — Create roadmap with current context
488
- - "Discuss first" — Run feature:discuss
489
- - "Research first" — Run feature:research
490
-
491
- **If sufficient or user chooses to continue:**
492
- Continue to derive_phases.
493
- </step>
494
-
495
- <step name="derive_phases">
496
- Derive phases from dependency analysis.
497
-
498
- **Analyze dependencies:**
499
- 1. What types/interfaces are needed? (Phase: Types)
500
- 2. What data layer changes are needed? (Phase: Data/API)
501
- 3. What business logic is needed? (Phase: Logic/Hooks)
502
- 4. What UI is needed? (Phase: Components)
503
- 5. What integration/wiring is needed? (Phase: Integration)
504
-
505
- **Standard phase pattern:**
506
- ```
507
- Phase 1: Foundation (types, schemas)
508
- Phase 2: Data Layer (API routes, database)
509
- Phase 3: Business Logic (hooks, services)
510
- Phase 4: UI (components)
511
- Phase 5: Integration (wiring, entry points)
512
- ```
513
-
514
- **Adjust based on feature:**
515
- - Small feature: might be 2-3 phases
516
- - Large feature: might be 5+ phases
517
- - Some features skip phases (no UI, no API, etc.)
518
-
519
- **For each phase, identify:**
520
- - Goal: What this phase achieves
521
- - Creates: New files
522
- - Modifies: Existing files
523
- - Depends on: Previous phases or external dependencies
524
-
525
- **Present to user:**
526
- ```
527
- Based on the requirements, here's the proposed phase structure:
528
-
529
- **Phase 1: {Name}** — {Goal}
530
- Creates: {file list}
531
- Depends on: None
532
-
533
- **Phase 2: {Name}** — {Goal}
534
- Creates: {file list}
535
- Depends on: Phase 1
536
-
537
- ...
538
-
539
- Does this phasing make sense? Any adjustments?
540
- ```
541
-
542
- Continue to write_roadmap.
543
- </step>
544
-
545
- <step name="write_roadmap">
546
- Write ROADMAP.md with phase overview.
547
-
548
- **Use template at `~/.claude/specdacular/templates/features/ROADMAP.md`**
549
-
550
- **Fill in:**
551
-
552
- **Overview table:**
553
- - Total phases
554
- - Current phase: 1
555
- - Status: Not Started
556
-
557
- **Phase list:** Quick overview with one-liners
558
-
559
- **Phase details:** For each phase:
560
- - Goal
561
- - Creates (file list)
562
- - Modifies (file list)
563
- - Success criteria
564
- - Dependencies
565
-
566
- **Execution order:** Visual representation
567
-
568
- **Key decisions affecting roadmap:**
569
- Reference decisions from DECISIONS.md that affect phase ordering
570
-
571
- Continue to create_directories.
572
- </step>
573
-
574
- <step name="create_directories">
575
- Create empty phase directories.
576
-
577
- ```bash
578
- mkdir -p .specd/features/{feature-name}/plans/phase-01
579
- mkdir -p .specd/features/{feature-name}/plans/phase-02
580
- # ... for each phase
581
- ```
582
-
583
- Continue to update_state.
584
- </step>
585
-
586
- <step name="update_state">
587
- Update STATE.md with planning status.
588
-
589
- **Update STATE.md:**
590
- - Stage: discussion -> planned
591
- - Roadmap created: yes
592
- - Add planning session to history
593
-
594
- **Update config.json:**
595
- ```json
596
- {
597
- "stage": "planned",
598
- "phases": {
599
- "total": {N},
600
- "completed": 0,
601
- "current": 1
602
- }
603
- }
604
- ```
605
-
606
- Continue to commit.
607
- </step>
608
-
609
- <step name="commit">
610
- Commit the roadmap.
611
-
612
- @~/.claude/specdacular/references/commit-docs.md
613
-
614
- - **$FILES:** `.specd/features/{feature-name}/ROADMAP.md .specd/features/{feature-name}/plans/ .specd/features/{feature-name}/STATE.md .specd/features/{feature-name}/config.json`
615
- - **$MESSAGE:** `docs({feature-name}): create roadmap` with phase count and structure
616
- - **$LABEL:** `roadmap creation`
617
-
618
- Continue to completion.
619
- </step>
620
-
621
- <step name="completion">
622
- Present what was created and how to proceed.
623
-
624
- ```
625
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
626
- ROADMAP CREATED
627
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
628
-
629
- **Feature:** {feature-name}
630
-
631
- ## Phases
632
-
633
- **Phase 1:** {Name} — {Goal}
634
- **Phase 2:** {Name} — {Goal}
635
- ...
636
-
637
- ## Files Created
638
-
639
- - `.specd/features/{feature-name}/ROADMAP.md`
640
- - `.specd/features/{feature-name}/plans/phase-01/`
641
- - `.specd/features/{feature-name}/plans/phase-02/`
642
- ...
643
-
644
- ───────────────────────────────────────────────────────
645
-
646
- ## What's Next — Phase by Phase
647
-
648
- For each phase, the flow is:
649
-
650
- 1. `/specd:phase:prepare {feature} {N}` — Discuss gray areas + optional research
651
- 2. `/specd:phase:plan {feature} {N}` — Create detailed task plans
652
- 3. `/specd:phase:execute {feature}` — Execute with progress tracking
653
-
654
- **Start with Phase 1:**
655
-
656
- /specd:phase:prepare {feature} 1 — Prepare the first phase
657
-
658
- <sub>/clear first — fresh context window</sub>
659
- ```
660
-
661
- End workflow.
662
- </step>
663
-
664
- </process>
665
-
666
- <success_criteria>
667
-
668
- ## Single-Project Mode
669
- - Feature validated with sufficient context
670
- - All context loaded and analyzed
671
- - Phases derived from dependency analysis
672
- - ROADMAP.md provides clear phase overview
673
- - Empty phase directories created
674
- - No PLAN.md files created
675
- - STATE.md updated to "planned" stage
676
- - Committed to git
677
- - User knows the per-phase flow: prepare -> plan -> execute
678
-
679
- ## Multi-Project Mode (Orchestrator)
680
- - Orchestrator mode detected from feature config.json
681
- - System-level and sub-project context loaded
682
- - Per-project phases derived in single orchestrator pass
683
- - User confirms/adjusts consolidated phase view
684
- - Per-project ROADMAP.md files self-contained (DEC-001)
685
- - Cross-project dependency graph built and confirmed by user
686
- - Topological sort validates no cycles (DEC-009)
687
- - DEPENDENCIES.md written with table + Mermaid DAG
688
- - All roadmaps, state, and config committed
689
- - User knows to use /specd:feature:continue for execution
690
-
691
- </success_criteria>