gsd-opencode 1.3.33 → 1.4.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/LICENSE +21 -0
- package/command/gsd/add-phase.md +3 -3
- package/command/gsd/add-todo.md +182 -0
- package/command/gsd/check-todos.md +217 -0
- package/command/gsd/complete-milestone.md +4 -3
- package/command/gsd/consider-issues.md +5 -5
- package/command/gsd/create-roadmap.md +4 -4
- package/command/gsd/debug.md +58 -0
- package/command/gsd/discuss-phase.md +3 -4
- package/command/gsd/execute-phase.md +137 -0
- package/command/gsd/execute-plan.md +70 -95
- package/command/gsd/help.md +83 -6
- package/command/gsd/insert-phase.md +16 -16
- package/command/gsd/list-phase-assumptions.md +8 -8
- package/command/gsd/map-codebase.md +11 -11
- package/command/gsd/new-milestone.md +1 -1
- package/command/gsd/new-project.md +26 -7
- package/command/gsd/pause-work.md +4 -3
- package/command/gsd/plan-fix.md +8 -8
- package/command/gsd/plan-phase.md +9 -9
- package/command/gsd/progress.md +20 -11
- package/command/gsd/remove-phase.md +15 -15
- package/command/gsd/research-phase.md +10 -10
- package/command/gsd/resume-work.md +4 -5
- package/command/gsd/status.md +127 -0
- package/command/gsd/verify-work.md +8 -8
- package/get-shit-done/references/continuation-format.md +8 -8
- package/get-shit-done/references/debugging/debugging-mindset.md +253 -0
- package/get-shit-done/references/debugging/hypothesis-testing.md +373 -0
- package/get-shit-done/references/debugging/investigation-techniques.md +337 -0
- package/get-shit-done/references/debugging/verification-patterns.md +425 -0
- package/get-shit-done/references/debugging/when-to-research.md +361 -0
- package/get-shit-done/references/plan-format.md +68 -21
- package/get-shit-done/references/questioning.md +12 -12
- package/get-shit-done/references/research-pitfalls.md +2 -2
- package/get-shit-done/references/scope-estimation.md +95 -11
- package/get-shit-done/templates/DEBUG.md +159 -0
- package/get-shit-done/templates/agent-history.md +263 -0
- package/get-shit-done/templates/checkpoint-return.md +204 -0
- package/get-shit-done/templates/codebase/architecture.md +4 -4
- package/get-shit-done/templates/codebase/concerns.md +1 -1
- package/get-shit-done/templates/codebase/structure.md +11 -11
- package/get-shit-done/templates/config.json +8 -0
- package/get-shit-done/templates/context.md +0 -21
- package/get-shit-done/templates/continuation-prompt.md +235 -0
- package/get-shit-done/templates/milestone-archive.md +1 -1
- package/get-shit-done/templates/phase-prompt.md +289 -129
- package/get-shit-done/templates/roadmap.md +1 -1
- package/get-shit-done/templates/state.md +11 -0
- package/get-shit-done/templates/subagent-task-prompt.md +95 -0
- package/get-shit-done/templates/summary.md +2 -2
- package/get-shit-done/workflows/_archive/execute-phase.md +899 -0
- package/get-shit-done/workflows/complete-milestone.md +1 -1
- package/get-shit-done/workflows/create-milestone.md +1 -1
- package/get-shit-done/workflows/create-roadmap.md +2 -2
- package/get-shit-done/workflows/debug.md +426 -0
- package/get-shit-done/workflows/discovery-phase.md +1 -1
- package/get-shit-done/workflows/discuss-milestone.md +6 -6
- package/get-shit-done/workflows/discuss-phase.md +12 -22
- package/get-shit-done/workflows/execute-phase.md +272 -1504
- package/get-shit-done/workflows/execute-plan.md +1813 -0
- package/get-shit-done/workflows/map-codebase.md +9 -9
- package/get-shit-done/workflows/plan-phase.md +262 -49
- package/get-shit-done/workflows/resume-project.md +28 -2
- package/get-shit-done/workflows/transition.md +4 -4
- package/get-shit-done/workflows/verify-work.md +4 -4
- package/package.json +1 -1
|
@@ -271,7 +271,7 @@ Proceed directly to create_structure step.
|
|
|
271
271
|
</if>
|
|
272
272
|
|
|
273
273
|
<if mode="interactive" OR="missing OR custom with gates.confirm_roadmap true">
|
|
274
|
-
Use
|
|
274
|
+
Use question:
|
|
275
275
|
|
|
276
276
|
- header: "Ready"
|
|
277
277
|
- question: "Ready to create the roadmap, or would you like me to ask more questions?"
|
|
@@ -432,7 +432,7 @@ Project initialized:
|
|
|
432
432
|
|
|
433
433
|
`/gsd:plan-phase 1`
|
|
434
434
|
|
|
435
|
-
|
|
435
|
+
*`/clear` first → fresh context window*
|
|
436
436
|
|
|
437
437
|
---
|
|
438
438
|
|
|
@@ -0,0 +1,426 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Systematic debugging with persistent state that survives context resets. The debug file IS the debugging brain - create it immediately and update it continuously.
|
|
3
|
+
|
|
4
|
+
You are the debugger. The user knows what's wrong (behavior), not why (root cause). Gather symptoms, then investigate autonomously.
|
|
5
|
+
</purpose>
|
|
6
|
+
|
|
7
|
+
<philosophy>
|
|
8
|
+
**User = reporter. Claude = investigator.**
|
|
9
|
+
|
|
10
|
+
The user knows:
|
|
11
|
+
- What they expected to happen
|
|
12
|
+
- What actually happened
|
|
13
|
+
- Any error messages they saw
|
|
14
|
+
- When it started / if it ever worked
|
|
15
|
+
|
|
16
|
+
The user does NOT know (and shouldn't be asked):
|
|
17
|
+
- What's causing the bug
|
|
18
|
+
- Which file has the problem
|
|
19
|
+
- What the fix should be
|
|
20
|
+
|
|
21
|
+
Ask about experience. Investigate the cause yourself.
|
|
22
|
+
</philosophy>
|
|
23
|
+
|
|
24
|
+
<references>
|
|
25
|
+
@~/.config/opencode/get-shit-done/references/debugging/debugging-mindset.md
|
|
26
|
+
@~/.config/opencode/get-shit-done/references/debugging/hypothesis-testing.md
|
|
27
|
+
@~/.config/opencode/get-shit-done/references/debugging/investigation-techniques.md
|
|
28
|
+
@~/.config/opencode/get-shit-done/references/debugging/verification-patterns.md
|
|
29
|
+
@~/.config/opencode/get-shit-done/references/debugging/when-to-research.md
|
|
30
|
+
</references>
|
|
31
|
+
|
|
32
|
+
<template>
|
|
33
|
+
@~/.config/opencode/get-shit-done/templates/DEBUG.md
|
|
34
|
+
</template>
|
|
35
|
+
|
|
36
|
+
<process>
|
|
37
|
+
|
|
38
|
+
<step name="check_active_session">
|
|
39
|
+
**First: Check for active debug sessions**
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
ls .planning/debug/*.md 2>/dev/null | grep -v resolved
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**If active sessions exist AND no $ARGUMENTS provided:**
|
|
46
|
+
|
|
47
|
+
Read each file's frontmatter (status, trigger) and Current Focus (hypothesis, next_action).
|
|
48
|
+
|
|
49
|
+
Display inline:
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
## Active Debug Sessions
|
|
53
|
+
|
|
54
|
+
| # | Slug | Status | Hypothesis | Next Action |
|
|
55
|
+
|---|------|--------|------------|-------------|
|
|
56
|
+
| 1 | auth-logout | investigating | Token refresh not called | Check console output |
|
|
57
|
+
| 2 | api-timeout | gathering | - | Gather symptoms |
|
|
58
|
+
| 3 | cart-bug | fixing | Null reference in context | Apply fix |
|
|
59
|
+
|
|
60
|
+
Reply with a number to resume, or describe a new issue to start fresh.
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Wait for user response.
|
|
64
|
+
|
|
65
|
+
- If user replies with number (1, 2, 3) → Load that file, go to `resume_from_file`
|
|
66
|
+
- If user replies with text → Treat as new issue trigger, go to `create_debug_file`
|
|
67
|
+
|
|
68
|
+
**If active sessions exist AND $ARGUMENTS provided:**
|
|
69
|
+
|
|
70
|
+
User wants to start a new debug session. Continue to `create_debug_file`.
|
|
71
|
+
|
|
72
|
+
**If no active sessions AND no $ARGUMENTS:**
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
No active debug sessions.
|
|
76
|
+
|
|
77
|
+
Describe the issue to start debugging.
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Wait for user to describe the issue, then use their response as the trigger.
|
|
81
|
+
|
|
82
|
+
**If no active sessions AND $ARGUMENTS provided:**
|
|
83
|
+
|
|
84
|
+
Continue to `create_debug_file` with $ARGUMENTS as trigger.
|
|
85
|
+
</step>
|
|
86
|
+
|
|
87
|
+
<step name="create_debug_file">
|
|
88
|
+
**Create debug file IMMEDIATELY**
|
|
89
|
+
|
|
90
|
+
Generate slug from user input (lowercase, hyphens, max 30 chars).
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
mkdir -p .planning/debug
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Create file with initial state:
|
|
97
|
+
|
|
98
|
+
```markdown
|
|
99
|
+
---
|
|
100
|
+
status: gathering
|
|
101
|
+
trigger: "[verbatim $ARGUMENTS]"
|
|
102
|
+
created: [ISO timestamp]
|
|
103
|
+
updated: [ISO timestamp]
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Current Focus
|
|
107
|
+
|
|
108
|
+
hypothesis: none yet
|
|
109
|
+
test: none
|
|
110
|
+
expecting: none
|
|
111
|
+
next_action: gather symptoms from user
|
|
112
|
+
|
|
113
|
+
## Symptoms
|
|
114
|
+
|
|
115
|
+
expected:
|
|
116
|
+
actual:
|
|
117
|
+
errors:
|
|
118
|
+
reproduction:
|
|
119
|
+
started:
|
|
120
|
+
|
|
121
|
+
## Eliminated
|
|
122
|
+
|
|
123
|
+
[none yet]
|
|
124
|
+
|
|
125
|
+
## Evidence
|
|
126
|
+
|
|
127
|
+
[none yet]
|
|
128
|
+
|
|
129
|
+
## Resolution
|
|
130
|
+
|
|
131
|
+
root_cause:
|
|
132
|
+
fix:
|
|
133
|
+
verification:
|
|
134
|
+
files_changed: []
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
Write to `.planning/debug/[slug].md`
|
|
138
|
+
|
|
139
|
+
Now proceed to `symptom_gathering`.
|
|
140
|
+
</step>
|
|
141
|
+
|
|
142
|
+
<step name="symptom_gathering">
|
|
143
|
+
**Gather symptoms through questioning - update file after EACH answer**
|
|
144
|
+
|
|
145
|
+
CRITICAL: Update the debug file after each piece of information gathered.
|
|
146
|
+
|
|
147
|
+
**1. Expected behavior:**
|
|
148
|
+
|
|
149
|
+
Use question:
|
|
150
|
+
- header: "Expected"
|
|
151
|
+
- question: "What should happen?"
|
|
152
|
+
- options: Contextual interpretations + "Let me describe"
|
|
153
|
+
|
|
154
|
+
After answer → Update Symptoms.expected in debug file
|
|
155
|
+
|
|
156
|
+
**2. Actual behavior:**
|
|
157
|
+
|
|
158
|
+
Use question:
|
|
159
|
+
- header: "Actual"
|
|
160
|
+
- question: "What actually happens instead?"
|
|
161
|
+
- options: Common failure modes + "Let me describe"
|
|
162
|
+
|
|
163
|
+
After answer → Update Symptoms.actual in debug file
|
|
164
|
+
|
|
165
|
+
**3. Error messages:**
|
|
166
|
+
|
|
167
|
+
Use question:
|
|
168
|
+
- header: "Errors"
|
|
169
|
+
- question: "Any error messages?"
|
|
170
|
+
- options:
|
|
171
|
+
- "Yes, I'll paste them"
|
|
172
|
+
- "Yes, but I don't have them handy"
|
|
173
|
+
- "No errors - fails silently"
|
|
174
|
+
- "Not sure"
|
|
175
|
+
|
|
176
|
+
After answer → Update Symptoms.errors in debug file
|
|
177
|
+
|
|
178
|
+
**4. When it started:**
|
|
179
|
+
|
|
180
|
+
Use question:
|
|
181
|
+
- header: "Timeline"
|
|
182
|
+
- question: "When did this start?"
|
|
183
|
+
- options:
|
|
184
|
+
- "Never worked"
|
|
185
|
+
- "After a change"
|
|
186
|
+
- "Intermittent"
|
|
187
|
+
- "Not sure"
|
|
188
|
+
|
|
189
|
+
After answer → Update Symptoms.started in debug file
|
|
190
|
+
|
|
191
|
+
**5. Reproduction:**
|
|
192
|
+
|
|
193
|
+
Use question:
|
|
194
|
+
- header: "Reproduce"
|
|
195
|
+
- question: "How do you trigger this?"
|
|
196
|
+
- options:
|
|
197
|
+
- "Specific steps" - I can describe them
|
|
198
|
+
- "Random" - Happens unpredictably
|
|
199
|
+
- "Always" - Every time I try
|
|
200
|
+
- "Not sure"
|
|
201
|
+
|
|
202
|
+
After answer → Update Symptoms.reproduction in debug file
|
|
203
|
+
|
|
204
|
+
**6. Ready check:**
|
|
205
|
+
|
|
206
|
+
Use question:
|
|
207
|
+
- header: "Ready?"
|
|
208
|
+
- question: "Enough context to investigate?"
|
|
209
|
+
- options:
|
|
210
|
+
- "Start investigating"
|
|
211
|
+
- "I have more context"
|
|
212
|
+
|
|
213
|
+
If "I have more context" → receive it, update relevant field, ask again
|
|
214
|
+
If "Start investigating" → Update status to "investigating", proceed to `investigation_loop`
|
|
215
|
+
</step>
|
|
216
|
+
|
|
217
|
+
<step name="investigation_loop">
|
|
218
|
+
**Autonomous investigation - update file continuously**
|
|
219
|
+
|
|
220
|
+
CRITICAL: Before EVERY action, update Current Focus. After EVERY finding, append to Evidence.
|
|
221
|
+
|
|
222
|
+
**Phase 1: Initial evidence gathering**
|
|
223
|
+
|
|
224
|
+
Update Current Focus:
|
|
225
|
+
```
|
|
226
|
+
hypothesis: gathering initial evidence
|
|
227
|
+
test: examining error context and relevant code
|
|
228
|
+
expecting: clues about failure point
|
|
229
|
+
next_action: [specific next action]
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
1. If errors exist in Symptoms → search codebase for error text
|
|
233
|
+
2. Identify relevant code area from symptoms
|
|
234
|
+
3. Read relevant files COMPLETELY
|
|
235
|
+
4. Run app/tests to observe behavior firsthand
|
|
236
|
+
|
|
237
|
+
After EACH finding → Append to Evidence:
|
|
238
|
+
```
|
|
239
|
+
- timestamp: [now]
|
|
240
|
+
checked: [what]
|
|
241
|
+
found: [what]
|
|
242
|
+
implication: [what this means]
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
**Phase 2: Form hypothesis**
|
|
246
|
+
|
|
247
|
+
Based on evidence, form SPECIFIC, FALSIFIABLE hypothesis.
|
|
248
|
+
|
|
249
|
+
Update Current Focus:
|
|
250
|
+
```
|
|
251
|
+
hypothesis: [specific theory]
|
|
252
|
+
test: [how you'll test it]
|
|
253
|
+
expecting: [what proves/disproves it]
|
|
254
|
+
next_action: [immediate next step]
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
**Phase 3: Test hypothesis**
|
|
258
|
+
|
|
259
|
+
Execute the test. ONE hypothesis at a time.
|
|
260
|
+
|
|
261
|
+
Append result to Evidence.
|
|
262
|
+
|
|
263
|
+
**Phase 4: Evaluate**
|
|
264
|
+
|
|
265
|
+
If CONFIRMED:
|
|
266
|
+
- Update Resolution.root_cause with evidence
|
|
267
|
+
- Update status to "fixing"
|
|
268
|
+
- Proceed to `fix_and_verify`
|
|
269
|
+
|
|
270
|
+
If ELIMINATED:
|
|
271
|
+
- Append to Eliminated section:
|
|
272
|
+
```
|
|
273
|
+
- hypothesis: [what was wrong]
|
|
274
|
+
evidence: [what disproved it]
|
|
275
|
+
timestamp: [now]
|
|
276
|
+
```
|
|
277
|
+
- Form new hypothesis based on evidence
|
|
278
|
+
- Return to Phase 2
|
|
279
|
+
|
|
280
|
+
**Context management:**
|
|
281
|
+
|
|
282
|
+
After significant investigation (5+ evidence entries), check if context is heavy.
|
|
283
|
+
If so, ensure Current Focus is fully updated and suggest:
|
|
284
|
+
"Context filling up. Safe to /clear - run /gsd:debug to resume."
|
|
285
|
+
</step>
|
|
286
|
+
|
|
287
|
+
<step name="resume_from_file">
|
|
288
|
+
**Resume investigation from debug file**
|
|
289
|
+
|
|
290
|
+
Read the full debug file.
|
|
291
|
+
|
|
292
|
+
Announce:
|
|
293
|
+
```
|
|
294
|
+
Resuming: [slug]
|
|
295
|
+
Status: [status]
|
|
296
|
+
Current hypothesis: [from Current Focus]
|
|
297
|
+
Evidence gathered: [count]
|
|
298
|
+
Eliminated: [count] hypotheses
|
|
299
|
+
|
|
300
|
+
Continuing from: [next_action]
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
Based on status:
|
|
304
|
+
- "gathering" → Continue `symptom_gathering` from where left off
|
|
305
|
+
- "investigating" → Continue `investigation_loop` from Current Focus
|
|
306
|
+
- "fixing" → Continue `fix_and_verify`
|
|
307
|
+
- "verifying" → Continue verification
|
|
308
|
+
|
|
309
|
+
The file tells you exactly where you were.
|
|
310
|
+
</step>
|
|
311
|
+
|
|
312
|
+
<step name="fix_and_verify">
|
|
313
|
+
**Apply fix and verify**
|
|
314
|
+
|
|
315
|
+
Update status to "fixing".
|
|
316
|
+
|
|
317
|
+
**1. Implement minimal fix**
|
|
318
|
+
|
|
319
|
+
Update Current Focus:
|
|
320
|
+
```
|
|
321
|
+
hypothesis: [confirmed root cause]
|
|
322
|
+
test: applying fix
|
|
323
|
+
expecting: symptoms resolved
|
|
324
|
+
next_action: implement fix in [files]
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
Make the SMALLEST change that addresses root cause.
|
|
328
|
+
|
|
329
|
+
Update Resolution.fix with what was changed and why.
|
|
330
|
+
Update Resolution.files_changed with modified files.
|
|
331
|
+
|
|
332
|
+
**2. Verify**
|
|
333
|
+
|
|
334
|
+
Update status to "verifying".
|
|
335
|
+
|
|
336
|
+
Update Current Focus:
|
|
337
|
+
```
|
|
338
|
+
hypothesis: fix resolves issue
|
|
339
|
+
test: reproducing original symptoms
|
|
340
|
+
expecting: symptoms no longer occur
|
|
341
|
+
next_action: verify fix
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
Test against original Symptoms:
|
|
345
|
+
- Does expected behavior now occur?
|
|
346
|
+
- Are errors gone?
|
|
347
|
+
- Does reproduction no longer trigger issue?
|
|
348
|
+
|
|
349
|
+
If verification FAILS:
|
|
350
|
+
- Append finding to Evidence
|
|
351
|
+
- Update status back to "investigating"
|
|
352
|
+
- Root cause was wrong or incomplete
|
|
353
|
+
- Return to `investigation_loop`
|
|
354
|
+
|
|
355
|
+
If verification PASSES:
|
|
356
|
+
- Update Resolution.verification with how verified
|
|
357
|
+
- Proceed to `archive_session`
|
|
358
|
+
</step>
|
|
359
|
+
|
|
360
|
+
<step name="archive_session">
|
|
361
|
+
**Archive resolved debug session**
|
|
362
|
+
|
|
363
|
+
Update status to "resolved".
|
|
364
|
+
|
|
365
|
+
```bash
|
|
366
|
+
mkdir -p .planning/debug/resolved
|
|
367
|
+
mv .planning/debug/[slug].md .planning/debug/resolved/
|
|
368
|
+
```
|
|
369
|
+
|
|
370
|
+
Commit:
|
|
371
|
+
```bash
|
|
372
|
+
git add -A
|
|
373
|
+
git commit -m "fix: [brief description from Resolution.fix]
|
|
374
|
+
|
|
375
|
+
Root cause: [from Resolution.root_cause]
|
|
376
|
+
Debug session: .planning/debug/resolved/[slug].md"
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
Report:
|
|
380
|
+
```
|
|
381
|
+
Debug complete.
|
|
382
|
+
|
|
383
|
+
Root cause: [root_cause]
|
|
384
|
+
Fix: [fix]
|
|
385
|
+
Files: [files_changed]
|
|
386
|
+
|
|
387
|
+
Session archived: .planning/debug/resolved/[slug].md
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
Use question:
|
|
391
|
+
- header: "Next"
|
|
392
|
+
- question: "What now?"
|
|
393
|
+
- options:
|
|
394
|
+
- "Continue working" - Back to /gsd:progress
|
|
395
|
+
- "Test more" - Verify related functionality
|
|
396
|
+
- "Done" - End session
|
|
397
|
+
</step>
|
|
398
|
+
|
|
399
|
+
</process>
|
|
400
|
+
|
|
401
|
+
<update_rules>
|
|
402
|
+
**Section update rules (from template):**
|
|
403
|
+
|
|
404
|
+
| Section | Rule | When |
|
|
405
|
+
|---------|------|------|
|
|
406
|
+
| Frontmatter.status | OVERWRITE | Each phase transition |
|
|
407
|
+
| Frontmatter.updated | OVERWRITE | Every file update |
|
|
408
|
+
| Current Focus | OVERWRITE | Before every action |
|
|
409
|
+
| Symptoms | IMMUTABLE | After gathering complete |
|
|
410
|
+
| Eliminated | APPEND | When hypothesis disproved |
|
|
411
|
+
| Evidence | APPEND | After each finding |
|
|
412
|
+
| Resolution | OVERWRITE | As understanding evolves |
|
|
413
|
+
|
|
414
|
+
**CRITICAL:** Update the file BEFORE taking action, not after. If context resets mid-action, the file shows what was about to happen.
|
|
415
|
+
</update_rules>
|
|
416
|
+
|
|
417
|
+
<success_criteria>
|
|
418
|
+
- [ ] Debug file created IMMEDIATELY on command
|
|
419
|
+
- [ ] File updated after EACH piece of information
|
|
420
|
+
- [ ] Current Focus always reflects NOW
|
|
421
|
+
- [ ] Evidence appended for every finding
|
|
422
|
+
- [ ] Eliminated prevents re-investigation
|
|
423
|
+
- [ ] Can resume perfectly from any /clear
|
|
424
|
+
- [ ] Root cause confirmed with evidence before fixing
|
|
425
|
+
- [ ] Fix verified against original symptoms
|
|
426
|
+
</success_criteria>
|
|
@@ -218,7 +218,7 @@ Write `.planning/phases/XX-name/DISCOVERY.md`:
|
|
|
218
218
|
After creating DISCOVERY.md, check confidence level.
|
|
219
219
|
|
|
220
220
|
If confidence is LOW:
|
|
221
|
-
Use
|
|
221
|
+
Use question:
|
|
222
222
|
|
|
223
223
|
- header: "Low Confidence"
|
|
224
224
|
- question: "Discovery confidence is LOW: [reason]. How would you like to proceed?"
|
|
@@ -49,7 +49,7 @@ Continue to intake_gate.
|
|
|
49
49
|
</step>
|
|
50
50
|
|
|
51
51
|
<step name="intake_gate">
|
|
52
|
-
**CRITICAL: ALL questions use
|
|
52
|
+
**CRITICAL: ALL questions use question. Never ask inline text questions.**
|
|
53
53
|
|
|
54
54
|
The primary question is: **What do you want to build/add/fix?**
|
|
55
55
|
|
|
@@ -62,14 +62,14 @@ Check for inputs:
|
|
|
62
62
|
|
|
63
63
|
**1. Open:**
|
|
64
64
|
|
|
65
|
-
Use
|
|
65
|
+
Use question:
|
|
66
66
|
- header: "Next"
|
|
67
67
|
- question: "What do you want to add, improve, or fix in this milestone?"
|
|
68
68
|
- options: [Deferred issues from STATE.md if any] + ["New features", "Improvements to existing", "Bug fixes", "Let me describe"]
|
|
69
69
|
|
|
70
70
|
**2. Explore features:**
|
|
71
71
|
|
|
72
|
-
Based on their response, use
|
|
72
|
+
Based on their response, use question:
|
|
73
73
|
|
|
74
74
|
If they named specific features:
|
|
75
75
|
- header: "Feature Details"
|
|
@@ -88,7 +88,7 @@ If they're not sure:
|
|
|
88
88
|
|
|
89
89
|
**3. Prioritize:**
|
|
90
90
|
|
|
91
|
-
Use
|
|
91
|
+
Use question:
|
|
92
92
|
- header: "Priority"
|
|
93
93
|
- question: "Which of these matters most?"
|
|
94
94
|
- options: [Features they mentioned + "All equally important" + "Let me prioritize"]
|
|
@@ -109,7 +109,7 @@ Based on what you described:
|
|
|
109
109
|
|
|
110
110
|
**4. Decision gate:**
|
|
111
111
|
|
|
112
|
-
Use
|
|
112
|
+
Use question:
|
|
113
113
|
- header: "Ready?"
|
|
114
114
|
- question: "Ready to create the milestone, or explore more?"
|
|
115
115
|
- options (ALL THREE REQUIRED):
|
|
@@ -216,7 +216,7 @@ Context saved to `.planning/MILESTONE-CONTEXT.md`
|
|
|
216
216
|
|
|
217
217
|
`/gsd:new-milestone`
|
|
218
218
|
|
|
219
|
-
|
|
219
|
+
*`/clear` first → fresh context window*
|
|
220
220
|
|
|
221
221
|
---
|
|
222
222
|
```
|
|
@@ -88,9 +88,9 @@ Continue to questioning.
|
|
|
88
88
|
</step>
|
|
89
89
|
|
|
90
90
|
<step name="questioning">
|
|
91
|
-
**CRITICAL: ALL questions use
|
|
91
|
+
**CRITICAL: ALL questions use question. Never ask inline text questions.**
|
|
92
92
|
|
|
93
|
-
Present initial context from roadmap, then immediately use
|
|
93
|
+
Present initial context from roadmap, then immediately use question:
|
|
94
94
|
|
|
95
95
|
```
|
|
96
96
|
Phase ${PHASE}: ${PHASE_NAME}
|
|
@@ -100,35 +100,28 @@ From the roadmap: ${PHASE_DESCRIPTION}
|
|
|
100
100
|
|
|
101
101
|
**1. Open:**
|
|
102
102
|
|
|
103
|
-
Use
|
|
103
|
+
Use question:
|
|
104
104
|
- header: "Vision"
|
|
105
105
|
- question: "How do you imagine this working?"
|
|
106
106
|
- options: 2-3 interpretations based on the phase description + "Let me describe it"
|
|
107
107
|
|
|
108
108
|
**2. Follow the thread:**
|
|
109
109
|
|
|
110
|
-
Based on their response, use
|
|
110
|
+
Based on their response, use question:
|
|
111
111
|
- header: "[Topic they mentioned]"
|
|
112
112
|
- question: "You mentioned [X] — what would that look like?"
|
|
113
113
|
- options: 2-3 interpretations + "Something else"
|
|
114
114
|
|
|
115
115
|
**3. Sharpen the core:**
|
|
116
116
|
|
|
117
|
-
Use
|
|
117
|
+
Use question:
|
|
118
118
|
- header: "Essential"
|
|
119
119
|
- question: "What's the most important part of this phase?"
|
|
120
120
|
- options: Key aspects they've mentioned + "All equally important" + "Something else"
|
|
121
121
|
|
|
122
|
-
**4.
|
|
122
|
+
**4. Capture specifics (optional):**
|
|
123
123
|
|
|
124
|
-
|
|
125
|
-
- header: "Scope"
|
|
126
|
-
- question: "What's explicitly out of scope for this phase?"
|
|
127
|
-
- options: Things that might be tempting + "Nothing specific" + "Let me list them"
|
|
128
|
-
|
|
129
|
-
**5. Capture specifics (optional):**
|
|
130
|
-
|
|
131
|
-
If they seem to have specific ideas, use AskUserQuestion:
|
|
124
|
+
If they seem to have specific ideas, use question:
|
|
132
125
|
- header: "Specifics"
|
|
133
126
|
- question: "Any particular look/feel/behavior in mind?"
|
|
134
127
|
- options: Contextual options based on what they've said + "No specifics" + "Let me describe"
|
|
@@ -138,10 +131,11 @@ CRITICAL — What NOT to ask:
|
|
|
138
131
|
- Codebase patterns (you read the code)
|
|
139
132
|
- Success metrics (too corporate)
|
|
140
133
|
- Constraints they didn't mention (don't interrogate)
|
|
134
|
+
- What's out of scope (implicit from roadmap)
|
|
141
135
|
|
|
142
|
-
**
|
|
136
|
+
**5. Decision gate:**
|
|
143
137
|
|
|
144
|
-
Use
|
|
138
|
+
Use question:
|
|
145
139
|
- header: "Ready?"
|
|
146
140
|
- question: "Ready to capture this context, or explore more?"
|
|
147
141
|
- options (ALL THREE REQUIRED):
|
|
@@ -170,7 +164,6 @@ Populate template sections with VISION context (not technical analysis):
|
|
|
170
164
|
|
|
171
165
|
- `<vision>`: How the user imagines this working
|
|
172
166
|
- `<essential>`: What must be nailed in this phase
|
|
173
|
-
- `<boundaries>`: What's explicitly out of scope
|
|
174
167
|
- `<specifics>`: Any particular look/feel/behavior mentioned
|
|
175
168
|
- `<notes>`: Any other context gathered
|
|
176
169
|
|
|
@@ -191,9 +184,6 @@ Created: .planning/phases/${PHASE}-${SLUG}/${PHASE}-CONTEXT.md
|
|
|
191
184
|
## Essential
|
|
192
185
|
[What must be nailed]
|
|
193
186
|
|
|
194
|
-
## Boundaries
|
|
195
|
-
[What's out of scope]
|
|
196
|
-
|
|
197
187
|
---
|
|
198
188
|
|
|
199
189
|
## ▶ Next Up
|
|
@@ -202,7 +192,7 @@ Created: .planning/phases/${PHASE}-${SLUG}/${PHASE}-CONTEXT.md
|
|
|
202
192
|
|
|
203
193
|
`/gsd:plan-phase ${PHASE}`
|
|
204
194
|
|
|
205
|
-
|
|
195
|
+
*`/clear` first → fresh context window*
|
|
206
196
|
|
|
207
197
|
---
|
|
208
198
|
|
|
@@ -240,7 +230,7 @@ Confirm: "Committed: docs(${PHASE}): capture phase context"
|
|
|
240
230
|
|
|
241
231
|
- Phase validated against roadmap
|
|
242
232
|
- Vision gathered through collaborative thinking (not interrogation)
|
|
243
|
-
- User's imagination captured: how it works, what's essential
|
|
233
|
+
- User's imagination captured: how it works, what's essential
|
|
244
234
|
- CONTEXT.md created in phase directory
|
|
245
235
|
- CONTEXT.md committed to git
|
|
246
236
|
- User knows next steps (typically: research or plan the phase)
|