@lipter7/blueprint 2.0.0 → 2.0.1
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/README.md +20 -16
- package/bin/install.js +717 -37
- package/bin/install.test.js +870 -0
- package/blueprint/bin/blueprint-tools.js +250 -0
- package/blueprint/bin/blueprint-tools.test.js +443 -0
- package/blueprint/references/planning-config.md +6 -6
- package/blueprint/references/verification-gates.md +346 -0
- package/blueprint/templates/codebase/architecture.md +2 -2
- package/blueprint/templates/codebase/structure.md +3 -3
- package/blueprint/templates/config.json +7 -1
- package/blueprint/templates/state.md +31 -0
- package/blueprint/workflows/complete-milestone.md +94 -5
- package/blueprint/workflows/discuss-phase.md +86 -21
- package/blueprint/workflows/map-codebase.md +26 -0
- package/blueprint/workflows/new-milestone.md +219 -1
- package/blueprint/workflows/new-project.md +407 -67
- package/blueprint/workflows/plan-phase.md +108 -4
- package/blueprint/workflows/progress.md +1 -1
- package/blueprint/workflows/research-phase.md +216 -1
- package/blueprint/workflows/settings-cursor.md +254 -0
- package/blueprint/workflows/settings.md +2 -2
- package/blueprint/workflows/verify-work.md +49 -1
- package/commands/bp/add-phase.md +1 -1
- package/commands/bp/add-todo.md +1 -1
- package/commands/bp/audit-milestone.md +1 -1
- package/commands/bp/check-todos.md +1 -1
- package/commands/bp/complete-milestone.md +1 -1
- package/commands/bp/debug.md +18 -1
- package/commands/bp/discuss-phase.md +1 -1
- package/commands/bp/execute-phase.md +1 -1
- package/commands/bp/help.md +1 -1
- package/commands/bp/insert-phase.md +1 -1
- package/commands/bp/join-discord.md +1 -1
- package/commands/bp/list-phase-assumptions.md +1 -1
- package/commands/bp/map-codebase.md +1 -1
- package/commands/bp/new-milestone.md +1 -1
- package/commands/bp/new-project.md +1 -1
- package/commands/bp/pause-work.md +1 -1
- package/commands/bp/plan-milestone-gaps.md +1 -1
- package/commands/bp/plan-phase.md +1 -1
- package/commands/bp/progress.md +1 -1
- package/commands/bp/quick.md +1 -1
- package/commands/bp/remove-phase.md +1 -1
- package/commands/bp/research-phase.md +1 -1
- package/commands/bp/resume-work.md +1 -1
- package/commands/bp/set-profile.md +1 -1
- package/commands/bp/settings.md +1 -1
- package/commands/bp/verify-work.md +1 -1
- package/package.json +1 -1
|
@@ -43,7 +43,7 @@ The document should describe what you want to build.
|
|
|
43
43
|
INIT=$(node ~/.claude/blueprint/bin/blueprint-tools.js init new-project)
|
|
44
44
|
```
|
|
45
45
|
|
|
46
|
-
Parse JSON for: `researcher_model`, `synthesizer_model`, `roadmapper_model`, `commit_docs`, `project_exists`, `has_codebase_map`, `planning_exists`, `has_existing_code`, `has_package_file`, `is_brownfield`, `needs_codebase_map`, `has_git`.
|
|
46
|
+
Parse JSON for: `researcher_model`, `synthesizer_model`, `roadmapper_model`, `mapper_model`, `commit_docs`, `project_exists`, `has_codebase_map`, `planning_exists`, `has_existing_code`, `has_package_file`, `is_brownfield`, `needs_codebase_map`, `has_git`.
|
|
47
47
|
|
|
48
48
|
**If `project_exists` is true:** Error — project already initialized. Use `/bp:progress`.
|
|
49
49
|
|
|
@@ -71,7 +71,31 @@ Run `/bp:map-codebase` first, then return to `/bp:new-project`
|
|
|
71
71
|
```
|
|
72
72
|
Exit command.
|
|
73
73
|
|
|
74
|
-
**If "Skip mapping" OR `needs_codebase_map` is false:** Continue
|
|
74
|
+
**If "Skip mapping" OR `needs_codebase_map` is false:** Continue.
|
|
75
|
+
|
|
76
|
+
**If `has_codebase_map` is true AND `has_git` is true:**
|
|
77
|
+
|
|
78
|
+
The project already has a codebase map. Check if it's stale:
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
STALENESS=$(node ~/.claude/blueprint/bin/blueprint-tools.js codebase-staleness-check)
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Parse `STALENESS` JSON. If `stale` is true, present to the user:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
Existing codebase map may be outdated.
|
|
88
|
+
Last mapped: {last_mapped_at}
|
|
89
|
+
Changes since: {files_changed} files, +{lines_added}/-{lines_removed} lines
|
|
90
|
+
|
|
91
|
+
Would you like to refresh the codebase map before starting the project?
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Options:
|
|
95
|
+
1. **Refresh** — Full remap before proceeding
|
|
96
|
+
2. **Skip** — Use existing codebase docs
|
|
97
|
+
|
|
98
|
+
If the user chooses Refresh, run the full remap flow (spawn 4 bp-codebase-mapper agents, commit results, update config metadata). Otherwise continue.
|
|
75
99
|
|
|
76
100
|
## 3. Deep Questioning
|
|
77
101
|
|
|
@@ -208,13 +232,77 @@ Initialize with any decisions made during questioning:
|
|
|
208
232
|
|
|
209
233
|
Do not compress. Capture everything gathered.
|
|
210
234
|
|
|
211
|
-
|
|
212
|
-
|
|
235
|
+
Write the file to disk:
|
|
213
236
|
```bash
|
|
214
237
|
mkdir -p .blueprint
|
|
238
|
+
# Write .blueprint/PROJECT.md (do NOT commit yet — verification gate first)
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### 4a. PROJECT.md Verification Gate
|
|
242
|
+
|
|
243
|
+
**If auto mode:** Skip gate. Display brief confirmation and commit directly:
|
|
244
|
+
```
|
|
245
|
+
✓ PROJECT.md created at .blueprint/PROJECT.md ({line_count} lines)
|
|
246
|
+
```
|
|
247
|
+
```bash
|
|
248
|
+
node ~/.claude/blueprint/bin/blueprint-tools.js commit "docs: initialize project" --files .blueprint/PROJECT.md
|
|
249
|
+
```
|
|
250
|
+
Proceed to Step 5.
|
|
251
|
+
|
|
252
|
+
**Interactive mode:**
|
|
253
|
+
|
|
254
|
+
Read back `.blueprint/PROJECT.md` and extract a structured summary.
|
|
255
|
+
|
|
256
|
+
Display with review banner:
|
|
257
|
+
|
|
258
|
+
```
|
|
259
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
260
|
+
Blueprint ► REVIEW: Project
|
|
261
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
262
|
+
|
|
263
|
+
**What this is:** {2-3 sentence description from What This Is section}
|
|
264
|
+
|
|
265
|
+
**Core value:** {one sentence from Core Value section}
|
|
266
|
+
|
|
267
|
+
**Active requirements:** {count} requirements in {count} categories
|
|
268
|
+
- {Category 1}: {count} requirements
|
|
269
|
+
- {Category 2}: {count} requirements
|
|
270
|
+
|
|
271
|
+
**Out of scope:** {count} exclusions
|
|
272
|
+
|
|
273
|
+
**Constraints:** {count} hard limits
|
|
274
|
+
- {list each constraint type: value pair}
|
|
275
|
+
|
|
276
|
+
**Key decisions:** {count} decisions logged
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
Use AskUserQuestion:
|
|
280
|
+
- header: "Project"
|
|
281
|
+
- question: "Does this accurately capture what you described?"
|
|
282
|
+
- options:
|
|
283
|
+
- "Approve" — Looks good, proceed
|
|
284
|
+
- "Corrections" — I want to change some things
|
|
285
|
+
- "Review full file" — Show me the raw file first
|
|
286
|
+
|
|
287
|
+
**If "Approve":** Commit and proceed to Step 5.
|
|
288
|
+
|
|
289
|
+
```bash
|
|
215
290
|
node ~/.claude/blueprint/bin/blueprint-tools.js commit "docs: initialize project" --files .blueprint/PROJECT.md
|
|
216
291
|
```
|
|
217
292
|
|
|
293
|
+
**If "Corrections":**
|
|
294
|
+
- Ask: "What would you like to change?"
|
|
295
|
+
- Wait for freeform response
|
|
296
|
+
- Apply corrections to `.blueprint/PROJECT.md` using Edit tool (targeted edits, not full rewrite)
|
|
297
|
+
- Re-read the file and re-generate summary
|
|
298
|
+
- Re-display summary and re-ask (loop back to AskUserQuestion above)
|
|
299
|
+
|
|
300
|
+
**If "Review full file":**
|
|
301
|
+
- Display raw file content: `cat .blueprint/PROJECT.md`
|
|
302
|
+
- Then re-ask (loop back to AskUserQuestion above, without re-displaying summary)
|
|
303
|
+
|
|
304
|
+
Loop until user selects "Approve". Only commit after approval.
|
|
305
|
+
|
|
218
306
|
## 5. Workflow Preferences
|
|
219
307
|
|
|
220
308
|
**Round 1 — Core workflow settings (4 questions):**
|
|
@@ -373,6 +461,76 @@ Display stage banner:
|
|
|
373
461
|
Researching [domain] ecosystem...
|
|
374
462
|
```
|
|
375
463
|
|
|
464
|
+
### 6a. Pre-Research Interview
|
|
465
|
+
|
|
466
|
+
**If auto mode:** Skip interview entirely. Researchers receive default context (all focus areas, no known problems, "Research should recommend"). Proceed directly to research directory creation.
|
|
467
|
+
|
|
468
|
+
**Interactive mode:**
|
|
469
|
+
|
|
470
|
+
Display interview banner:
|
|
471
|
+
```
|
|
472
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
473
|
+
Blueprint ► PRE-RESEARCH INTERVIEW
|
|
474
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
475
|
+
|
|
476
|
+
Your input shapes what researchers investigate.
|
|
477
|
+
Quick 2-round interview — skip with default answers if unsure.
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
**Round 1 (2 questions):**
|
|
481
|
+
|
|
482
|
+
AskUserQuestion:
|
|
483
|
+
- header: "Focus"
|
|
484
|
+
- question: "What aspects of {domain} should research focus on?"
|
|
485
|
+
- multiSelect: true
|
|
486
|
+
- options:
|
|
487
|
+
- "Technology stack" — Best frameworks, libraries, databases for this domain
|
|
488
|
+
- "Architecture patterns" — How to structure the system, component design
|
|
489
|
+
- "Feature landscape" — What users expect, table stakes vs differentiators
|
|
490
|
+
- "Common pitfalls" — What goes wrong, what to avoid
|
|
491
|
+
|
|
492
|
+
AskUserQuestion:
|
|
493
|
+
- header: "Known"
|
|
494
|
+
- question: "Are there known technical challenges or constraints?"
|
|
495
|
+
- options:
|
|
496
|
+
- "Yes, let me describe" — I know specific issues to investigate
|
|
497
|
+
- "Not sure" — Research should discover these
|
|
498
|
+
- "Domain is new to me" — Full ecosystem discovery needed
|
|
499
|
+
|
|
500
|
+
**If "Yes, let me describe":**
|
|
501
|
+
Ask freeform: "Describe the known challenges or constraints:"
|
|
502
|
+
Wait for response. Capture as known_problems context.
|
|
503
|
+
|
|
504
|
+
**Round 2:**
|
|
505
|
+
|
|
506
|
+
AskUserQuestion:
|
|
507
|
+
- header: "Conventions"
|
|
508
|
+
- question: "Any technology preferences or conventions to follow?"
|
|
509
|
+
- options:
|
|
510
|
+
- "Yes, let me specify" — I have stack/pattern preferences
|
|
511
|
+
- "Research should recommend" — No strong preferences
|
|
512
|
+
- "Must match existing codebase" — Research should check compatibility
|
|
513
|
+
|
|
514
|
+
**If "Yes, let me specify":**
|
|
515
|
+
Ask freeform: "Describe your technology preferences or conventions:"
|
|
516
|
+
Wait for response. Capture as conventions context.
|
|
517
|
+
|
|
518
|
+
**Format interview responses:**
|
|
519
|
+
|
|
520
|
+
Assemble all responses into a structured block:
|
|
521
|
+
|
|
522
|
+
```markdown
|
|
523
|
+
<user_research_guidance>
|
|
524
|
+
## User Research Guidance
|
|
525
|
+
|
|
526
|
+
**Focus areas:** {selected areas from Q1, comma-separated}
|
|
527
|
+
**Known problems:** {user's freeform description from Q2, or "None specified" / "Domain is new — full discovery needed"}
|
|
528
|
+
**Conventions:** {user's freeform description from Q4, or "Research should recommend" / "Must match existing codebase"}
|
|
529
|
+
</user_research_guidance>
|
|
530
|
+
```
|
|
531
|
+
|
|
532
|
+
This `<user_research_guidance>` block is appended after `<project_context>` in ALL 4 researcher spawn prompts below.
|
|
533
|
+
|
|
376
534
|
Create research directory:
|
|
377
535
|
```bash
|
|
378
536
|
mkdir -p .blueprint/research
|
|
@@ -417,6 +575,8 @@ What's the standard 2025 stack for [domain]?
|
|
|
417
575
|
[PROJECT.md summary - core value, constraints, what they're building]
|
|
418
576
|
</project_context>
|
|
419
577
|
|
|
578
|
+
{user_research_guidance block from interview — omit if auto mode}
|
|
579
|
+
|
|
420
580
|
<downstream_consumer>
|
|
421
581
|
Your STACK.md feeds into roadmap creation. Be prescriptive:
|
|
422
582
|
- Specific libraries with versions
|
|
@@ -457,6 +617,8 @@ What features do [domain] products have? What's table stakes vs differentiating?
|
|
|
457
617
|
[PROJECT.md summary]
|
|
458
618
|
</project_context>
|
|
459
619
|
|
|
620
|
+
{user_research_guidance block from interview — omit if auto mode}
|
|
621
|
+
|
|
460
622
|
<downstream_consumer>
|
|
461
623
|
Your FEATURES.md feeds into requirements definition. Categorize clearly:
|
|
462
624
|
- Table stakes (must have or users leave)
|
|
@@ -497,6 +659,8 @@ How are [domain] systems typically structured? What are major components?
|
|
|
497
659
|
[PROJECT.md summary]
|
|
498
660
|
</project_context>
|
|
499
661
|
|
|
662
|
+
{user_research_guidance block from interview — omit if auto mode}
|
|
663
|
+
|
|
500
664
|
<downstream_consumer>
|
|
501
665
|
Your ARCHITECTURE.md informs phase structure in roadmap. Include:
|
|
502
666
|
- Component boundaries (what talks to what)
|
|
@@ -537,6 +701,8 @@ What do [domain] projects commonly get wrong? Critical mistakes?
|
|
|
537
701
|
[PROJECT.md summary]
|
|
538
702
|
</project_context>
|
|
539
703
|
|
|
704
|
+
{user_research_guidance block from interview — omit if auto mode}
|
|
705
|
+
|
|
540
706
|
<downstream_consumer>
|
|
541
707
|
Your PITFALLS.md prevents mistakes in roadmap/planning. For each pitfall:
|
|
542
708
|
- Warning signs (how to detect early)
|
|
@@ -596,6 +762,112 @@ Display research complete banner and key findings:
|
|
|
596
762
|
Files: `.blueprint/research/`
|
|
597
763
|
```
|
|
598
764
|
|
|
765
|
+
### 6b. Post-Research Verification Gate
|
|
766
|
+
|
|
767
|
+
**If auto mode:** Skip gate. Display brief confirmation and proceed directly to Step 7:
|
|
768
|
+
```
|
|
769
|
+
✓ Research complete — 5 files in .blueprint/research/
|
|
770
|
+
```
|
|
771
|
+
|
|
772
|
+
**Interactive mode:**
|
|
773
|
+
|
|
774
|
+
Read `.blueprint/research/SUMMARY.md` and extract a structured summary.
|
|
775
|
+
|
|
776
|
+
Display with review banner:
|
|
777
|
+
|
|
778
|
+
```
|
|
779
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
780
|
+
Blueprint ► REVIEW: Research Findings
|
|
781
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
782
|
+
|
|
783
|
+
**Domain:** {type of product}
|
|
784
|
+
**Overall confidence:** {HIGH/MEDIUM/LOW}
|
|
785
|
+
|
|
786
|
+
**Stack:** {one-liner from Key Findings}
|
|
787
|
+
**Table stakes:** {count} features identified
|
|
788
|
+
**Top differentiators:** {2-3 most impactful}
|
|
789
|
+
**Critical pitfall:** {most important one}
|
|
790
|
+
|
|
791
|
+
**Roadmap implications:**
|
|
792
|
+
{Suggested phase count} phases suggested
|
|
793
|
+
1. {Phase suggestion}: {rationale}
|
|
794
|
+
2. {Phase suggestion}: {rationale}
|
|
795
|
+
|
|
796
|
+
**Research flags:**
|
|
797
|
+
- Needs deeper research: {phases}
|
|
798
|
+
- Standard patterns: {phases}
|
|
799
|
+
|
|
800
|
+
**Gaps:** {count} areas needing attention
|
|
801
|
+
```
|
|
802
|
+
|
|
803
|
+
Use AskUserQuestion:
|
|
804
|
+
- header: "Research"
|
|
805
|
+
- question: "Do these research findings look right?"
|
|
806
|
+
- options:
|
|
807
|
+
- "Approve" — Findings look good, proceed to requirements
|
|
808
|
+
- "Dig deeper" — I want more detail on a specific area
|
|
809
|
+
- "Corrections" — Some findings are wrong or missing
|
|
810
|
+
- "Review files" — Show me a specific research file
|
|
811
|
+
|
|
812
|
+
**If "Approve":** Proceed to Step 7.
|
|
813
|
+
|
|
814
|
+
**If "Dig deeper":**
|
|
815
|
+
- Ask freeform: "Which area needs deeper research, and what concerns do you have?"
|
|
816
|
+
- Wait for response. Capture the area and concerns.
|
|
817
|
+
- Spawn a single targeted researcher:
|
|
818
|
+
```
|
|
819
|
+
Task(prompt="First, read ~/.claude/agents/bp-project-researcher.md for your role and instructions.
|
|
820
|
+
|
|
821
|
+
<research_type>
|
|
822
|
+
Targeted deep-dive — {area user specified} for [domain].
|
|
823
|
+
</research_type>
|
|
824
|
+
|
|
825
|
+
<user_concern>
|
|
826
|
+
{user's description of what needs deeper investigation}
|
|
827
|
+
</user_concern>
|
|
828
|
+
|
|
829
|
+
<existing_research>
|
|
830
|
+
Read these files for context on what's already been researched:
|
|
831
|
+
- .blueprint/research/SUMMARY.md
|
|
832
|
+
- .blueprint/research/{relevant file based on area}
|
|
833
|
+
</existing_research>
|
|
834
|
+
|
|
835
|
+
<project_context>
|
|
836
|
+
[PROJECT.md summary]
|
|
837
|
+
</project_context>
|
|
838
|
+
|
|
839
|
+
<output>
|
|
840
|
+
Update the relevant research file in .blueprint/research/ with deeper findings.
|
|
841
|
+
Then update .blueprint/research/SUMMARY.md to reflect new information.
|
|
842
|
+
</output>
|
|
843
|
+
", subagent_type="general-purpose", model="{researcher_model}", description="Deep-dive: {area}")
|
|
844
|
+
```
|
|
845
|
+
- After researcher completes, re-read SUMMARY.md
|
|
846
|
+
- Re-generate summary and re-enter this gate (loop back to AskUserQuestion above)
|
|
847
|
+
|
|
848
|
+
**If "Corrections":**
|
|
849
|
+
- Ask: "What's wrong or missing in the research?"
|
|
850
|
+
- Wait for freeform response
|
|
851
|
+
- Apply corrections to the relevant research files using Edit tool
|
|
852
|
+
- Update SUMMARY.md if affected
|
|
853
|
+
- Re-read SUMMARY.md and re-generate summary
|
|
854
|
+
- Re-display summary and re-ask (loop back to AskUserQuestion above)
|
|
855
|
+
|
|
856
|
+
**If "Review files":**
|
|
857
|
+
- Ask which file to review:
|
|
858
|
+
AskUserQuestion:
|
|
859
|
+
- header: "File"
|
|
860
|
+
- question: "Which research file do you want to review?"
|
|
861
|
+
- options:
|
|
862
|
+
- "SUMMARY.md" — Research synthesis and key findings
|
|
863
|
+
- "STACK.md" — Technology stack recommendations
|
|
864
|
+
- "FEATURES.md" — Feature landscape analysis
|
|
865
|
+
- "ARCHITECTURE.md" — System architecture patterns
|
|
866
|
+
- Display the selected file: `cat .blueprint/research/{selected_file}`
|
|
867
|
+
- Then re-ask (loop back to the main AskUserQuestion above, without re-displaying summary)
|
|
868
|
+
|
|
869
|
+
Loop until user selects "Approve".
|
|
870
|
+
|
|
599
871
|
**If "Skip research":** Continue to Step 7.
|
|
600
872
|
|
|
601
873
|
## 7. Define Requirements
|
|
@@ -712,37 +984,69 @@ Reject vague requirements. Push for specificity:
|
|
|
712
984
|
- "Handle authentication" → "User can log in with email/password and stay logged in across sessions"
|
|
713
985
|
- "Support sharing" → "User can share post via link that opens in recipient's browser"
|
|
714
986
|
|
|
715
|
-
|
|
987
|
+
### 7a. Requirements Verification Gate
|
|
716
988
|
|
|
717
|
-
|
|
989
|
+
**If auto mode:** Skip gate. Display brief confirmation and commit directly:
|
|
990
|
+
```
|
|
991
|
+
✓ REQUIREMENTS.md created at .blueprint/REQUIREMENTS.md ({line_count} lines)
|
|
992
|
+
```
|
|
993
|
+
```bash
|
|
994
|
+
node ~/.claude/blueprint/bin/blueprint-tools.js commit "docs: define v1 requirements" --files .blueprint/REQUIREMENTS.md
|
|
995
|
+
```
|
|
996
|
+
Proceed to Step 8.
|
|
997
|
+
|
|
998
|
+
**Interactive mode:**
|
|
999
|
+
|
|
1000
|
+
Read back `.blueprint/REQUIREMENTS.md` and extract a structured summary.
|
|
1001
|
+
|
|
1002
|
+
Display with review banner:
|
|
718
1003
|
|
|
719
1004
|
```
|
|
720
|
-
|
|
1005
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
1006
|
+
Blueprint ► REVIEW: Requirements
|
|
1007
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
721
1008
|
|
|
722
|
-
|
|
723
|
-
- [ ] **AUTH-01**: User can create account with email/password
|
|
724
|
-
- [ ] **AUTH-02**: User can log in and stay logged in across sessions
|
|
725
|
-
- [ ] **AUTH-03**: User can log out from any page
|
|
1009
|
+
**v1 scope:** {total count} requirements across {category count} categories
|
|
726
1010
|
|
|
727
|
-
|
|
728
|
-
-
|
|
729
|
-
- [ ] **CONT-02**: User can edit their own posts
|
|
1011
|
+
For each category:
|
|
1012
|
+
- **{Category} ({count}):** {comma-separated REQ-IDs with brief labels}
|
|
730
1013
|
|
|
731
|
-
|
|
1014
|
+
**v2 deferred:** {count} requirements
|
|
732
1015
|
|
|
733
|
-
|
|
1016
|
+
**Out of scope:** {count} exclusions
|
|
1017
|
+
For each:
|
|
1018
|
+
- {Feature}: {reason}
|
|
734
1019
|
|
|
735
|
-
|
|
1020
|
+
**Coverage check:** All v1 requirements mapped? {yes/no}
|
|
736
1021
|
```
|
|
737
1022
|
|
|
738
|
-
|
|
1023
|
+
Use AskUserQuestion:
|
|
1024
|
+
- header: "Requirements"
|
|
1025
|
+
- question: "Does this accurately capture what you're building?"
|
|
1026
|
+
- options:
|
|
1027
|
+
- "Approve" — Looks good, proceed to roadmap
|
|
1028
|
+
- "Corrections" — I want to change some things
|
|
1029
|
+
- "Review full file" — Show me the raw file first
|
|
739
1030
|
|
|
740
|
-
**Commit
|
|
1031
|
+
**If "Approve":** Commit and proceed to Step 8.
|
|
741
1032
|
|
|
742
1033
|
```bash
|
|
743
1034
|
node ~/.claude/blueprint/bin/blueprint-tools.js commit "docs: define v1 requirements" --files .blueprint/REQUIREMENTS.md
|
|
744
1035
|
```
|
|
745
1036
|
|
|
1037
|
+
**If "Corrections":**
|
|
1038
|
+
- Ask: "What would you like to change?"
|
|
1039
|
+
- Wait for freeform response
|
|
1040
|
+
- Apply corrections to `.blueprint/REQUIREMENTS.md` using Edit tool (targeted edits, not full rewrite)
|
|
1041
|
+
- Re-read the file and re-generate summary
|
|
1042
|
+
- Re-display summary and re-ask (loop back to AskUserQuestion above)
|
|
1043
|
+
|
|
1044
|
+
**If "Review full file":**
|
|
1045
|
+
- Display raw file content: `cat .blueprint/REQUIREMENTS.md`
|
|
1046
|
+
- Then re-ask (loop back to AskUserQuestion above, without re-displaying summary)
|
|
1047
|
+
|
|
1048
|
+
Loop until user selects "Approve". Only commit after approval.
|
|
1049
|
+
|
|
746
1050
|
## 8. Create Roadmap
|
|
747
1051
|
|
|
748
1052
|
Display stage banner:
|
|
@@ -797,80 +1101,113 @@ Write files first, then return. This ensures artifacts persist even if context i
|
|
|
797
1101
|
|
|
798
1102
|
**If `## ROADMAP CREATED`:**
|
|
799
1103
|
|
|
800
|
-
Read the created ROADMAP.md and
|
|
1104
|
+
Read the created ROADMAP.md and extract a structured summary.
|
|
801
1105
|
|
|
1106
|
+
**If auto mode:** Skip approval gate — auto-approve and commit directly:
|
|
802
1107
|
```
|
|
803
|
-
|
|
1108
|
+
✓ ROADMAP.md created at .blueprint/ROADMAP.md ({line_count} lines, {phase_count} phases)
|
|
1109
|
+
```
|
|
1110
|
+
```bash
|
|
1111
|
+
node ~/.claude/blueprint/bin/blueprint-tools.js commit "docs: create roadmap ([N] phases)" --files .blueprint/ROADMAP.md .blueprint/STATE.md .blueprint/REQUIREMENTS.md
|
|
1112
|
+
```
|
|
1113
|
+
Proceed to Step 9.
|
|
804
1114
|
|
|
805
|
-
|
|
1115
|
+
**Interactive mode — CRITICAL: Ask for approval before committing:**
|
|
806
1116
|
|
|
807
|
-
|
|
1117
|
+
Display with review banner:
|
|
808
1118
|
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
| 3 | [Name] | [Goal] | [REQ-IDs] | [count] |
|
|
814
|
-
...
|
|
1119
|
+
```
|
|
1120
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
1121
|
+
Blueprint ► REVIEW: Roadmap
|
|
1122
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
815
1123
|
|
|
816
|
-
|
|
1124
|
+
**Phases:** {count} phases | **Depth:** {depth setting}
|
|
817
1125
|
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
1. [criterion]
|
|
823
|
-
2. [criterion]
|
|
824
|
-
3. [criterion]
|
|
1126
|
+
| # | Phase | Goal | Requirements | Success Criteria |
|
|
1127
|
+
|---|-------|------|--------------|------------------|
|
|
1128
|
+
| {n} | {name} | {goal} | {REQ-IDs} | {count} criteria |
|
|
1129
|
+
[... for all phases ...]
|
|
825
1130
|
|
|
826
|
-
**
|
|
827
|
-
Goal: [goal]
|
|
828
|
-
Requirements: [REQ-IDs]
|
|
829
|
-
Success criteria:
|
|
830
|
-
1. [criterion]
|
|
831
|
-
2. [criterion]
|
|
1131
|
+
**Requirement coverage:** {mapped}/{total} v1 requirements mapped
|
|
832
1132
|
|
|
833
|
-
|
|
1133
|
+
**Phase dependencies:**
|
|
1134
|
+
{Phase N} → {Phase M} → ... (dependency chain)
|
|
834
1135
|
|
|
835
|
-
|
|
1136
|
+
**Success criteria preview** (Phase 1 only, to show quality):
|
|
1137
|
+
1. {criterion 1}
|
|
1138
|
+
2. {criterion 2}
|
|
1139
|
+
3. {criterion 3}
|
|
836
1140
|
```
|
|
837
1141
|
|
|
838
|
-
**If auto mode:** Skip approval gate — auto-approve and commit directly.
|
|
839
|
-
|
|
840
|
-
**CRITICAL: Ask for approval before committing (interactive mode only):**
|
|
841
|
-
|
|
842
1142
|
Use AskUserQuestion:
|
|
843
1143
|
- header: "Roadmap"
|
|
844
1144
|
- question: "Does this roadmap structure work for you?"
|
|
845
1145
|
- options:
|
|
846
1146
|
- "Approve" — Commit and continue
|
|
847
|
-
- "Adjust phases" —
|
|
1147
|
+
- "Adjust phases" — Change phase structure
|
|
1148
|
+
- "Review criteria" — Show all success criteria for all phases
|
|
848
1149
|
- "Review full file" — Show raw ROADMAP.md
|
|
849
1150
|
|
|
850
1151
|
**If "Approve":** Continue to commit.
|
|
851
1152
|
|
|
852
1153
|
**If "Adjust phases":**
|
|
853
|
-
|
|
854
|
-
|
|
1154
|
+
|
|
1155
|
+
Ask which kind of adjustment:
|
|
1156
|
+
|
|
1157
|
+
AskUserQuestion:
|
|
1158
|
+
- header: "Adjust"
|
|
1159
|
+
- question: "What kind of adjustment?"
|
|
1160
|
+
- options:
|
|
1161
|
+
- "Reorder phases" — Change the sequence of phases
|
|
1162
|
+
- "Split or merge" — Split a large phase or merge small ones
|
|
1163
|
+
- "Change scope" — Move requirements between phases
|
|
1164
|
+
- "Change criteria" — Modify success criteria for a phase
|
|
1165
|
+
|
|
1166
|
+
Capture the user's specific adjustment notes based on their selection.
|
|
1167
|
+
|
|
1168
|
+
Re-spawn roadmapper with revision context:
|
|
1169
|
+
```
|
|
1170
|
+
Task(prompt="
|
|
1171
|
+
<revision>
|
|
1172
|
+
User feedback on roadmap:
|
|
1173
|
+
Adjustment type: {selected adjustment type}
|
|
1174
|
+
Details: [user's notes]
|
|
1175
|
+
|
|
1176
|
+
Current ROADMAP.md: @.blueprint/ROADMAP.md
|
|
1177
|
+
|
|
1178
|
+
Update the roadmap based on feedback. Edit files in place.
|
|
1179
|
+
Return ROADMAP REVISED with changes made.
|
|
1180
|
+
</revision>
|
|
1181
|
+
", subagent_type="bp-roadmapper", model="{roadmapper_model}", description="Revise roadmap")
|
|
1182
|
+
```
|
|
1183
|
+
|
|
1184
|
+
After roadmapper returns:
|
|
1185
|
+
- Re-read ROADMAP.md and re-generate summary
|
|
1186
|
+
- Re-display summary and re-ask (loop back to the main AskUserQuestion above)
|
|
1187
|
+
- Loop until user selects "Approve"
|
|
1188
|
+
|
|
1189
|
+
**If "Review criteria":**
|
|
1190
|
+
- Read ROADMAP.md and extract ALL success criteria for ALL phases
|
|
1191
|
+
- Display them grouped by phase:
|
|
855
1192
|
```
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
1193
|
+
## Success Criteria — All Phases
|
|
1194
|
+
|
|
1195
|
+
**Phase 1: {Name}**
|
|
1196
|
+
1. {criterion}
|
|
1197
|
+
2. {criterion}
|
|
1198
|
+
3. {criterion}
|
|
860
1199
|
|
|
861
|
-
|
|
1200
|
+
**Phase 2: {Name}**
|
|
1201
|
+
1. {criterion}
|
|
1202
|
+
2. {criterion}
|
|
862
1203
|
|
|
863
|
-
|
|
864
|
-
Return ROADMAP REVISED with changes made.
|
|
865
|
-
</revision>
|
|
866
|
-
", subagent_type="bp-roadmapper", model="{roadmapper_model}", description="Revise roadmap")
|
|
1204
|
+
[... all phases ...]
|
|
867
1205
|
```
|
|
868
|
-
-
|
|
869
|
-
- Loop until user approves
|
|
1206
|
+
- Then re-ask (loop back to the main AskUserQuestion above, without re-displaying the summary)
|
|
870
1207
|
|
|
871
|
-
**If "Review full file":** Display raw `cat .blueprint/ROADMAP.md`, then re-ask.
|
|
1208
|
+
**If "Review full file":** Display raw `cat .blueprint/ROADMAP.md`, then re-ask (loop back to the main AskUserQuestion above).
|
|
872
1209
|
|
|
873
|
-
**Commit roadmap (after approval
|
|
1210
|
+
**Commit roadmap (after approval):**
|
|
874
1211
|
|
|
875
1212
|
```bash
|
|
876
1213
|
node ~/.claude/blueprint/bin/blueprint-tools.js commit "docs: create roadmap ([N] phases)" --files .blueprint/ROADMAP.md .blueprint/STATE.md .blueprint/REQUIREMENTS.md
|
|
@@ -939,14 +1276,17 @@ Present completion with next steps:
|
|
|
939
1276
|
- [ ] Git repo initialized
|
|
940
1277
|
- [ ] Brownfield detection completed
|
|
941
1278
|
- [ ] Deep questioning completed (threads followed, not rushed)
|
|
942
|
-
- [ ] PROJECT.md captures full context → **committed**
|
|
1279
|
+
- [ ] PROJECT.md captures full context → **verified by user** → **committed**
|
|
943
1280
|
- [ ] config.json has workflow mode, depth, parallelization → **committed**
|
|
1281
|
+
- [ ] Pre-research interview completed (if interactive + research selected)
|
|
944
1282
|
- [ ] Research completed (if selected) — 4 parallel agents spawned → **committed**
|
|
1283
|
+
- [ ] Research findings reviewed by user (if interactive + research selected)
|
|
945
1284
|
- [ ] Requirements gathered (from research or conversation)
|
|
946
1285
|
- [ ] User scoped each category (v1/v2/out of scope)
|
|
947
|
-
- [ ] REQUIREMENTS.md created with REQ-IDs → **committed**
|
|
1286
|
+
- [ ] REQUIREMENTS.md created with REQ-IDs → **verified by user** → **committed**
|
|
948
1287
|
- [ ] bp-roadmapper spawned with context
|
|
949
1288
|
- [ ] Roadmap files written immediately (not draft)
|
|
1289
|
+
- [ ] Roadmap reviewed by user with structured summary (if interactive)
|
|
950
1290
|
- [ ] User feedback incorporated (if any)
|
|
951
1291
|
- [ ] ROADMAP.md created with phases, requirement mappings, success criteria
|
|
952
1292
|
- [ ] STATE.md initialized
|