projecta-rrr 1.15.0 → 1.15.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "projecta-rrr",
3
- "version": "1.15.0",
3
+ "version": "1.15.2",
4
4
  "description": "A meta-prompting, context engineering and spec-driven development system for Claude Code by Projecta.ai",
5
5
  "bin": {
6
6
  "projecta-rrr": "bin/install.js"
@@ -421,17 +421,17 @@ Extract completed milestone details and create archive file.
421
421
 
422
422
  **Process:**
423
423
 
424
- 1. Ensure archive directory exists (Cross-Platform):
424
+ 1. Ensure milestone directory exists (Cross-Platform):
425
425
 
426
426
  **On macOS/Linux:**
427
427
  ```bash
428
- mkdir -p .planning/archived/roadmaps
428
+ mkdir -p .planning/milestones/v[X.Y]
429
429
  ```
430
430
 
431
431
  **On Windows:**
432
432
  Use Write tool to create a placeholder file, or directory will be created when writing archive.
433
433
 
434
- 2. Create archive file path: `.planning/archived/roadmaps/ROADMAP-v[X.Y].md`
434
+ 2. Create archive file path: `.planning/milestones/v[X.Y]/ROADMAP.md`
435
435
 
436
436
  3. Read `~/.claude/rrr/templates/milestone-archive.md` template
437
437
 
@@ -456,17 +456,17 @@ Extract completed milestone details and create archive file.
456
456
  - {{DECISIONS_FROM_PROJECT}} — Key decisions from PROJECT.md
457
457
  - {{ISSUES_RESOLVED_DURING_MILESTONE}} — From summaries
458
458
 
459
- 7. Write filled template to `.planning/archived/roadmaps/ROADMAP-v[X.Y].md`
459
+ 7. Write filled template to `.planning/milestones/v[X.Y]/ROADMAP.md`
460
460
 
461
461
  8. Verify archive exists (Cross-Platform):
462
462
 
463
463
  **On macOS/Linux:**
464
464
  ```bash
465
- ls .planning/archived/roadmaps/ROADMAP-v[X.Y].md
465
+ ls .planning/milestones/v[X.Y]/ROADMAP.md
466
466
  ```
467
467
 
468
468
  **On Windows:**
469
- Use Glob tool: `pattern: ".planning/archived/roadmaps/ROADMAP-v[X.Y].md"`
469
+ Use Glob tool: `pattern: ".planning/milestones/v[X.Y]/ROADMAP.md"`
470
470
 
471
471
  9. **Create fresh ROADMAP.md** (CRITICAL: must always exist):
472
472
 
@@ -480,7 +480,7 @@ Extract completed milestone details and create archive file.
480
480
  ## Completed Milestones
481
481
 
482
482
  - ✅ **v[X.Y] [Name]** — Phases [X-Y] (shipped [DATE])
483
- - Archive: `.planning/archived/roadmaps/ROADMAP-v[X.Y].md`
483
+ - Archive: `.planning/milestones/v[X.Y]/`
484
484
 
485
485
  ## Next Milestone
486
486
 
@@ -506,7 +506,7 @@ Extract completed milestone details and create archive file.
506
506
  ✅ Fresh ROADMAP.md created (between milestones state)
507
507
  ```
508
508
 
509
- **Note:** Phase directories (`.planning/phases/`) are NOT deleted. They accumulate across milestones as the raw execution history. Phase numbering continues (v1.0 phases 1-4, v1.1 phases 5-8, etc.).
509
+ **Note:** Phase directories are moved to `.planning/milestones/v[X.Y]/phases/` in the next step. This keeps each milestone's execution history self-contained in its archive folder.
510
510
 
511
511
  </step>
512
512
 
@@ -521,7 +521,7 @@ Archive requirements and prepare for fresh requirements in next milestone.
521
521
  cat .planning/REQUIREMENTS.md
522
522
  ```
523
523
 
524
- 2. Create archive file: `.planning/milestones/v[X.Y]-REQUIREMENTS.md`
524
+ 2. Create archive file: `.planning/milestones/v[X.Y]/REQUIREMENTS.md`
525
525
 
526
526
  3. Transform requirements for archive:
527
527
  - Mark all v1 requirements as `[x]` complete
@@ -565,7 +565,7 @@ Archive requirements and prepare for fresh requirements in next milestone.
565
565
 
566
566
  6. Confirm:
567
567
  ```
568
- ✅ Requirements archived to milestones/v[X.Y]-REQUIREMENTS.md
568
+ ✅ Requirements archived to milestones/v[X.Y]/REQUIREMENTS.md
569
569
  ✅ REQUIREMENTS.md deleted (fresh one needed for next milestone)
570
570
  ```
571
571
 
@@ -578,19 +578,112 @@ Archive requirements and prepare for fresh requirements in next milestone.
578
578
  Move the milestone audit file to the archive (if it exists):
579
579
 
580
580
  ```bash
581
- # Move audit to milestones folder (if exists)
582
- [ -f .planning/v[X.Y]-MILESTONE-AUDIT.md ] && mv .planning/v[X.Y]-MILESTONE-AUDIT.md .planning/milestones/
581
+ # Move audit to milestone folder (if exists)
582
+ [ -f .planning/v[X.Y]-MILESTONE-AUDIT.md ] && mv .planning/v[X.Y]-MILESTONE-AUDIT.md .planning/milestones/v[X.Y]/MILESTONE-AUDIT.md
583
583
  ```
584
584
 
585
585
  Confirm:
586
586
  ```
587
- ✅ Audit archived to milestones/v[X.Y]-MILESTONE-AUDIT.md
587
+ ✅ Audit archived to milestones/v[X.Y]/MILESTONE-AUDIT.md
588
588
  ```
589
589
 
590
590
  (Skip silently if no audit file exists — audit is optional)
591
591
 
592
592
  </step>
593
593
 
594
+ <step name="move_phases">
595
+
596
+ Move completed milestone phase directories to the milestone archive folder.
597
+
598
+ **Process:**
599
+
600
+ 1. Create milestone phases directory:
601
+ ```bash
602
+ mkdir -p .planning/milestones/v[X.Y]/phases
603
+ ```
604
+
605
+ 2. Get list of phases in this milestone (from roadmap archive or phase numbers):
606
+ ```bash
607
+ # For each phase number in milestone range (e.g., 47-51):
608
+ for phase_num in {PHASE_START}..{PHASE_END}; do
609
+ # Find phase directory by number prefix
610
+ phase_dir=$(ls -d .planning/phases/${phase_num}-* 2>/dev/null | head -1)
611
+ if [ -n "$phase_dir" ] && [ -d "$phase_dir" ]; then
612
+ mv "$phase_dir" .planning/milestones/v[X.Y]/phases/
613
+ fi
614
+ done
615
+ ```
616
+
617
+ 3. Verify phases moved (Cross-Platform):
618
+
619
+ **On macOS/Linux:**
620
+ ```bash
621
+ ls .planning/milestones/v[X.Y]/phases/
622
+ ```
623
+
624
+ **On Windows:**
625
+ Use Glob: `pattern: ".planning/milestones/v[X.Y]/phases/*"`
626
+
627
+ 4. Confirm:
628
+ ```
629
+ ✅ Phases [PHASE_START]-[PHASE_END] moved to milestones/v[X.Y]/phases/
630
+ ```
631
+
632
+ **Why move phases:**
633
+ - Keeps milestone archives self-contained (roadmap + requirements + phases)
634
+ - `.planning/phases/` only contains active/upcoming work
635
+ - Reduces clutter in phases directory as project matures
636
+ - Phase lookup still works via `find_phase_dir()` which searches both locations
637
+
638
+ </step>
639
+
640
+ <step name="consolidate_legacy_files">
641
+
642
+ Consolidate any scattered milestone files from older formats into the unified folder structure.
643
+
644
+ **Process:**
645
+
646
+ This step cleans up legacy file locations from before the unified milestone folder structure was introduced.
647
+
648
+ ```bash
649
+ # For each milestone folder that exists
650
+ for milestone_dir in .planning/milestones/v*/; do
651
+ version=$(basename "$milestone_dir") # e.g., "v1.10"
652
+
653
+ # Move scattered REQUIREMENTS file if exists at milestones/ level
654
+ [ -f ".planning/milestones/${version}-REQUIREMENTS.md" ] && \
655
+ mv ".planning/milestones/${version}-REQUIREMENTS.md" "${milestone_dir}REQUIREMENTS.md"
656
+
657
+ # Move scattered MILESTONE-AUDIT file if exists at milestones/ level
658
+ [ -f ".planning/milestones/${version}-MILESTONE-AUDIT.md" ] && \
659
+ mv ".planning/milestones/${version}-MILESTONE-AUDIT.md" "${milestone_dir}MILESTONE-AUDIT.md"
660
+
661
+ # Move scattered ROADMAP file if exists at milestones/ level
662
+ [ -f ".planning/milestones/${version}-ROADMAP.md" ] && \
663
+ mv ".planning/milestones/${version}-ROADMAP.md" "${milestone_dir}ROADMAP.md"
664
+
665
+ # Move ROADMAP from archived/roadmaps/ if exists there
666
+ [ -f ".planning/archived/roadmaps/ROADMAP-${version}.md" ] && \
667
+ mv ".planning/archived/roadmaps/ROADMAP-${version}.md" "${milestone_dir}ROADMAP.md"
668
+ done
669
+
670
+ # Clean up empty archived directory if all roadmaps moved
671
+ rmdir .planning/archived/roadmaps 2>/dev/null || true
672
+ rmdir .planning/archived 2>/dev/null || true
673
+ ```
674
+
675
+ **Confirm (only if files were moved):**
676
+ ```
677
+ ✅ Consolidated legacy milestone files into unified folders
678
+ ```
679
+
680
+ **Why consolidate:**
681
+ - Maintains backwards compatibility with older projects
682
+ - Ensures all milestone data is in one place
683
+ - Simplifies navigation and backup
684
+
685
+ </step>
686
+
594
687
  <step name="update_state">
595
688
 
596
689
  Update STATE.md to reflect milestone completion.
@@ -662,10 +755,8 @@ git push origin v[X.Y]
662
755
  Commit milestone completion including archive files.
663
756
 
664
757
  ```bash
665
- # Stage archive files (new location)
666
- git add .planning/archived/roadmaps/ROADMAP-v[X.Y].md
667
- git add .planning/milestones/v[X.Y]-REQUIREMENTS.md
668
- git add .planning/milestones/v[X.Y]-MILESTONE-AUDIT.md 2>/dev/null || true
758
+ # Stage milestone archive folder (contains ROADMAP.md, REQUIREMENTS.md, MILESTONE-AUDIT.md, phases/)
759
+ git add .planning/milestones/v[X.Y]/
669
760
 
670
761
  # Stage updated/created files
671
762
  git add .planning/MILESTONES.md
@@ -680,16 +771,18 @@ git add -u .planning/REQUIREMENTS.md 2>/dev/null || true
680
771
  git commit -m "$(cat <<'EOF'
681
772
  chore: complete v[X.Y] milestone
682
773
 
683
- Archived:
684
- - archived/roadmaps/ROADMAP-v[X.Y].md (old roadmap)
685
- - milestones/v[X.Y]-REQUIREMENTS.md
686
- - milestones/v[X.Y]-MILESTONE-AUDIT.md (if audit was run)
774
+ Archived to milestones/v[X.Y]/:
775
+ - ROADMAP.md (milestone roadmap)
776
+ - REQUIREMENTS.md (milestone requirements)
777
+ - MILESTONE-AUDIT.md (if audit was run)
778
+ - phases/ (all phase directories moved)
687
779
 
688
780
  Created:
689
781
  - ROADMAP.md (fresh, between milestones state)
690
782
 
691
783
  Deleted:
692
784
  - REQUIREMENTS.md (fresh one needed for next milestone)
785
+ - phases/[X]-* through phases/[Y]-* (moved to milestone folder)
693
786
 
694
787
  Updated:
695
788
  - MILESTONES.md (new entry)
@@ -715,8 +808,7 @@ Shipped:
715
808
  - [One sentence of what shipped]
716
809
 
717
810
  Archived:
718
- - milestones/v[X.Y]-ROADMAP.md
719
- - milestones/v[X.Y]-REQUIREMENTS.md
811
+ - milestones/v[X.Y]/ (ROADMAP.md, REQUIREMENTS.md, phases/)
720
812
 
721
813
  Summary: .planning/MILESTONES.md
722
814
  Tag: v[X.Y]
@@ -791,10 +883,13 @@ Milestone completion is successful when:
791
883
  - [ ] PROJECT.md full evolution review completed
792
884
  - [ ] All shipped requirements moved to Validated in PROJECT.md
793
885
  - [ ] Key Decisions updated with outcomes
794
- - [ ] Roadmap archive created (archived/roadmaps/ROADMAP-v[X.Y].md)
886
+ - [ ] Milestone folder created (milestones/v[X.Y]/)
887
+ - [ ] Roadmap archive created (milestones/v[X.Y]/ROADMAP.md)
795
888
  - [ ] Fresh ROADMAP.md created (between milestones state) — MUST ALWAYS EXIST
796
- - [ ] Requirements archive created (milestones/v[X.Y]-REQUIREMENTS.md)
889
+ - [ ] Requirements archive created (milestones/v[X.Y]/REQUIREMENTS.md)
797
890
  - [ ] REQUIREMENTS.md deleted (fresh for next milestone)
891
+ - [ ] Phase directories moved to milestones/v[X.Y]/phases/
892
+ - [ ] Legacy scattered files consolidated into milestone folders
798
893
  - [ ] STATE.md updated with fresh project reference
799
894
  - [ ] Git tag created (v[X.Y])
800
895
  - [ ] Milestone commit made (includes archive files)