projecta-rrr 1.18.5 → 1.18.7
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/CHANGELOG.md +16 -0
- package/bin/install.js +0 -22
- package/commands/rrr/check-todos.md +0 -5
- package/commands/rrr/complete-milestone.md +0 -5
- package/commands/rrr/create-roadmap.md +5 -1
- package/commands/rrr/debug.md +0 -5
- package/commands/rrr/execute-phase.md +1 -3
- package/commands/rrr/execute-plan.md +1 -4
- package/commands/rrr/new-milestone.md +0 -5
- package/commands/rrr/pause-work.md +0 -5
- package/commands/rrr/plan-phase.md +32 -10
- package/commands/rrr/progress.md +2 -9
- package/commands/rrr/resume-work.md +1 -4
- package/commands/rrr/verify-work.md +1 -3
- package/package.json +1 -1
- package/scripts/prepublish-check.js +0 -1
- package/scripts/test-install-smoke.js +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,22 @@ All notable changes to RRR will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
6
6
|
|
|
7
|
+
## [1.18.7] - 2026-02-03
|
|
8
|
+
|
|
9
|
+
### Removed
|
|
10
|
+
|
|
11
|
+
- **HUD script** - Removed `rrr-hud.js` and `rrr-hud-dynamic.js` from all workflows and installation
|
|
12
|
+
- Was silently failing due to broken require path after install
|
|
13
|
+
- Inline status updates (from v1.18.4) provide equivalent feedback
|
|
14
|
+
- Removed from 11 workflow files, install.js, smoke test, prepublish check
|
|
15
|
+
|
|
16
|
+
## [1.18.6] - 2026-02-01
|
|
17
|
+
|
|
18
|
+
### Fixed
|
|
19
|
+
|
|
20
|
+
- **plan-phase milestone research lookup** - Now checks milestone research folder first, falls back to project research
|
|
21
|
+
- **create-roadmap milestone research lookup** - Now uses milestone-aware research context
|
|
22
|
+
|
|
7
23
|
## [1.18.5] - 2026-02-01
|
|
8
24
|
|
|
9
25
|
### Added
|
package/bin/install.js
CHANGED
|
@@ -1119,28 +1119,6 @@ function install(isGlobal) {
|
|
|
1119
1119
|
console.log(` ${green}✓${reset} Installed rrr/scripts/handoff-preflight.js`);
|
|
1120
1120
|
}
|
|
1121
1121
|
|
|
1122
|
-
// PATCH-01: Copy rrr-hud.js to ~/.claude/rrr/scripts/
|
|
1123
|
-
// Visual HUD for project state display
|
|
1124
|
-
const hudSrc = path.join(src, 'scripts', 'rrr-hud.js');
|
|
1125
|
-
if (fs.existsSync(hudSrc)) {
|
|
1126
|
-
const scriptsDestDir = path.join(claudeDir, 'rrr', 'scripts');
|
|
1127
|
-
fs.mkdirSync(scriptsDestDir, { recursive: true });
|
|
1128
|
-
const hudDest = path.join(scriptsDestDir, 'rrr-hud.js');
|
|
1129
|
-
fs.copyFileSync(hudSrc, hudDest);
|
|
1130
|
-
console.log(` ${green}✓${reset} Installed rrr/scripts/rrr-hud.js`);
|
|
1131
|
-
}
|
|
1132
|
-
|
|
1133
|
-
// PATCH-01: Copy rrr-hud-dynamic.js to ~/.claude/rrr/scripts/
|
|
1134
|
-
// Dynamic HUD state sync from RRR project files
|
|
1135
|
-
const hudDynamicSrc = path.join(src, 'scripts', 'rrr-hud-dynamic.js');
|
|
1136
|
-
if (fs.existsSync(hudDynamicSrc)) {
|
|
1137
|
-
const scriptsDestDir = path.join(claudeDir, 'rrr', 'scripts');
|
|
1138
|
-
fs.mkdirSync(scriptsDestDir, { recursive: true });
|
|
1139
|
-
const hudDynamicDest = path.join(scriptsDestDir, 'rrr-hud-dynamic.js');
|
|
1140
|
-
fs.copyFileSync(hudDynamicSrc, hudDynamicDest);
|
|
1141
|
-
console.log(` ${green}✓${reset} Installed rrr/scripts/rrr-hud-dynamic.js`);
|
|
1142
|
-
}
|
|
1143
|
-
|
|
1144
1122
|
// PATCH-01: Copy rrr-memory/ directory to ~/.claude/rrr/scripts/
|
|
1145
1123
|
// Memory store and state detector for proactive guidance
|
|
1146
1124
|
const rrrMemorySrc = path.join(src, 'scripts', 'rrr-memory');
|
|
@@ -23,11 +23,6 @@ Enables reviewing captured ideas and deciding what to work on next.
|
|
|
23
23
|
|
|
24
24
|
<process>
|
|
25
25
|
|
|
26
|
-
**Show HUD (first)**
|
|
27
|
-
```bash
|
|
28
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
29
|
-
```
|
|
30
|
-
|
|
31
26
|
<step name="check_exist">
|
|
32
27
|
```bash
|
|
33
28
|
TODO_COUNT=$(ls .planning/todos/pending/*.md 2>/dev/null | wc -l | tr -d ' ')
|
|
@@ -37,11 +37,6 @@ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tag
|
|
|
37
37
|
|
|
38
38
|
<process>
|
|
39
39
|
|
|
40
|
-
**Show HUD (first)**
|
|
41
|
-
```bash
|
|
42
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
43
|
-
```
|
|
44
|
-
|
|
45
40
|
**Follow complete-milestone.md workflow:**
|
|
46
41
|
|
|
47
42
|
0. **Check for audit:**
|
|
@@ -46,7 +46,11 @@ Roadmaps define what work happens in what order. Phases map to requirements.
|
|
|
46
46
|
@.planning/PROJECT.md
|
|
47
47
|
@.planning/config.json
|
|
48
48
|
@.planning/REQUIREMENTS.md
|
|
49
|
-
@.planning/
|
|
49
|
+
@.planning/STATE.md (to detect active milestone)
|
|
50
|
+
|
|
51
|
+
**Research context (checked in order):**
|
|
52
|
+
1. `.planning/milestones/vX.Y/research/SUMMARY.md` (milestone-specific)
|
|
53
|
+
2. `.planning/research/SUMMARY.md` (project-level fallback)
|
|
50
54
|
</context>
|
|
51
55
|
|
|
52
56
|
<process>
|
package/commands/rrr/debug.md
CHANGED
|
@@ -28,11 +28,6 @@ ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5
|
|
|
28
28
|
|
|
29
29
|
<process>
|
|
30
30
|
|
|
31
|
-
**Show HUD (first)**
|
|
32
|
-
```bash
|
|
33
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
34
|
-
```
|
|
35
|
-
|
|
36
31
|
## 1. Check Active Sessions
|
|
37
32
|
|
|
38
33
|
If active sessions exist AND no $ARGUMENTS:
|
|
@@ -38,12 +38,10 @@ Phase: $ARGUMENTS
|
|
|
38
38
|
|
|
39
39
|
<process>
|
|
40
40
|
|
|
41
|
-
0. **
|
|
41
|
+
0. **Refresh scope cache (first)**
|
|
42
42
|
```bash
|
|
43
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
44
43
|
node ~/.claude/rrr/scripts/refresh-scope-cache.js 2>/dev/null || echo "Cache refresh skipped"
|
|
45
44
|
```
|
|
46
|
-
Cross-platform: works in PowerShell on Windows. Shows visual project state before execution.
|
|
47
45
|
|
|
48
46
|
1. **Validate phase exists**
|
|
49
47
|
- Use `find_phase_dir()` from phase-paths library to locate phase directory:
|
|
@@ -48,13 +48,10 @@ Plan path: $ARGUMENTS
|
|
|
48
48
|
|
|
49
49
|
<process>
|
|
50
50
|
|
|
51
|
-
0. **Refresh Scope Cache
|
|
51
|
+
0. **Refresh Scope Cache (first)**
|
|
52
52
|
```bash
|
|
53
53
|
node ~/.claude/rrr/scripts/refresh-scope-cache.js 2>/dev/null || echo "Cache refresh skipped"
|
|
54
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
55
54
|
```
|
|
56
|
-
Cross-platform: works in PowerShell on Windows. Path resolved to installed location.
|
|
57
|
-
Shows visual project state before execution.
|
|
58
55
|
|
|
59
56
|
0. **Track command in memory (before execution)**
|
|
60
57
|
Parse the plan to extract intent from frontmatter and context, then track this execution:
|
|
@@ -37,11 +37,6 @@ Milestone name: $ARGUMENTS (optional - will prompt if not provided)
|
|
|
37
37
|
|
|
38
38
|
<process>
|
|
39
39
|
|
|
40
|
-
**Show HUD (first)**
|
|
41
|
-
```bash
|
|
42
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
43
|
-
```
|
|
44
|
-
|
|
45
40
|
1. **Load context:**
|
|
46
41
|
- Read PROJECT.md (existing project, Validated requirements, decisions)
|
|
47
42
|
- Read MILESTONES.md (what shipped previously)
|
|
@@ -19,11 +19,6 @@ Enables seamless resumption in fresh session with full context restoration.
|
|
|
19
19
|
|
|
20
20
|
<process>
|
|
21
21
|
|
|
22
|
-
**Show HUD (first)**
|
|
23
|
-
```bash
|
|
24
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
25
|
-
```
|
|
26
|
-
|
|
27
22
|
<step name="detect">
|
|
28
23
|
Find current phase directory from most recently modified files.
|
|
29
24
|
</step>
|
|
@@ -39,22 +39,40 @@ Phase number: $ARGUMENTS (optional - auto-detects next unplanned phase if not pr
|
|
|
39
39
|
- `--gaps` — Gap closure mode (reads VERIFICATION.md, skips research)
|
|
40
40
|
- `--skip-verify` — Skip planner → checker verification loop
|
|
41
41
|
|
|
42
|
-
**Research defaults:** If
|
|
42
|
+
**Research defaults:** If research SUMMARY.md exists (milestone or project level), research is skipped by default unless:
|
|
43
43
|
- `--research` flag is set, OR
|
|
44
44
|
- Phase involves risky domains (auth, payments, security, webhooks), OR
|
|
45
45
|
- `.planning/codebase/` is missing for brownfield projects
|
|
46
46
|
|
|
47
|
+
**Research location (checked in order):**
|
|
48
|
+
1. `.planning/milestones/vX.Y/research/SUMMARY.md` (milestone-specific)
|
|
49
|
+
2. `.planning/research/SUMMARY.md` (project-level fallback)
|
|
50
|
+
|
|
47
51
|
Check for existing research and plans:
|
|
48
52
|
|
|
49
53
|
**On macOS/Linux:**
|
|
50
54
|
```bash
|
|
55
|
+
# Detect active milestone
|
|
56
|
+
ACTIVE_MILESTONE=$(grep -oE "Milestone:\\s*v[0-9]+\\.[0-9]+" .planning/STATE.md 2>/dev/null | grep -oE "v[0-9]+\\.[0-9]+")
|
|
57
|
+
|
|
58
|
+
# Check for research (milestone-specific first, then project-level)
|
|
59
|
+
RESEARCH_DIR=""
|
|
60
|
+
if [ -n "$ACTIVE_MILESTONE" ] && [ -f ".planning/milestones/${ACTIVE_MILESTONE}/research/SUMMARY.md" ]; then
|
|
61
|
+
RESEARCH_DIR=".planning/milestones/${ACTIVE_MILESTONE}/research"
|
|
62
|
+
echo "HAS_MILESTONE_RESEARCH: $ACTIVE_MILESTONE"
|
|
63
|
+
elif [ -f .planning/research/SUMMARY.md ]; then
|
|
64
|
+
RESEARCH_DIR=".planning/research"
|
|
65
|
+
echo "HAS_PROJECT_RESEARCH"
|
|
66
|
+
else
|
|
67
|
+
echo "NO_RESEARCH"
|
|
68
|
+
fi
|
|
69
|
+
|
|
51
70
|
# Use library to find phase directory first (searches both old and new structures)
|
|
52
71
|
PHASE_DIR=$(find_phase_dir "$PHASE")
|
|
53
72
|
if [ -n "$PHASE_DIR" ]; then
|
|
54
73
|
ls "${PHASE_DIR}"/*-RESEARCH.md 2>/dev/null
|
|
55
74
|
ls "${PHASE_DIR}"/*-PLAN.md 2>/dev/null
|
|
56
75
|
fi
|
|
57
|
-
ls .planning/research/SUMMARY.md 2>/dev/null
|
|
58
76
|
```
|
|
59
77
|
|
|
60
78
|
**On Windows (Platform: win32):**
|
|
@@ -65,18 +83,18 @@ Use Glob tool with both structures:
|
|
|
65
83
|
- Then search within found directory:
|
|
66
84
|
- `Glob pattern: "{PHASE_DIR}/*-RESEARCH.md"`
|
|
67
85
|
- `Glob pattern: "{PHASE_DIR}/*-PLAN.md"`
|
|
68
|
-
-
|
|
86
|
+
- Check research (milestone first, then project):
|
|
87
|
+
- `Glob pattern: ".planning/milestones/v*/research/SUMMARY.md"`
|
|
88
|
+
- `Glob pattern: ".planning/research/SUMMARY.md"`
|
|
69
89
|
|
|
70
90
|
</context>
|
|
71
91
|
|
|
72
92
|
<process>
|
|
73
93
|
|
|
74
|
-
0. **
|
|
94
|
+
0. **Refresh scope cache (first)**
|
|
75
95
|
```bash
|
|
76
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
77
96
|
node ~/.claude/rrr/scripts/refresh-scope-cache.js 2>/dev/null || echo "Cache refresh skipped"
|
|
78
97
|
```
|
|
79
|
-
Cross-platform: works in PowerShell on Windows. Shows visual context before planning.
|
|
80
98
|
|
|
81
99
|
## 1. Validate Environment (Cross-Platform)
|
|
82
100
|
|
|
@@ -490,16 +508,19 @@ fi
|
|
|
490
508
|
|
|
491
509
|
**Smart research guardrails (default behavior):**
|
|
492
510
|
|
|
493
|
-
Check for project-level
|
|
511
|
+
Check for research (milestone-specific first, then project-level):
|
|
494
512
|
|
|
495
513
|
**On macOS/Linux:**
|
|
496
514
|
```bash
|
|
497
|
-
|
|
515
|
+
# Detect active milestone and find research (already set in context step)
|
|
516
|
+
# RESEARCH_DIR is set to milestone research or project research path
|
|
517
|
+
ls "${RESEARCH_DIR}/SUMMARY.md" 2>/dev/null
|
|
498
518
|
ls "${PHASE_DIR}"/*-RESEARCH.md 2>/dev/null
|
|
499
519
|
```
|
|
500
520
|
|
|
501
521
|
**On Windows:**
|
|
502
|
-
- `Glob pattern: ".planning/research/SUMMARY.md"`
|
|
522
|
+
- `Glob pattern: ".planning/milestones/v*/research/SUMMARY.md"` (milestone first)
|
|
523
|
+
- `Glob pattern: ".planning/research/SUMMARY.md"` (project fallback)
|
|
503
524
|
- `Glob pattern: "${PHASE_DIR}/*-RESEARCH.md"`
|
|
504
525
|
|
|
505
526
|
**Research Decision Matrix:**
|
|
@@ -508,8 +529,9 @@ ls "${PHASE_DIR}"/*-RESEARCH.md 2>/dev/null
|
|
|
508
529
|
|-----------|--------|
|
|
509
530
|
| `--research` flag set | Force research (override all) |
|
|
510
531
|
| Phase-level RESEARCH.md exists | Use existing, skip to step 6 |
|
|
532
|
+
| Milestone-level SUMMARY.md exists AND phase is NOT risky | Skip research, display: `Using milestone research from /rrr:new-milestone` |
|
|
511
533
|
| Project-level SUMMARY.md exists AND phase is NOT risky | Skip research, display: `Using project research from /rrr:new-project` |
|
|
512
|
-
|
|
|
534
|
+
| Research SUMMARY.md exists AND phase IS risky | Run research (risky domains need phase-specific research) |
|
|
513
535
|
| Neither research exists | Run research |
|
|
514
536
|
|
|
515
537
|
**Risky domain detection:** Phase name or description contains: `auth`, `payment`, `security`, `webhook`, `oauth`, `stripe`, `bank`, `credential`, `encryption`, `api-key`.
|
package/commands/rrr/progress.md
CHANGED
|
@@ -24,20 +24,13 @@ Provides situational awareness before continuing work.
|
|
|
24
24
|
<process>
|
|
25
25
|
|
|
26
26
|
<step name="refresh_cache">
|
|
27
|
-
**Refresh Scope Cache
|
|
27
|
+
**Refresh Scope Cache (first, before any reads):**
|
|
28
28
|
|
|
29
|
-
**On macOS/Linux:**
|
|
30
29
|
```bash
|
|
31
30
|
node ~/.claude/rrr/scripts/refresh-scope-cache.js 2>/dev/null || echo "Cache refresh skipped"
|
|
32
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
33
31
|
```
|
|
34
32
|
|
|
35
|
-
|
|
36
|
-
Same commands work in PowerShell. If Node unavailable, skip silently.
|
|
37
|
-
|
|
38
|
-
**Note:** Paths resolve to installed location (e.g., `$HOME/.claude/` or `./.claude/`).
|
|
39
|
-
|
|
40
|
-
This ensures SCOPE_CACHE.md is current and shows visual HUD before displaying status.
|
|
33
|
+
Cross-platform: works in PowerShell on Windows. Ensures SCOPE_CACHE.md is current.
|
|
41
34
|
</step>
|
|
42
35
|
|
|
43
36
|
<step name="verify">
|
|
@@ -27,15 +27,12 @@ Routes to the resume-project workflow which handles:
|
|
|
27
27
|
|
|
28
28
|
<process>
|
|
29
29
|
|
|
30
|
-
**0.
|
|
30
|
+
**0. Refresh scope cache (first)**
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
34
33
|
node ~/.claude/rrr/scripts/refresh-scope-cache.js 2>/dev/null || echo "Cache refresh skipped"
|
|
35
34
|
```
|
|
36
35
|
|
|
37
|
-
Cross-platform: works in PowerShell on Windows. Shows visual project state on resume.
|
|
38
|
-
|
|
39
36
|
**Follow the resume-project workflow** from `@~/.claude/rrr/workflows/resume-project.md`.
|
|
40
37
|
|
|
41
38
|
The workflow handles all resumption logic including:
|
|
@@ -76,12 +76,10 @@ Validate built features through **audit mode by default**, or interactive UAT wi
|
|
|
76
76
|
|
|
77
77
|
<process>
|
|
78
78
|
|
|
79
|
-
0. **
|
|
79
|
+
0. **Refresh scope cache (first)**
|
|
80
80
|
```bash
|
|
81
|
-
node ~/.claude/rrr/scripts/rrr-hud.js 2>/dev/null || echo "HUD skipped"
|
|
82
81
|
node ~/.claude/rrr/scripts/refresh-scope-cache.js 2>/dev/null || echo "Cache refresh skipped"
|
|
83
82
|
```
|
|
84
|
-
Cross-platform: works in PowerShell on Windows. Shows visual project state and drift before verification.
|
|
85
83
|
|
|
86
84
|
</process>
|
|
87
85
|
|
package/package.json
CHANGED