gsd-opencode 1.5.2 → 1.6.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/agents/gsd-codebase-mapper.md +743 -0
- package/agents/gsd-debugger.md +1191 -0
- package/agents/gsd-executor.md +759 -0
- package/agents/gsd-integration-checker.md +427 -0
- package/agents/gsd-phase-researcher.md +637 -0
- package/agents/gsd-plan-checker.md +749 -0
- package/agents/gsd-planner.md +1373 -0
- package/agents/gsd-project-researcher.md +877 -0
- package/agents/gsd-research-synthesizer.md +250 -0
- package/agents/gsd-roadmapper.md +610 -0
- package/agents/gsd-verifier.md +782 -0
- package/bin/install.js +11 -1
- package/command/gsd/add-phase.md +5 -7
- package/command/gsd/add-todo.md +4 -6
- package/command/gsd/audit-milestone.md +257 -0
- package/command/gsd/check-todos.md +2 -4
- package/command/gsd/complete-milestone.md +53 -23
- package/command/gsd/debug.md +120 -30
- package/command/gsd/discuss-phase.md +51 -30
- package/command/gsd/execute-phase.md +192 -26
- package/command/gsd/help.md +66 -75
- package/command/gsd/insert-phase.md +6 -6
- package/command/gsd/list-phase-assumptions.md +1 -1
- package/command/gsd/map-codebase.md +15 -28
- package/command/gsd/new-milestone.md +693 -36
- package/command/gsd/new-project.md +668 -108
- package/command/gsd/pause-work.md +2 -2
- package/command/gsd/plan-milestone-gaps.md +284 -0
- package/command/gsd/plan-phase.md +449 -42
- package/command/gsd/progress.md +66 -36
- package/command/gsd/remove-phase.md +17 -19
- package/command/gsd/research-phase.md +155 -67
- package/command/gsd/resume-work.md +3 -3
- package/command/gsd/update.md +172 -0
- package/command/gsd/verify-work.md +186 -38
- package/command/gsd/whats-new.md +124 -0
- package/get-shit-done/references/checkpoints.md +599 -98
- package/get-shit-done/references/continuation-format.md +5 -11
- package/get-shit-done/references/questioning.md +87 -108
- package/get-shit-done/references/tdd.md +3 -3
- package/get-shit-done/references/ui-brand.md +160 -0
- package/get-shit-done/references/verification-patterns.md +595 -0
- package/get-shit-done/templates/DEBUG.md +3 -3
- package/get-shit-done/templates/UAT.md +247 -0
- package/get-shit-done/templates/codebase/architecture.md +5 -5
- package/get-shit-done/templates/codebase/concerns.md +1 -1
- package/get-shit-done/templates/codebase/conventions.md +1 -1
- package/get-shit-done/templates/codebase/structure.md +8 -8
- package/get-shit-done/templates/codebase/testing.md +2 -2
- package/get-shit-done/templates/context.md +221 -70
- package/get-shit-done/templates/debug-subagent-prompt.md +91 -0
- package/get-shit-done/templates/discovery.md +5 -5
- package/get-shit-done/templates/phase-prompt.md +115 -2
- package/get-shit-done/templates/planner-subagent-prompt.md +117 -0
- package/get-shit-done/templates/requirements.md +231 -0
- package/get-shit-done/templates/research-project/ARCHITECTURE.md +204 -0
- package/get-shit-done/templates/research-project/FEATURES.md +147 -0
- package/get-shit-done/templates/research-project/PITFALLS.md +200 -0
- package/get-shit-done/templates/research-project/STACK.md +120 -0
- package/get-shit-done/templates/research-project/SUMMARY.md +170 -0
- package/get-shit-done/templates/research.md +2 -2
- package/get-shit-done/templates/roadmap.md +26 -20
- package/get-shit-done/templates/state.md +2 -17
- package/get-shit-done/templates/summary.md +13 -17
- package/get-shit-done/templates/user-setup.md +323 -0
- package/get-shit-done/templates/verification-report.md +322 -0
- package/get-shit-done/workflows/complete-milestone.md +152 -45
- package/get-shit-done/workflows/diagnose-issues.md +233 -0
- package/get-shit-done/workflows/discovery-phase.md +12 -17
- package/get-shit-done/workflows/discuss-phase.md +309 -124
- package/get-shit-done/workflows/execute-phase.md +177 -18
- package/get-shit-done/workflows/execute-plan.md +163 -145
- package/get-shit-done/workflows/map-codebase.md +86 -231
- package/get-shit-done/workflows/resume-project.md +18 -20
- package/get-shit-done/workflows/transition.md +7 -23
- package/get-shit-done/workflows/verify-phase.md +629 -0
- package/get-shit-done/workflows/verify-work.md +495 -134
- package/package.json +2 -1
- package/command/gsd/consider-issues.md +0 -201
- package/command/gsd/create-roadmap.md +0 -115
- package/command/gsd/discuss-milestone.md +0 -47
- package/command/gsd/execute-plan.md +0 -103
- package/command/gsd/plan-fix.md +0 -205
- package/command/gsd/status.md +0 -127
- package/get-shit-done/references/debugging/debugging-mindset.md +0 -253
- package/get-shit-done/references/debugging/hypothesis-testing.md +0 -373
- package/get-shit-done/references/debugging/investigation-techniques.md +0 -337
- package/get-shit-done/references/debugging/verification-patterns.md +0 -425
- package/get-shit-done/references/debugging/when-to-research.md +0 -361
- package/get-shit-done/references/plan-format.md +0 -475
- package/get-shit-done/references/principles.md +0 -157
- package/get-shit-done/references/research-pitfalls.md +0 -215
- package/get-shit-done/references/scope-estimation.md +0 -256
- package/get-shit-done/templates/agent-history.md +0 -263
- package/get-shit-done/templates/checkpoint-return.md +0 -204
- package/get-shit-done/templates/config.json +0 -26
- package/get-shit-done/templates/continuation-prompt.md +0 -235
- package/get-shit-done/templates/issues.md +0 -32
- package/get-shit-done/templates/milestone-context.md +0 -93
- package/get-shit-done/templates/subagent-task-prompt.md +0 -95
- package/get-shit-done/templates/uat-issues.md +0 -143
- package/get-shit-done/workflows/_archive/execute-phase.md +0 -899
- package/get-shit-done/workflows/create-milestone.md +0 -416
- package/get-shit-done/workflows/create-roadmap.md +0 -481
- package/get-shit-done/workflows/debug.md +0 -426
- package/get-shit-done/workflows/discuss-milestone.md +0 -236
- package/get-shit-done/workflows/plan-phase.md +0 -701
- package/get-shit-done/workflows/research-phase.md +0 -436
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
# UAT Template
|
|
2
|
+
|
|
3
|
+
Template for `.planning/phases/XX-name/{phase}-UAT.md` — persistent UAT session tracking.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## File Template
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
---
|
|
11
|
+
status: testing | complete | diagnosed
|
|
12
|
+
phase: XX-name
|
|
13
|
+
source: [list of SUMMARY.md files tested]
|
|
14
|
+
started: [ISO timestamp]
|
|
15
|
+
updated: [ISO timestamp]
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Current Test
|
|
19
|
+
<!-- OVERWRITE each test - shows where we are -->
|
|
20
|
+
|
|
21
|
+
number: [N]
|
|
22
|
+
name: [test name]
|
|
23
|
+
expected: |
|
|
24
|
+
[what user should observe]
|
|
25
|
+
awaiting: user response
|
|
26
|
+
|
|
27
|
+
## Tests
|
|
28
|
+
|
|
29
|
+
### 1. [Test Name]
|
|
30
|
+
expected: [observable behavior - what user should see]
|
|
31
|
+
result: [pending]
|
|
32
|
+
|
|
33
|
+
### 2. [Test Name]
|
|
34
|
+
expected: [observable behavior]
|
|
35
|
+
result: pass
|
|
36
|
+
|
|
37
|
+
### 3. [Test Name]
|
|
38
|
+
expected: [observable behavior]
|
|
39
|
+
result: issue
|
|
40
|
+
reported: "[verbatim user response]"
|
|
41
|
+
severity: major
|
|
42
|
+
|
|
43
|
+
### 4. [Test Name]
|
|
44
|
+
expected: [observable behavior]
|
|
45
|
+
result: skipped
|
|
46
|
+
reason: [why skipped]
|
|
47
|
+
|
|
48
|
+
...
|
|
49
|
+
|
|
50
|
+
## Summary
|
|
51
|
+
|
|
52
|
+
total: [N]
|
|
53
|
+
passed: [N]
|
|
54
|
+
issues: [N]
|
|
55
|
+
pending: [N]
|
|
56
|
+
skipped: [N]
|
|
57
|
+
|
|
58
|
+
## Gaps
|
|
59
|
+
|
|
60
|
+
<!-- YAML format for plan-phase --gaps consumption -->
|
|
61
|
+
- truth: "[expected behavior from test]"
|
|
62
|
+
status: failed
|
|
63
|
+
reason: "User reported: [verbatim response]"
|
|
64
|
+
severity: blocker | major | minor | cosmetic
|
|
65
|
+
test: [N]
|
|
66
|
+
root_cause: "" # Filled by diagnosis
|
|
67
|
+
artifacts: [] # Filled by diagnosis
|
|
68
|
+
missing: [] # Filled by diagnosis
|
|
69
|
+
debug_session: "" # Filled by diagnosis
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
<section_rules>
|
|
75
|
+
|
|
76
|
+
**Frontmatter:**
|
|
77
|
+
- `status`: OVERWRITE - "testing" or "complete"
|
|
78
|
+
- `phase`: IMMUTABLE - set on creation
|
|
79
|
+
- `source`: IMMUTABLE - SUMMARY files being tested
|
|
80
|
+
- `started`: IMMUTABLE - set on creation
|
|
81
|
+
- `updated`: OVERWRITE - update on every change
|
|
82
|
+
|
|
83
|
+
**Current Test:**
|
|
84
|
+
- OVERWRITE entirely on each test transition
|
|
85
|
+
- Shows which test is active and what's awaited
|
|
86
|
+
- On completion: "[testing complete]"
|
|
87
|
+
|
|
88
|
+
**Tests:**
|
|
89
|
+
- Each test: OVERWRITE result field when user responds
|
|
90
|
+
- `result` values: [pending], pass, issue, skipped
|
|
91
|
+
- If issue: add `reported` (verbatim) and `severity` (inferred)
|
|
92
|
+
- If skipped: add `reason` if provided
|
|
93
|
+
|
|
94
|
+
**Summary:**
|
|
95
|
+
- OVERWRITE counts after each response
|
|
96
|
+
- Tracks: total, passed, issues, pending, skipped
|
|
97
|
+
|
|
98
|
+
**Gaps:**
|
|
99
|
+
- APPEND only when issue found (YAML format)
|
|
100
|
+
- After diagnosis: fill `root_cause`, `artifacts`, `missing`, `debug_session`
|
|
101
|
+
- This section feeds directly into /gsd-plan-phase --gaps
|
|
102
|
+
|
|
103
|
+
</section_rules>
|
|
104
|
+
|
|
105
|
+
<diagnosis_lifecycle>
|
|
106
|
+
|
|
107
|
+
**After testing complete (status: complete), if gaps exist:**
|
|
108
|
+
|
|
109
|
+
1. User runs diagnosis (from verify-work offer or manually)
|
|
110
|
+
2. diagnose-issues workflow spawns parallel debug agents
|
|
111
|
+
3. Each agent investigates one gap, returns root cause
|
|
112
|
+
4. UAT.md Gaps section updated with diagnosis:
|
|
113
|
+
- Each gap gets `root_cause`, `artifacts`, `missing`, `debug_session` filled
|
|
114
|
+
5. status → "diagnosed"
|
|
115
|
+
6. Ready for /gsd-plan-phase --gaps with root causes
|
|
116
|
+
|
|
117
|
+
**After diagnosis:**
|
|
118
|
+
```yaml
|
|
119
|
+
## Gaps
|
|
120
|
+
|
|
121
|
+
- truth: "Comment appears immediately after submission"
|
|
122
|
+
status: failed
|
|
123
|
+
reason: "User reported: works but doesn't show until I refresh the page"
|
|
124
|
+
severity: major
|
|
125
|
+
test: 2
|
|
126
|
+
root_cause: "useEffect in CommentList.tsx missing commentCount dependency"
|
|
127
|
+
artifacts:
|
|
128
|
+
- path: "src/components/CommentList.tsx"
|
|
129
|
+
issue: "useEffect missing dependency"
|
|
130
|
+
missing:
|
|
131
|
+
- "Add commentCount to useEffect dependency array"
|
|
132
|
+
debug_session: ".planning/debug/comment-not-refreshing.md"
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
</diagnosis_lifecycle>
|
|
136
|
+
|
|
137
|
+
<lifecycle>
|
|
138
|
+
|
|
139
|
+
**Creation:** When /gsd-verify-work starts new session
|
|
140
|
+
- Extract tests from SUMMARY.md files
|
|
141
|
+
- Set status to "testing"
|
|
142
|
+
- Current Test points to test 1
|
|
143
|
+
- All tests have result: [pending]
|
|
144
|
+
|
|
145
|
+
**During testing:**
|
|
146
|
+
- Present test from Current Test section
|
|
147
|
+
- User responds with pass confirmation or issue description
|
|
148
|
+
- Update test result (pass/issue/skipped)
|
|
149
|
+
- Update Summary counts
|
|
150
|
+
- If issue: append to Gaps section (YAML format), infer severity
|
|
151
|
+
- Move Current Test to next pending test
|
|
152
|
+
|
|
153
|
+
**On completion:**
|
|
154
|
+
- status → "complete"
|
|
155
|
+
- Current Test → "[testing complete]"
|
|
156
|
+
- Commit file
|
|
157
|
+
- Present summary with next steps
|
|
158
|
+
|
|
159
|
+
**Resume after /new:**
|
|
160
|
+
1. read frontmatter → know phase and status
|
|
161
|
+
2. read Current Test → know where we are
|
|
162
|
+
3. Find first [pending] result → continue from there
|
|
163
|
+
4. Summary shows progress so far
|
|
164
|
+
|
|
165
|
+
</lifecycle>
|
|
166
|
+
|
|
167
|
+
<severity_guide>
|
|
168
|
+
|
|
169
|
+
Severity is INFERRED from user's natural language, never asked.
|
|
170
|
+
|
|
171
|
+
| User describes | Infer |
|
|
172
|
+
|----------------|-------|
|
|
173
|
+
| Crash, error, exception, fails completely, unusable | blocker |
|
|
174
|
+
| Doesn't work, nothing happens, wrong behavior, missing | major |
|
|
175
|
+
| Works but..., slow, weird, minor, small issue | minor |
|
|
176
|
+
| Color, font, spacing, alignment, visual, looks off | cosmetic |
|
|
177
|
+
|
|
178
|
+
Default: **major** (safe default, user can clarify if wrong)
|
|
179
|
+
|
|
180
|
+
</severity_guide>
|
|
181
|
+
|
|
182
|
+
<good_example>
|
|
183
|
+
```markdown
|
|
184
|
+
---
|
|
185
|
+
status: diagnosed
|
|
186
|
+
phase: 04-comments
|
|
187
|
+
source: 04-01-SUMMARY.md, 04-02-SUMMARY.md
|
|
188
|
+
started: 2025-01-15T10:30:00Z
|
|
189
|
+
updated: 2025-01-15T10:45:00Z
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## Current Test
|
|
193
|
+
|
|
194
|
+
[testing complete]
|
|
195
|
+
|
|
196
|
+
## Tests
|
|
197
|
+
|
|
198
|
+
### 1. View Comments on Post
|
|
199
|
+
expected: Comments section expands, shows count and comment list
|
|
200
|
+
result: pass
|
|
201
|
+
|
|
202
|
+
### 2. Create Top-Level Comment
|
|
203
|
+
expected: Submit comment via rich text editor, appears in list with author info
|
|
204
|
+
result: issue
|
|
205
|
+
reported: "works but doesn't show until I refresh the page"
|
|
206
|
+
severity: major
|
|
207
|
+
|
|
208
|
+
### 3. Reply to a Comment
|
|
209
|
+
expected: Click Reply, inline composer appears, submit shows nested reply
|
|
210
|
+
result: pass
|
|
211
|
+
|
|
212
|
+
### 4. Visual Nesting
|
|
213
|
+
expected: 3+ level thread shows indentation, left borders, caps at reasonable depth
|
|
214
|
+
result: pass
|
|
215
|
+
|
|
216
|
+
### 5. Delete Own Comment
|
|
217
|
+
expected: Click delete on own comment, removed or shows [deleted] if has replies
|
|
218
|
+
result: pass
|
|
219
|
+
|
|
220
|
+
### 6. Comment Count
|
|
221
|
+
expected: Post shows accurate count, increments when adding comment
|
|
222
|
+
result: pass
|
|
223
|
+
|
|
224
|
+
## Summary
|
|
225
|
+
|
|
226
|
+
total: 6
|
|
227
|
+
passed: 5
|
|
228
|
+
issues: 1
|
|
229
|
+
pending: 0
|
|
230
|
+
skipped: 0
|
|
231
|
+
|
|
232
|
+
## Gaps
|
|
233
|
+
|
|
234
|
+
- truth: "Comment appears immediately after submission in list"
|
|
235
|
+
status: failed
|
|
236
|
+
reason: "User reported: works but doesn't show until I refresh the page"
|
|
237
|
+
severity: major
|
|
238
|
+
test: 2
|
|
239
|
+
root_cause: "useEffect in CommentList.tsx missing commentCount dependency"
|
|
240
|
+
artifacts:
|
|
241
|
+
- path: "src/components/CommentList.tsx"
|
|
242
|
+
issue: "useEffect missing dependency"
|
|
243
|
+
missing:
|
|
244
|
+
- "Add commentCount to useEffect dependency array"
|
|
245
|
+
debug_session: ".planning/debug/comment-not-refreshing.md"
|
|
246
|
+
```
|
|
247
|
+
</good_example>
|
|
@@ -124,7 +124,7 @@ Template for `.planning/codebase/ARCHITECTURE.md` - captures conceptual code org
|
|
|
124
124
|
**Command Layer:**
|
|
125
125
|
- Purpose: Parse user input and route to appropriate handler
|
|
126
126
|
- Contains: Command definitions, argument parsing, help text
|
|
127
|
-
- Location: `src/
|
|
127
|
+
- Location: `src/commands/*.ts`
|
|
128
128
|
- Depends on: Service layer for business logic
|
|
129
129
|
- Used by: CLI entry point (`src/index.ts`)
|
|
130
130
|
|
|
@@ -148,7 +148,7 @@ Template for `.planning/codebase/ARCHITECTURE.md` - captures conceptual code org
|
|
|
148
148
|
|
|
149
149
|
1. User runs: `gsd new-project`
|
|
150
150
|
2. Commander parses args and flags
|
|
151
|
-
3. Command handler invoked (`src/
|
|
151
|
+
3. Command handler invoked (`src/commands/new-project.ts`)
|
|
152
152
|
4. Handler calls service methods (`src/services/project.ts` → `create()`)
|
|
153
153
|
5. Service reads templates, processes files, writes output
|
|
154
154
|
6. Results logged to console
|
|
@@ -168,7 +168,7 @@ Template for `.planning/codebase/ARCHITECTURE.md` - captures conceptual code org
|
|
|
168
168
|
|
|
169
169
|
**Command:**
|
|
170
170
|
- Purpose: CLI command definition
|
|
171
|
-
- Examples: `src/
|
|
171
|
+
- Examples: `src/commands/new-project.ts`, `src/commands/plan-phase.ts`
|
|
172
172
|
- Pattern: Commander.js command registration
|
|
173
173
|
|
|
174
174
|
**Template:**
|
|
@@ -184,7 +184,7 @@ Template for `.planning/codebase/ARCHITECTURE.md` - captures conceptual code org
|
|
|
184
184
|
- Responsibilities: Register commands, parse args, display help
|
|
185
185
|
|
|
186
186
|
**Commands:**
|
|
187
|
-
- Location: `src/
|
|
187
|
+
- Location: `src/commands/*.ts`
|
|
188
188
|
- Triggers: Matched command from CLI
|
|
189
189
|
- Responsibilities: Validate input, call services, format output
|
|
190
190
|
|
|
@@ -241,7 +241,7 @@ Template for `.planning/codebase/ARCHITECTURE.md` - captures conceptual code org
|
|
|
241
241
|
Include file paths as concrete examples of abstractions. Use backtick formatting: `src/services/user.ts`. This makes the architecture document actionable for OpenCode when planning.
|
|
242
242
|
|
|
243
243
|
**When filling this template:**
|
|
244
|
-
-
|
|
244
|
+
- read main entry points (index, server, main)
|
|
245
245
|
- Identify layers by reading imports/dependencies
|
|
246
246
|
- Trace a typical request/command execution
|
|
247
247
|
- Note recurring patterns (services, controllers, repositories)
|
|
@@ -306,5 +306,5 @@ Template for `.planning/codebase/CONCERNS.md` - captures known issues and areas
|
|
|
306
306
|
- Planning refactoring work
|
|
307
307
|
|
|
308
308
|
**How this gets populated:**
|
|
309
|
-
|
|
309
|
+
Explore agents detect these during codebase mapping. Manual additions welcome for human-discovered issues. This is living documentation, not a complaint list.
|
|
310
310
|
</guidelines>
|
|
@@ -301,7 +301,7 @@ Template for `.planning/codebase/CONVENTIONS.md` - captures coding style and pat
|
|
|
301
301
|
**Analysis approach:**
|
|
302
302
|
- Scan src/ directory for file naming patterns
|
|
303
303
|
- Check package.json scripts for lint/format commands
|
|
304
|
-
-
|
|
304
|
+
- read 5-10 files to identify function naming, error handling
|
|
305
305
|
- Look for config files (.prettierrc, eslint.config.js)
|
|
306
306
|
- Note patterns in imports, comments, function signatures
|
|
307
307
|
</guidelines>
|
|
@@ -125,7 +125,7 @@ Template for `.planning/codebase/STRUCTURE.md` - captures physical file organiza
|
|
|
125
125
|
```
|
|
126
126
|
get-shit-done/
|
|
127
127
|
├── bin/ # Executable entry points
|
|
128
|
-
├──
|
|
128
|
+
├── commands/ # Slash command definitions
|
|
129
129
|
│ └── gsd/ # GSD-specific commands
|
|
130
130
|
├── get-shit-done/ # Skill resources
|
|
131
131
|
│ ├── references/ # Principle documents
|
|
@@ -145,7 +145,7 @@ get-shit-done/
|
|
|
145
145
|
- Key files: install.js - handles npx installation
|
|
146
146
|
- Subdirectories: None
|
|
147
147
|
|
|
148
|
-
**
|
|
148
|
+
**commands/gsd/**
|
|
149
149
|
- Purpose: Slash command definitions for OpenCode
|
|
150
150
|
- Contains: *.md files (one per command)
|
|
151
151
|
- Key files: new-project.md, plan-phase.md, execute-plan.md
|
|
@@ -197,7 +197,7 @@ get-shit-done/
|
|
|
197
197
|
|
|
198
198
|
**Directories:**
|
|
199
199
|
- kebab-case: All directories
|
|
200
|
-
- Plural for collections: templates/,
|
|
200
|
+
- Plural for collections: templates/, commands/, workflows/
|
|
201
201
|
|
|
202
202
|
**Special Patterns:**
|
|
203
203
|
- {command-name}.md: Slash command definition
|
|
@@ -206,8 +206,8 @@ get-shit-done/
|
|
|
206
206
|
## Where to Add New Code
|
|
207
207
|
|
|
208
208
|
**New Slash Command:**
|
|
209
|
-
- Primary code: `
|
|
210
|
-
- Tests: `tests/
|
|
209
|
+
- Primary code: `commands/gsd/{command-name}.md`
|
|
210
|
+
- Tests: `tests/commands/{command-name}.test.js` (if testing implemented)
|
|
211
211
|
- Documentation: Update `README.md` with new command
|
|
212
212
|
|
|
213
213
|
**New Template:**
|
|
@@ -220,7 +220,7 @@ get-shit-done/
|
|
|
220
220
|
|
|
221
221
|
**New Reference Document:**
|
|
222
222
|
- Implementation: `get-shit-done/references/{name}.md`
|
|
223
|
-
- Usage: Reference from
|
|
223
|
+
- Usage: Reference from commands/workflows as needed
|
|
224
224
|
|
|
225
225
|
**Utilities:**
|
|
226
226
|
- No utilities yet (`install.js` is monolithic)
|
|
@@ -233,8 +233,8 @@ get-shit-done/
|
|
|
233
233
|
- Source: Copied by bin/install.js during installation
|
|
234
234
|
- Committed: Yes (source of truth)
|
|
235
235
|
|
|
236
|
-
**
|
|
237
|
-
- Purpose: Slash commands installed to ~/.config/opencode/
|
|
236
|
+
**commands/**
|
|
237
|
+
- Purpose: Slash commands installed to ~/.config/opencode/commands/
|
|
238
238
|
- Source: Copied by bin/install.js during installation
|
|
239
239
|
- Committed: Yes (source of truth)
|
|
240
240
|
|
|
@@ -457,7 +457,7 @@ it('mocks file system', () => {
|
|
|
457
457
|
**When filling this template:**
|
|
458
458
|
- Check package.json scripts for test commands
|
|
459
459
|
- Find test config file (jest.config.js, vitest.config.ts)
|
|
460
|
-
-
|
|
460
|
+
- read 3-5 existing test files to identify patterns
|
|
461
461
|
- Look for test utilities in tests/ or test-utils/
|
|
462
462
|
- Check for coverage configuration
|
|
463
463
|
- Document actual patterns used, not ideal patterns
|
|
@@ -471,7 +471,7 @@ it('mocks file system', () => {
|
|
|
471
471
|
|
|
472
472
|
**Analysis approach:**
|
|
473
473
|
- Check package.json for test framework and scripts
|
|
474
|
-
-
|
|
474
|
+
- read test config file for coverage, setup
|
|
475
475
|
- Examine test file organization (collocated vs separate)
|
|
476
476
|
- Review 5 test files for patterns (mocking, structure, assertions)
|
|
477
477
|
- Look for test utilities, fixtures, factories
|