gsd-opencode 1.3.31

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 (68) hide show
  1. package/bin/install.js +222 -0
  2. package/command/gsd/add-phase.md +207 -0
  3. package/command/gsd/complete-milestone.md +105 -0
  4. package/command/gsd/consider-issues.md +201 -0
  5. package/command/gsd/create-roadmap.md +115 -0
  6. package/command/gsd/discuss-milestone.md +47 -0
  7. package/command/gsd/discuss-phase.md +60 -0
  8. package/command/gsd/execute-plan.md +128 -0
  9. package/command/gsd/help.md +315 -0
  10. package/command/gsd/insert-phase.md +227 -0
  11. package/command/gsd/list-phase-assumptions.md +50 -0
  12. package/command/gsd/map-codebase.md +84 -0
  13. package/command/gsd/new-milestone.md +59 -0
  14. package/command/gsd/new-project.md +316 -0
  15. package/command/gsd/pause-work.md +122 -0
  16. package/command/gsd/plan-fix.md +205 -0
  17. package/command/gsd/plan-phase.md +67 -0
  18. package/command/gsd/progress.md +316 -0
  19. package/command/gsd/remove-phase.md +338 -0
  20. package/command/gsd/research-phase.md +91 -0
  21. package/command/gsd/resume-work.md +40 -0
  22. package/command/gsd/verify-work.md +71 -0
  23. package/get-shit-done/references/checkpoints.md +287 -0
  24. package/get-shit-done/references/continuation-format.md +255 -0
  25. package/get-shit-done/references/git-integration.md +254 -0
  26. package/get-shit-done/references/plan-format.md +428 -0
  27. package/get-shit-done/references/principles.md +157 -0
  28. package/get-shit-done/references/questioning.md +162 -0
  29. package/get-shit-done/references/research-pitfalls.md +215 -0
  30. package/get-shit-done/references/scope-estimation.md +172 -0
  31. package/get-shit-done/references/tdd.md +263 -0
  32. package/get-shit-done/templates/codebase/architecture.md +255 -0
  33. package/get-shit-done/templates/codebase/concerns.md +310 -0
  34. package/get-shit-done/templates/codebase/conventions.md +307 -0
  35. package/get-shit-done/templates/codebase/integrations.md +280 -0
  36. package/get-shit-done/templates/codebase/stack.md +186 -0
  37. package/get-shit-done/templates/codebase/structure.md +285 -0
  38. package/get-shit-done/templates/codebase/testing.md +480 -0
  39. package/get-shit-done/templates/config.json +18 -0
  40. package/get-shit-done/templates/context.md +161 -0
  41. package/get-shit-done/templates/continue-here.md +78 -0
  42. package/get-shit-done/templates/discovery.md +146 -0
  43. package/get-shit-done/templates/issues.md +32 -0
  44. package/get-shit-done/templates/milestone-archive.md +123 -0
  45. package/get-shit-done/templates/milestone-context.md +93 -0
  46. package/get-shit-done/templates/milestone.md +115 -0
  47. package/get-shit-done/templates/phase-prompt.md +303 -0
  48. package/get-shit-done/templates/project.md +184 -0
  49. package/get-shit-done/templates/research.md +529 -0
  50. package/get-shit-done/templates/roadmap.md +196 -0
  51. package/get-shit-done/templates/state.md +210 -0
  52. package/get-shit-done/templates/summary.md +273 -0
  53. package/get-shit-done/templates/uat-issues.md +143 -0
  54. package/get-shit-done/workflows/complete-milestone.md +643 -0
  55. package/get-shit-done/workflows/create-milestone.md +416 -0
  56. package/get-shit-done/workflows/create-roadmap.md +481 -0
  57. package/get-shit-done/workflows/discovery-phase.md +293 -0
  58. package/get-shit-done/workflows/discuss-milestone.md +236 -0
  59. package/get-shit-done/workflows/discuss-phase.md +247 -0
  60. package/get-shit-done/workflows/execute-phase.md +1625 -0
  61. package/get-shit-done/workflows/list-phase-assumptions.md +178 -0
  62. package/get-shit-done/workflows/map-codebase.md +434 -0
  63. package/get-shit-done/workflows/plan-phase.md +488 -0
  64. package/get-shit-done/workflows/research-phase.md +436 -0
  65. package/get-shit-done/workflows/resume-project.md +287 -0
  66. package/get-shit-done/workflows/transition.md +580 -0
  67. package/get-shit-done/workflows/verify-work.md +202 -0
  68. package/package.json +38 -0
@@ -0,0 +1,201 @@
1
+ ---
2
+ name: gsd:consider-issues
3
+ description: Review deferred issues with codebase context, close resolved ones, identify urgent ones
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ - Grep
8
+ - Glob
9
+ - Edit
10
+ - question
11
+ ---
12
+
13
+ <objective>
14
+ Review all open issues from ISSUES.md with current codebase context. Identify which issues are resolved (can close), which are now urgent (should address), and which can continue waiting.
15
+
16
+ This prevents issue pile-up by providing a triage mechanism with codebase awareness.
17
+ </objective>
18
+
19
+ <context>
20
+ @.planning/ISSUES.md
21
+ @.planning/STATE.md
22
+ @.planning/ROADMAP.md
23
+ </context>
24
+
25
+ <process>
26
+
27
+ <step name="verify">
28
+ **Verify issues file exists:**
29
+
30
+ If no `.planning/ISSUES.md`:
31
+ ```
32
+ No issues file found.
33
+
34
+ This means no enhancements have been deferred yet (Rule 5 hasn't triggered).
35
+
36
+ Nothing to review.
37
+ ```
38
+ Exit.
39
+
40
+ If ISSUES.md exists but has no open issues (only template or empty "Open Enhancements"):
41
+ ```
42
+ No open issues to review.
43
+
44
+ All clear - continue with current work.
45
+ ```
46
+ Exit.
47
+ </step>
48
+
49
+ <step name="parse">
50
+ **Parse all open issues:**
51
+
52
+ Extract from "## Open Enhancements" section:
53
+ - ISS number (ISS-001, ISS-002, etc.)
54
+ - Brief description
55
+ - Discovered phase/date
56
+ - Type (Performance/Refactoring/UX/Testing/Documentation/Accessibility)
57
+ - Description details
58
+ - Effort estimate
59
+
60
+ Build list of issues to analyze.
61
+ </step>
62
+
63
+ <step name="analyze">
64
+ **For each open issue, perform codebase analysis:**
65
+
66
+ 1. **Check if still relevant:**
67
+ - Search codebase for related code/files mentioned in issue
68
+ - If code no longer exists or was significantly refactored: likely resolved
69
+
70
+ 2. **Check if accidentally resolved:**
71
+ - Look for commits/changes that may have addressed this
72
+ - Check if the enhancement was implemented as part of other work
73
+
74
+ 3. **Assess current urgency:**
75
+ - Is this blocking upcoming phases?
76
+ - Has this become a pain point mentioned in recent summaries?
77
+ - Is this now affecting code we're actively working on?
78
+
79
+ 4. **Check natural fit:**
80
+ - Does this align with an upcoming phase in the roadmap?
81
+ - Would addressing it now touch the same files as current work?
82
+
83
+ **Categorize each issue:**
84
+ - **Resolved** - Can be closed (code changed, no longer applicable)
85
+ - **Urgent** - Should address before continuing (blocking or causing problems)
86
+ - **Natural fit** - Good candidate for upcoming phase X
87
+ - **Can wait** - Keep deferred, no change in status
88
+ </step>
89
+
90
+ <step name="report">
91
+ **Present categorized report:**
92
+
93
+ ```
94
+ # Issue Review
95
+
96
+ **Analyzed:** [N] open issues
97
+ **Last reviewed:** [today's date]
98
+
99
+ ## Resolved (can close)
100
+
101
+ ### ISS-XXX: [description]
102
+ **Reason:** [Why it's resolved - code changed, implemented elsewhere, no longer applicable]
103
+ **Evidence:** [What you found - file changes, missing code, etc.]
104
+
105
+ [Repeat for each resolved issue, or "None" if none resolved]
106
+
107
+ ---
108
+
109
+ ## Urgent (should address now)
110
+
111
+ ### ISS-XXX: [description]
112
+ **Why urgent:** [What changed - blocking next phase, causing active problems, etc.]
113
+ **Recommendation:** Insert plan before Phase [X] / Add to current phase
114
+ **Effort:** [Quick/Medium/Substantial]
115
+
116
+ [Repeat for each urgent issue, or "None - all issues can wait" if none urgent]
117
+
118
+ ---
119
+
120
+ ## Natural Fit for Upcoming Work
121
+
122
+ ### ISS-XXX: [description]
123
+ **Fits with:** Phase [X] - [phase name]
124
+ **Reason:** [Same files, same subsystem, natural inclusion]
125
+
126
+ [Repeat for each, or "None" if no natural fits]
127
+
128
+ ---
129
+
130
+ ## Can Wait (no change)
131
+
132
+ ### ISS-XXX: [description]
133
+ **Status:** Still valid, not urgent, keep deferred
134
+
135
+ [Repeat for each, or list ISS numbers if many]
136
+ ```
137
+ </step>
138
+
139
+ <step name="offer_actions">
140
+ **Offer batch actions:**
141
+
142
+ Based on analysis, present options:
143
+
144
+ ```
145
+ ## Actions
146
+
147
+ What would you like to do?
148
+ ```
149
+
150
+ Use question with appropriate options based on findings:
151
+
152
+ **If resolved issues exist:**
153
+ - "Close resolved issues" - Move to Closed Enhancements section
154
+ - "Review each first" - Show details before closing
155
+
156
+ **If urgent issues exist:**
157
+ - "Insert urgent phase" - Create phase to address urgent issues (/gsd:insert-phase)
158
+ - "Add to current plan" - Include in next plan being created
159
+ - "Defer anyway" - Keep as-is despite urgency
160
+
161
+ **If natural fits exist:**
162
+ - "Note for phase planning" - Will be picked up during /gsd:plan-phase
163
+ - "Add explicit reminder" - Update issue with "Include in Phase X"
164
+
165
+ **Always include:**
166
+ - "Done for now" - Exit without changes
167
+ </step>
168
+
169
+ <step name="execute_actions">
170
+ **Execute selected actions:**
171
+
172
+ **If closing resolved issues:**
173
+ 1. Read current ISSUES.md
174
+ 2. For each resolved issue:
175
+ - Remove from "## Open Enhancements"
176
+ - Add to "## Closed Enhancements" with resolution note:
177
+ ```
178
+ ### ISS-XXX: [description]
179
+ **Resolved:** [date] - [reason]
180
+ ```
181
+ 3. Write updated ISSUES.md
182
+ 4. Update STATE.md deferred issues count
183
+
184
+ **If inserting urgent phase:**
185
+ - Display the command for user to run after clearing: `/gsd:insert-phase [after-phase] Address urgent issues ISS-XXX, ISS-YYY`
186
+
187
+ **If noting for phase planning:**
188
+ - Update issue's "Suggested phase" field with specific phase number
189
+ - These will be picked up by /gsd:plan-phase workflow
190
+ </step>
191
+
192
+ </process>
193
+
194
+ <success_criteria>
195
+ - [ ] All open issues analyzed against current codebase
196
+ - [ ] Each issue categorized (resolved/urgent/natural-fit/can-wait)
197
+ - [ ] Clear reasoning provided for each categorization
198
+ - [ ] Actions offered based on findings
199
+ - [ ] ISSUES.md updated if user takes action
200
+ - [ ] STATE.md updated if issue count changes
201
+ </success_criteria>
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: gsd:create-roadmap
3
+ description: Create roadmap with phases for the project
4
+ allowed-tools:
5
+ - Read
6
+ - Write
7
+ - Bash
8
+ - question
9
+ - Glob
10
+ ---
11
+
12
+ <objective>
13
+ Create project roadmap with phase breakdown.
14
+
15
+ Roadmaps define what work happens in what order. Run after /gsd:new-project.
16
+ </objective>
17
+
18
+ <execution_context>
19
+ @~/.config/opencode/get-shit-done/workflows/create-roadmap.md
20
+ @~/.config/opencode/get-shit-done/templates/roadmap.md
21
+ @~/.config/opencode/get-shit-done/templates/state.md
22
+ </execution_context>
23
+
24
+ <context>
25
+ @.planning/PROJECT.md
26
+ @.planning/config.json
27
+ </context>
28
+
29
+ <process>
30
+
31
+ <step name="validate">
32
+ ```bash
33
+ # Verify project exists
34
+ [ -f .planning/PROJECT.md ] || { echo "ERROR: No PROJECT.md found. Run /gsd:new-project first."; exit 1; }
35
+ ```
36
+ </step>
37
+
38
+ <step name="check_existing">
39
+ Check if roadmap already exists:
40
+
41
+ ```bash
42
+ [ -f .planning/ROADMAP.md ] && echo "ROADMAP_EXISTS" || echo "NO_ROADMAP"
43
+ ```
44
+
45
+ **If ROADMAP_EXISTS:**
46
+ Use question:
47
+ - header: "Roadmap exists"
48
+ - question: "A roadmap already exists. What would you like to do?"
49
+ - options:
50
+ - "View existing" - Show current roadmap
51
+ - "Replace" - Create new roadmap (will overwrite)
52
+ - "Cancel" - Keep existing roadmap
53
+
54
+ If "View existing": `cat .planning/ROADMAP.md` and exit
55
+ If "Cancel": Exit
56
+ If "Replace": Continue with workflow
57
+ </step>
58
+
59
+ <step name="create_roadmap">
60
+ Follow the create-roadmap.md workflow starting from detect_domain step.
61
+
62
+ The workflow handles:
63
+ - Domain expertise detection
64
+ - Phase identification
65
+ - Research flags for each phase
66
+ - Confirmation gates (respecting config mode)
67
+ - ROADMAP.md creation
68
+ - STATE.md initialization
69
+ - Phase directory creation
70
+ - Git commit
71
+ </step>
72
+
73
+ <step name="done">
74
+ ```
75
+ Roadmap created:
76
+ - Roadmap: .planning/ROADMAP.md
77
+ - State: .planning/STATE.md
78
+ - [N] phases defined
79
+
80
+ ---
81
+
82
+ ## ▶ Next Up
83
+
84
+ **Phase 1: [Name]** — [Goal from ROADMAP.md]
85
+
86
+ `/gsd:plan-phase 1`
87
+
88
+ *`/clear` first → fresh context window*
89
+
90
+ ---
91
+
92
+ **Also available:**
93
+ - `/gsd:discuss-phase 1` — gather context first
94
+ - `/gsd:research-phase 1` — investigate unknowns
95
+ - Review roadmap
96
+
97
+ ---
98
+ ```
99
+ </step>
100
+
101
+ </process>
102
+
103
+ <output>
104
+ - `.planning/ROADMAP.md`
105
+ - `.planning/STATE.md`
106
+ - `.planning/phases/XX-name/` directories
107
+ </output>
108
+
109
+ <success_criteria>
110
+ - [ ] PROJECT.md validated
111
+ - [ ] ROADMAP.md created with phases
112
+ - [ ] STATE.md initialized
113
+ - [ ] Phase directories created
114
+ - [ ] Changes committed
115
+ </success_criteria>
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: gsd:discuss-milestone
3
+ description: Gather context for next milestone through adaptive questioning
4
+ ---
5
+
6
+ <objective>
7
+ Help you figure out what to build in the next milestone through collaborative thinking.
8
+
9
+ Purpose: After completing a milestone, explore what features you want to add, improve, or fix. Features first — scope and phases derive from what you want to build.
10
+ Output: Context gathered, then routes to /gsd:new-milestone
11
+ </objective>
12
+
13
+ <execution_context>
14
+ @~/.config/opencode/get-shit-done/workflows/discuss-milestone.md
15
+ </execution_context>
16
+
17
+ <context>
18
+ **Load project state first:**
19
+ @.planning/STATE.md
20
+
21
+ **Load roadmap:**
22
+ @.planning/ROADMAP.md
23
+
24
+ **Load milestones (if exists):**
25
+ @.planning/MILESTONES.md
26
+ </context>
27
+
28
+ <process>
29
+ 1. Verify previous milestone complete (or acknowledge active milestone)
30
+ 2. Present context from previous milestone (accomplishments, phase count)
31
+ 3. Follow discuss-milestone.md workflow with **ALL questions using question**:
32
+ - Use question: "What do you want to add, improve, or fix?" with feature categories
33
+ - Use question to dig into features they mention
34
+ - Use question to help them articulate what matters most
35
+ - Use question for decision gate (ready / ask more / let me add context)
36
+ 4. Hand off to /gsd:new-milestone with gathered context
37
+
38
+ **CRITICAL: ALL questions use question. Never ask inline text questions.**
39
+ </process>
40
+
41
+ <success_criteria>
42
+
43
+ - Project state loaded and presented
44
+ - Previous milestone context summarized
45
+ - Milestone scope gathered through adaptive questioning
46
+ - Context handed off to /gsd:new-milestone
47
+ </success_criteria>
@@ -0,0 +1,60 @@
1
+ ---
2
+ name: gsd:discuss-phase
3
+ description: Gather phase context through adaptive questioning before planning
4
+ argument-hint: "[phase]"
5
+ ---
6
+
7
+ <objective>
8
+ Help the user articulate their vision for a phase through collaborative thinking.
9
+
10
+ Purpose: Understand HOW the user imagines this phase working — what it looks like, what's essential, what's out of scope. You're a thinking partner helping them crystallize their vision, not an interviewer gathering technical requirements.
11
+
12
+ Output: {phase}-CONTEXT.md capturing the user's vision for the phase
13
+ </objective>
14
+
15
+ <execution_context>
16
+ @~/.config/opencode/get-shit-done/workflows/discuss-phase.md
17
+ @~/.config/opencode/get-shit-done/templates/context.md
18
+ </execution_context>
19
+
20
+ <context>
21
+ Phase number: $ARGUMENTS (required)
22
+
23
+ **Load project state first:**
24
+ @.planning/STATE.md
25
+
26
+ **Load roadmap:**
27
+ @.planning/ROADMAP.md
28
+ </context>
29
+
30
+ <process>
31
+ 1. Validate phase number argument (error if missing or invalid)
32
+ 2. Check if phase exists in roadmap
33
+ 3. Check if CONTEXT.md already exists (offer to update if yes)
34
+ 4. Follow discuss-phase.md workflow with **ALL questions using question**:
35
+ - Present phase from roadmap
36
+ - Use question: "How do you imagine this working?" with interpretation options
37
+ - Use question to follow their thread — probe what excites them
38
+ - Use question to sharpen the core — what's essential for THIS phase
39
+ - Use question to find boundaries — what's explicitly out of scope
40
+ - Use question for decision gate (ready / ask more / let me add context)
41
+ - Create CONTEXT.md capturing their vision
42
+ 5. Offer next steps (research or plan the phase)
43
+
44
+ **CRITICAL: ALL questions use question. Never ask inline text questions.**
45
+
46
+ User is the visionary, you are the builder:
47
+ - Ask about vision, feel, essential outcomes
48
+ - DON'T ask about technical risks (you figure those out)
49
+ - DON'T ask about codebase patterns (you read the code)
50
+ - DON'T ask about success metrics (too corporate)
51
+ - DON'T interrogate about constraints they didn't mention
52
+ </process>
53
+
54
+ <success_criteria>
55
+
56
+ - Phase validated against roadmap
57
+ - Vision gathered through collaborative thinking (not interrogation)
58
+ - CONTEXT.md captures: how it works, what's essential, what's out of scope
59
+ - User knows next steps (research or plan the phase)
60
+ </success_criteria>
@@ -0,0 +1,128 @@
1
+ ---
2
+ name: gsd:execute-plan
3
+ description: Execute a PLAN.md file
4
+ argument-hint: "[path-to-PLAN.md]"
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Edit
9
+ - Bash
10
+ - Glob
11
+ - Grep
12
+ - Task
13
+ - question
14
+ ---
15
+
16
+ <objective>
17
+ Execute a PLAN.md file with per-task atomic commits, create SUMMARY.md, update project state.
18
+
19
+ Commit strategy:
20
+ - Each task → 1 commit immediately after completion (feat/fix/test/refactor)
21
+ - Plan completion → 1 metadata commit (docs: SUMMARY + STATE + ROADMAP)
22
+
23
+ Uses intelligent segmentation:
24
+ - Plans without checkpoints → spawn subagent for full autonomous execution
25
+ - Plans with verify checkpoints → segment execution, pause at checkpoints
26
+ - Plans with decision checkpoints → execute in main context
27
+ </objective>
28
+
29
+ <execution_context>
30
+ @~/.config/opencode/get-shit-done/workflows/execute-phase.md
31
+ @~/.config/opencode/get-shit-done/templates/summary.md
32
+ @~/.config/opencode/get-shit-done/references/checkpoints.md
33
+ @~/.config/opencode/get-shit-done/references/tdd.md
34
+ </execution_context>
35
+
36
+ <context>
37
+ Plan path: $ARGUMENTS
38
+
39
+ **Load project state first:**
40
+ @.planning/STATE.md
41
+
42
+ **Load workflow config:**
43
+ @.planning/config.json
44
+ </context>
45
+
46
+ <process>
47
+ 1. Check .planning/ directory exists (error if not - user should run /gsd:new-project)
48
+ 2. Verify plan at $ARGUMENTS exists
49
+ 3. Check if SUMMARY.md already exists (plan already executed?)
50
+ 4. Load workflow config for mode (interactive/yolo)
51
+ 5. Follow execute-phase.md workflow:
52
+ - Parse plan and determine execution strategy (A/B/C)
53
+ - Execute tasks (via subagent or main context as appropriate)
54
+ - Handle checkpoints and deviations
55
+ - Create SUMMARY.md
56
+ - Update STATE.md
57
+ - Commit changes
58
+ </process>
59
+
60
+ <execution_strategies>
61
+ **Strategy A: Fully Autonomous** (no checkpoints)
62
+
63
+ - Spawn subagent to execute entire plan
64
+ - Subagent creates SUMMARY.md and commits
65
+ - Main context: orchestration only (~5% usage)
66
+
67
+ **Strategy B: Segmented** (has verify-only checkpoints)
68
+
69
+ - Execute in segments between checkpoints
70
+ - Subagent for autonomous segments
71
+ - Main context for checkpoints
72
+ - Aggregate results → SUMMARY → commit
73
+
74
+ **Strategy C: Decision-Dependent** (has decision checkpoints)
75
+
76
+ - Execute in main context
77
+ - Decision outcomes affect subsequent tasks
78
+ - Quality maintained through small scope (2-3 tasks per plan)
79
+ </execution_strategies>
80
+
81
+ <deviation_rules>
82
+ During execution, handle discoveries automatically:
83
+
84
+ 1. **Auto-fix bugs** - Fix immediately, document in Summary
85
+ 2. **Auto-add critical** - Security/correctness gaps, add and document
86
+ 3. **Auto-fix blockers** - Can't proceed without fix, do it and document
87
+ 4. **Ask about architectural** - Major structural changes, stop and ask user
88
+ 5. **Log enhancements** - Nice-to-haves, log to ISSUES.md, continue
89
+
90
+ Only rule 4 requires user intervention.
91
+ </deviation_rules>
92
+
93
+ <commit_rules>
94
+ **Per-Task Commits:**
95
+
96
+ After each task completes:
97
+ 1. Stage only files modified by that task
98
+ 2. Commit with format: `{type}({phase}-{plan}): {task-name}`
99
+ 3. Types: feat, fix, test, refactor, perf, chore
100
+ 4. Record commit hash for SUMMARY.md
101
+
102
+ **Plan Metadata Commit:**
103
+
104
+ After all tasks complete:
105
+ 1. Stage planning artifacts only: PLAN.md, SUMMARY.md, STATE.md, ROADMAP.md
106
+ 2. Commit with format: `docs({phase}-{plan}): complete [plan-name] plan`
107
+ 3. NO code files (already committed per-task)
108
+
109
+ **NEVER use:**
110
+ - `git add .`
111
+ - `git add -A`
112
+ - `git add src/` or any broad directory
113
+
114
+ **Always stage files individually.**
115
+
116
+ See ~/.config/opencode/get-shit-done/references/git-integration.md for full commit strategy.
117
+ </commit_rules>
118
+
119
+ <success_criteria>
120
+
121
+ - [ ] All tasks executed
122
+ - [ ] Each task committed individually (feat/fix/test/refactor)
123
+ - [ ] SUMMARY.md created with substantive content and commit hashes
124
+ - [ ] STATE.md updated (position, decisions, issues, session)
125
+ - [ ] ROADMAP updated (plan count, phase status)
126
+ - [ ] Metadata committed with docs({phase}-{plan}): complete [plan-name] plan
127
+ - [ ] User informed of next steps
128
+ </success_criteria>