specsmd 0.0.34 → 0.1.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/README.md +21 -1
- package/flows/aidlc/agents/inception-agent.md +4 -2
- package/flows/aidlc/context-config.yaml +28 -2
- package/flows/aidlc/memory-bank.yaml +7 -7
- package/flows/aidlc/skills/construction/bolt-list.md +14 -14
- package/flows/aidlc/skills/construction/bolt-replan.md +37 -35
- package/flows/aidlc/skills/construction/bolt-start.md +133 -8
- package/flows/aidlc/skills/construction/navigator.md +7 -7
- package/flows/aidlc/skills/inception/bolt-plan.md +50 -30
- package/flows/aidlc/skills/master/analyze-context.md +107 -0
- package/flows/aidlc/skills/master/explain-flow.md +13 -1
- package/flows/aidlc/templates/construction/bolt-template.md +13 -1
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/adr-template.md +1 -1
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-01-domain-model-template.md +1 -1
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-02-technical-design-template.md +1 -1
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-03-test-report-template.md +1 -1
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt.md +3 -3
- package/flows/aidlc/templates/construction/bolt-types/simple-construction-bolt.md +92 -23
- package/flows/aidlc/templates/construction/bolt-types/spike-bolt.md +2 -2
- package/flows/aidlc/templates/construction/construction-log-template.md +2 -2
- package/flows/aidlc/templates/inception/inception-log-template.md +2 -2
- package/flows/aidlc/templates/inception/requirements-template.md +2 -2
- package/flows/aidlc/templates/inception/stories-template.md +1 -1
- package/flows/aidlc/templates/inception/story-template.md +2 -2
- package/flows/aidlc/templates/inception/system-context-template.md +1 -1
- package/flows/aidlc/templates/inception/unit-brief-template.md +2 -2
- package/flows/aidlc/templates/inception/units-template.md +1 -1
- package/lib/analytics/env-detector.js +92 -0
- package/lib/analytics/index.js +22 -0
- package/lib/analytics/machine-id.js +33 -0
- package/lib/analytics/tracker.js +205 -0
- package/lib/installer.js +75 -1
- package/package.json +4 -3
|
@@ -190,35 +190,51 @@ Establish execution order based on dependencies:
|
|
|
190
190
|
1. **Read Path**: Check `schema.bolts` from `.specsmd/aidlc/memory-bank.yaml`
|
|
191
191
|
*(Default: `memory-bank/bolts/{bolt-id}/`)*
|
|
192
192
|
|
|
193
|
-
2. **
|
|
193
|
+
2. **Determine Bolt ID**:
|
|
194
|
+
- List all directories in `memory-bank/bolts/`
|
|
195
|
+
- Extract the 3-digit prefix from each (e.g., `015` from `015-auth-service`)
|
|
196
|
+
- Find the highest number
|
|
197
|
+
- Next bolt uses the next available number (e.g., if highest is `015`, next is `016`)
|
|
198
|
+
|
|
199
|
+
**⚠️ CRITICAL**: The `{BBB}` prefix is a **GLOBAL** sequence across ALL bolts in `memory-bank/bolts/`, NOT per-unit.
|
|
200
|
+
|
|
201
|
+
3. **Create Directory + File Per Bolt**:
|
|
194
202
|
For EACH bolt in the plan:
|
|
195
|
-
- Create directory: `memory-bank/bolts/
|
|
196
|
-
- Create file inside: `memory-bank/bolts/
|
|
203
|
+
- Create directory: `memory-bank/bolts/{BBB}-{unit-name}/`
|
|
204
|
+
- Create file inside: `memory-bank/bolts/{BBB}-{unit-name}/bolt.md`
|
|
197
205
|
- Use template: `.specsmd/aidlc/templates/construction/bolt-template.md`
|
|
198
206
|
|
|
199
|
-
**
|
|
207
|
+
**Naming Convention** (from `memory-bank.yaml`):
|
|
208
|
+
- Format: `{BBB}-{unit-name}/` where BBB is a **GLOBAL** 3-digit sequence
|
|
209
|
+
- The number is global across ALL bolts in `memory-bank/bolts/` (not per-unit)
|
|
210
|
+
- Example sequence: `001-auth-service/`, `002-auth-service/`, `003-payment-service/`, `004-auth-service/`
|
|
211
|
+
|
|
212
|
+
**Example**: Planning bolts across multiple units (global numbering):
|
|
200
213
|
|
|
201
214
|
```text
|
|
202
|
-
memory-bank/bolts/
|
|
203
|
-
|
|
204
|
-
|
|
215
|
+
memory-bank/bolts/
|
|
216
|
+
├── 001-auth-service/bolt.md ← First bolt ever created
|
|
217
|
+
├── 002-auth-service/bolt.md ← Second bolt (same unit, continues sequence)
|
|
218
|
+
├── 003-payment-service/bolt.md ← Third bolt (different unit)
|
|
219
|
+
├── 004-auth-service/bolt.md ← Fourth bolt (back to auth-service)
|
|
220
|
+
└── 005-api-gateway/bolt.md ← Fifth bolt (another unit)
|
|
205
221
|
```
|
|
206
222
|
|
|
207
223
|
**Stage artifacts will be added to same directory during construction:**
|
|
208
224
|
|
|
209
225
|
```text
|
|
210
|
-
memory-bank/bolts/
|
|
226
|
+
memory-bank/bolts/001-auth-service/
|
|
211
227
|
├── bolt.md ← You create this now
|
|
212
228
|
└── {stage-artifacts} ← Created during construction (varies by bolt type)
|
|
213
229
|
```
|
|
214
230
|
|
|
215
|
-
*Note: Artifact names depend on bolt type (e.g., DDD bolts create `ddd-01-domain-model.md`, simple bolts create `
|
|
231
|
+
*Note: Artifact names depend on bolt type (e.g., DDD bolts create `ddd-01-domain-model.md`, simple bolts create `implementation-plan.md`).*
|
|
216
232
|
|
|
217
|
-
|
|
233
|
+
4. **Bolt File Structure** (CRITICAL: Include all dependencies in frontmatter):
|
|
218
234
|
|
|
219
235
|
```markdown
|
|
220
236
|
---
|
|
221
|
-
id:
|
|
237
|
+
id: {BBB}-{unit-name}
|
|
222
238
|
unit: {unit-name}
|
|
223
239
|
intent: {intent-name}
|
|
224
240
|
type: {bolt-type} # From unit-brief.md or default (ddd-construction-bolt, simple-construction-bolt)
|
|
@@ -227,8 +243,8 @@ Establish execution order based on dependencies:
|
|
|
227
243
|
created: {date}
|
|
228
244
|
|
|
229
245
|
# Dependency Tracking (REQUIRED)
|
|
230
|
-
requires_bolts: [
|
|
231
|
-
enables_bolts: [
|
|
246
|
+
requires_bolts: [001-auth-service] # Bolts that must complete first
|
|
247
|
+
enables_bolts: [003-auth-service, 001-api-service] # Bolts that depend on this
|
|
232
248
|
requires_units: [auth-service] # Units that must be complete
|
|
233
249
|
blocks: false # true if waiting on dependency
|
|
234
250
|
|
|
@@ -240,7 +256,7 @@ Establish execution order based on dependencies:
|
|
|
240
256
|
testing_scope: 2 # 1=Unit, 2=Integration, 3=E2E
|
|
241
257
|
---
|
|
242
258
|
|
|
243
|
-
## Bolt: {
|
|
259
|
+
## Bolt: {BBB}-{unit-name}
|
|
244
260
|
|
|
245
261
|
### Objective
|
|
246
262
|
{What this bolt will accomplish}
|
|
@@ -257,19 +273,19 @@ Establish execution order based on dependencies:
|
|
|
257
273
|
|
|
258
274
|
#### Bolt Dependencies (within intent)
|
|
259
275
|
|
|
260
|
-
- **
|
|
261
|
-
- **
|
|
276
|
+
- **001-auth-service** (Required): Completed
|
|
277
|
+
- **002-auth-service** (Optional): In Progress
|
|
262
278
|
|
|
263
279
|
#### Unit Dependencies (cross-unit)
|
|
264
280
|
|
|
265
281
|
- **auth-service**: Needs auth tokens - Completed
|
|
266
282
|
|
|
267
283
|
#### Enables (other bolts waiting on this)
|
|
268
|
-
-
|
|
269
|
-
-
|
|
284
|
+
- 003-auth-service
|
|
285
|
+
- 001-api-service
|
|
270
286
|
```
|
|
271
287
|
|
|
272
|
-
###
|
|
288
|
+
### 9. Validate Plan
|
|
273
289
|
|
|
274
290
|
Check the plan against:
|
|
275
291
|
|
|
@@ -291,16 +307,20 @@ Check the plan against:
|
|
|
291
307
|
**⚠️ YOU MUST CREATE THESE DIRECTORIES AND FILES:**
|
|
292
308
|
|
|
293
309
|
```text
|
|
294
|
-
memory-bank/bolts/
|
|
295
|
-
memory-bank/bolts/bolt-{unit}-2/bolt.md ← CREATE THIS DIRECTORY AND FILE
|
|
296
|
-
memory-bank/bolts/bolt-{unit}-3/bolt.md ← CREATE THIS DIRECTORY AND FILE
|
|
310
|
+
memory-bank/bolts/{BBB}-{unit-name}/bolt.md ← CREATE THIS DIRECTORY AND FILE
|
|
297
311
|
```
|
|
298
312
|
|
|
313
|
+
**Naming Convention** (from `memory-bank.yaml`):
|
|
314
|
+
|
|
315
|
+
- Format: `{BBB}-{unit-name}/` where BBB is a global 3-digit sequence
|
|
316
|
+
- Example: `001-auth-service/`, `002-auth-service/`, `016-analytics-tracker/`
|
|
317
|
+
|
|
299
318
|
**⚠️ DO NOT CREATE:**
|
|
300
319
|
|
|
301
320
|
- `bolt-plan.md` (summary doc)
|
|
302
321
|
- `README.md` files
|
|
303
|
-
- Flat files like `
|
|
322
|
+
- Flat files like `001-auth-service.md` (must be in directory)
|
|
323
|
+
- Old format like `bolt-{unit}-1/` (incorrect)
|
|
304
324
|
|
|
305
325
|
### Summary (displayed to user)
|
|
306
326
|
|
|
@@ -309,17 +329,17 @@ memory-bank/bolts/bolt-{unit}-3/bolt.md ← CREATE THIS DIRECTORY AND FILE
|
|
|
309
329
|
|
|
310
330
|
### Bolts Created
|
|
311
331
|
|
|
312
|
-
- [ ] **
|
|
313
|
-
- [ ] **
|
|
314
|
-
- [ ] **
|
|
332
|
+
- [ ] **001-auth-service** ({bolt-type}): 001-user-signup, 002-user-login
|
|
333
|
+
- [ ] **002-auth-service** ({bolt-type}): 003-password-reset, 004-email-verify
|
|
334
|
+
- [ ] **003-auth-service** ({bolt-type}): 005-mfa-setup
|
|
315
335
|
|
|
316
336
|
### Dependency Graph
|
|
317
|
-
|
|
337
|
+
001-auth-service ──► 002-auth-service ──► 003-auth-service
|
|
318
338
|
|
|
319
339
|
### Directories Created
|
|
320
|
-
✅ `memory-bank/bolts/
|
|
321
|
-
✅ `memory-bank/bolts/
|
|
322
|
-
✅ `memory-bank/bolts/
|
|
340
|
+
✅ `memory-bank/bolts/001-auth-service/bolt.md`
|
|
341
|
+
✅ `memory-bank/bolts/002-auth-service/bolt.md`
|
|
342
|
+
✅ `memory-bank/bolts/003-auth-service/bolt.md`
|
|
323
343
|
|
|
324
344
|
### Total
|
|
325
345
|
- {n} bolts created
|
|
@@ -70,6 +70,106 @@ Based on evidence found:
|
|
|
70
70
|
- **All bolts completed** → Ready for Operations → Deploy unit
|
|
71
71
|
- **Deployed to production** → Operations → Monitor and maintain
|
|
72
72
|
|
|
73
|
+
### 6. Validate Status Integrity
|
|
74
|
+
|
|
75
|
+
Check for status inconsistencies across the artifact hierarchy. Status must cascade correctly:
|
|
76
|
+
|
|
77
|
+
```text
|
|
78
|
+
Bolt complete → Stories complete → Unit complete (if all bolts done) → Intent complete (if all units done)
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
#### 6.1 Story Status Check
|
|
82
|
+
|
|
83
|
+
For each completed bolt:
|
|
84
|
+
|
|
85
|
+
- Read bolt's `stories` array
|
|
86
|
+
- Check each story file's `status` field
|
|
87
|
+
- **Inconsistency**: Bolt complete but story has `status: draft` or `status: in-progress`
|
|
88
|
+
|
|
89
|
+
#### 6.2 Unit Status Check
|
|
90
|
+
|
|
91
|
+
For each unit:
|
|
92
|
+
|
|
93
|
+
- Find all bolts for unit: `memory-bank/bolts/bolt-{unit}-*/bolt.md`
|
|
94
|
+
- Determine expected status:
|
|
95
|
+
- If ANY bolt `in-progress` → unit should be `in-progress`
|
|
96
|
+
- If ALL bolts `complete` → unit should be `complete`
|
|
97
|
+
- If ALL bolts `planned` and at least one story defined → unit should be `stories-defined`
|
|
98
|
+
- If NO bolts exist but stories exist → unit should be `stories-defined`
|
|
99
|
+
- **Inconsistency**: Unit status doesn't match expected based on bolt states
|
|
100
|
+
|
|
101
|
+
#### 6.3 Intent Status Check
|
|
102
|
+
|
|
103
|
+
For each intent:
|
|
104
|
+
|
|
105
|
+
- Read all unit-briefs: `{intent}/units/*/unit-brief.md`
|
|
106
|
+
- Determine expected status:
|
|
107
|
+
- If ANY unit `in-progress` → intent should be `construction`
|
|
108
|
+
- If ALL units `complete` → intent should be `complete`
|
|
109
|
+
- If units defined but none started → intent should be `units-defined`
|
|
110
|
+
- **Inconsistency**: Intent status doesn't match expected based on unit states
|
|
111
|
+
|
|
112
|
+
#### 6.4 Report Inconsistencies
|
|
113
|
+
|
|
114
|
+
If inconsistencies found, report them:
|
|
115
|
+
|
|
116
|
+
```markdown
|
|
117
|
+
## ⚠️ Status Inconsistencies Detected
|
|
118
|
+
|
|
119
|
+
| Artifact | Current Status | Expected Status | Reason |
|
|
120
|
+
|----------|----------------|-----------------|--------|
|
|
121
|
+
| unit-brief: file-watcher | draft | complete | All bolts complete |
|
|
122
|
+
| requirements: 011-vscode-extension | units-defined | construction | Has in-progress units |
|
|
123
|
+
|
|
124
|
+
### Actions
|
|
125
|
+
1 - **fix**: Update all statuses to expected values
|
|
126
|
+
2 - **skip**: Continue without fixing
|
|
127
|
+
3 - **review**: Show details for each inconsistency
|
|
128
|
+
|
|
129
|
+
**Type 1 to fix inconsistencies, or 2 to skip.**
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
#### 6.5 Auto-Fix (On User Confirmation)
|
|
133
|
+
|
|
134
|
+
If user confirms fix:
|
|
135
|
+
|
|
136
|
+
- Update each artifact's frontmatter `status` field
|
|
137
|
+
- Update `updated` timestamp to current date
|
|
138
|
+
- Log changes to `memory-bank/maintenance-log.md`
|
|
139
|
+
- Report changes made
|
|
140
|
+
|
|
141
|
+
#### 6.6 Log to Maintenance Log
|
|
142
|
+
|
|
143
|
+
Append entry to `memory-bank/maintenance-log.md` (create if doesn't exist):
|
|
144
|
+
|
|
145
|
+
```markdown
|
|
146
|
+
## {ISO-8601-timestamp} - Status Sync
|
|
147
|
+
|
|
148
|
+
**Triggered by**: analyze-context integrity check
|
|
149
|
+
|
|
150
|
+
| Artifact | Old Status | New Status | Reason |
|
|
151
|
+
|----------|------------|------------|--------|
|
|
152
|
+
| {path} | {old} | {new} | {reason} |
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
**Example**:
|
|
158
|
+
|
|
159
|
+
```markdown
|
|
160
|
+
## 2025-12-26T15:30:00Z - Status Sync
|
|
161
|
+
|
|
162
|
+
**Triggered by**: analyze-context integrity check
|
|
163
|
+
|
|
164
|
+
| Artifact | Old Status | New Status | Reason |
|
|
165
|
+
|----------|------------|------------|--------|
|
|
166
|
+
| 011-vscode-extension/units/file-watcher/unit-brief.md | draft | complete | All bolts complete (1/1) |
|
|
167
|
+
| 011-vscode-extension/units/extension-core/unit-brief.md | draft | complete | All bolts complete (1/1) |
|
|
168
|
+
| 011-vscode-extension/requirements.md | units-defined | construction | Has in-progress units |
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
```
|
|
172
|
+
|
|
73
173
|
---
|
|
74
174
|
|
|
75
175
|
## Output
|
|
@@ -91,14 +191,21 @@ Provide a structured analysis:
|
|
|
91
191
|
- Stories found: {count} for {unit}
|
|
92
192
|
- Bolts found: {count} ({status breakdown})
|
|
93
193
|
|
|
194
|
+
### Status Integrity
|
|
195
|
+
- ✅ All statuses consistent (or)
|
|
196
|
+
- ⚠️ {N} inconsistencies found (see details below)
|
|
197
|
+
|
|
94
198
|
### Current State Details
|
|
95
199
|
{Specific details about what exists and what's missing}
|
|
96
200
|
|
|
201
|
+
{If inconsistencies found, include the inconsistency table here}
|
|
202
|
+
|
|
97
203
|
### Actions
|
|
98
204
|
|
|
99
205
|
1 - **proceed**: Execute suggested action
|
|
100
206
|
2 - **explain**: Learn more about current phase
|
|
101
207
|
3 - **different**: Work on something else
|
|
208
|
+
{If inconsistencies: 4 - **fix**: Fix status inconsistencies}
|
|
102
209
|
|
|
103
210
|
### Suggested Next Step
|
|
104
211
|
→ **proceed** - {Specific command to run}
|
|
@@ -41,11 +41,23 @@ AI-DLC is a reimagined development methodology where AI drives the workflow and
|
|
|
41
41
|
- Output: Complete implementation plan
|
|
42
42
|
|
|
43
43
|
2. **Construction** → Building & Testing
|
|
44
|
-
- Execute bolts through their stages
|
|
44
|
+
- Execute bolts through their stages (stages vary by bolt type)
|
|
45
45
|
- AI generates designs, code, and tests
|
|
46
46
|
- Human validates at each stage
|
|
47
47
|
- Output: Tested, working code
|
|
48
48
|
|
|
49
|
+
**DDD Bolt** (for domain-heavy business logic):
|
|
50
|
+
- Stage 1: Domain Model → AI models entities, aggregates, events
|
|
51
|
+
- Stage 2: Technical Design → AI architects layers, APIs, data
|
|
52
|
+
- Stage 3: ADR Analysis → Capture architectural decisions (optional)
|
|
53
|
+
- Stage 4: Implement → AI generates code from designs
|
|
54
|
+
- Stage 5: Test → AI writes and runs tests
|
|
55
|
+
|
|
56
|
+
**Simple Bolt** (for straightforward tasks):
|
|
57
|
+
- Stage 1: Plan → Define what to build
|
|
58
|
+
- Stage 2: Implement → AI generates code
|
|
59
|
+
- Stage 3: Test → AI writes and runs tests
|
|
60
|
+
|
|
49
61
|
3. **Operations** → Deploy & Monitor
|
|
50
62
|
- Package deployment units
|
|
51
63
|
- Deploy through environments (Dev → Staging → Prod)
|
|
@@ -34,12 +34,18 @@ status: planned
|
|
|
34
34
|
stories:
|
|
35
35
|
- story-1
|
|
36
36
|
- story-2
|
|
37
|
-
created: {YYYY-MM-
|
|
37
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
38
38
|
started: null
|
|
39
39
|
completed: null
|
|
40
40
|
current_stage: null
|
|
41
41
|
stages_completed: []
|
|
42
42
|
|
|
43
|
+
# Bolt Dependencies (for execution ordering)
|
|
44
|
+
requires_bolts: [] # Bolts that must complete before this bolt can start
|
|
45
|
+
enables_bolts: [] # Bolts that become unblocked when this bolt completes
|
|
46
|
+
requires_units: [] # Units that must exist (usually empty)
|
|
47
|
+
blocks: false # Computed: true if any requires_bolts are incomplete
|
|
48
|
+
|
|
43
49
|
# Complexity Assessment (aggregate of included stories)
|
|
44
50
|
complexity:
|
|
45
51
|
avg_complexity: 2 # 1=Low, 2=Medium, 3=High
|
|
@@ -142,6 +148,12 @@ stages_completed:
|
|
|
142
148
|
completed: 2024-12-05T10:00:00Z
|
|
143
149
|
artifact: ddd-01-domain-model.md
|
|
144
150
|
|
|
151
|
+
requires_bolts: []
|
|
152
|
+
enables_bolts:
|
|
153
|
+
- bolt-auth-service-2
|
|
154
|
+
requires_units: []
|
|
155
|
+
blocks: false
|
|
156
|
+
|
|
145
157
|
complexity:
|
|
146
158
|
avg_complexity: 2
|
|
147
159
|
avg_uncertainty: 1
|
|
@@ -109,7 +109,7 @@ This bolt type implements Domain-Driven Design (DDD) methodology through five se
|
|
|
109
109
|
---
|
|
110
110
|
stage: model
|
|
111
111
|
bolt: {bolt-id}
|
|
112
|
-
created: {
|
|
112
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
113
113
|
---
|
|
114
114
|
|
|
115
115
|
## Static Model: {unit-name}
|
|
@@ -189,7 +189,7 @@ created: {timestamp}
|
|
|
189
189
|
---
|
|
190
190
|
stage: design
|
|
191
191
|
bolt: {bolt-id}
|
|
192
|
-
created: {
|
|
192
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
193
193
|
---
|
|
194
194
|
|
|
195
195
|
## Technical Design: {unit-name}
|
|
@@ -440,7 +440,7 @@ tests/
|
|
|
440
440
|
---
|
|
441
441
|
stage: test
|
|
442
442
|
bolt: {bolt-id}
|
|
443
|
-
created: {
|
|
443
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
444
444
|
---
|
|
445
445
|
|
|
446
446
|
## Test Report: {unit-name}
|
|
@@ -25,14 +25,14 @@
|
|
|
25
25
|
**Stages MUST be executed in this exact order:**
|
|
26
26
|
|
|
27
27
|
```text
|
|
28
|
-
Stage 1:
|
|
28
|
+
Stage 1: Plan → Stage 2: Implement → Stage 3: Test
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
**Stage Overview:**
|
|
32
32
|
|
|
33
|
-
- ✅/[ ] **1.
|
|
34
|
-
- ✅/[ ] **2. Implement** (Required) → Source code
|
|
35
|
-
- ✅/[ ] **3. Test** (Required) → Tests + `test-
|
|
33
|
+
- ✅/[ ] **1. Plan** (Required) → `implementation-plan.md`
|
|
34
|
+
- ✅/[ ] **2. Implement** (Required) → Source code + `implementation-walkthrough.md`
|
|
35
|
+
- ✅/[ ] **3. Test** (Required) → Tests + `test-walkthrough.md`
|
|
36
36
|
|
|
37
37
|
**Rules**:
|
|
38
38
|
|
|
@@ -84,7 +84,7 @@ This bolt type provides a lightweight construction process for work that doesn't
|
|
|
84
84
|
|
|
85
85
|
## Stages
|
|
86
86
|
|
|
87
|
-
### Stage 1:
|
|
87
|
+
### Stage 1: Plan
|
|
88
88
|
|
|
89
89
|
**Objective**: Define what to build with clear requirements
|
|
90
90
|
|
|
@@ -98,19 +98,19 @@ This bolt type provides a lightweight construction process for work that doesn't
|
|
|
98
98
|
4 - **Define acceptance criteria**: How will we know it's done?
|
|
99
99
|
5 - **Note technical approach**: High-level implementation notes
|
|
100
100
|
|
|
101
|
-
**Artifact**: `
|
|
102
|
-
**Location**: `memory-bank/bolts/{bolt-id}/
|
|
101
|
+
**Artifact**: `implementation-plan.md`
|
|
102
|
+
**Location**: `memory-bank/bolts/{bolt-id}/implementation-plan.md`
|
|
103
103
|
|
|
104
104
|
**Template Structure**:
|
|
105
105
|
|
|
106
106
|
```markdown
|
|
107
107
|
---
|
|
108
|
-
stage:
|
|
108
|
+
stage: plan
|
|
109
109
|
bolt: {bolt-id}
|
|
110
|
-
created: {
|
|
110
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
111
111
|
---
|
|
112
112
|
|
|
113
|
-
##
|
|
113
|
+
## Implementation Plan: {unit-name}
|
|
114
114
|
|
|
115
115
|
### Objective
|
|
116
116
|
{What this bolt will accomplish}
|
|
@@ -137,13 +137,13 @@ created: {timestamp}
|
|
|
137
137
|
- [ ] Dependencies identified
|
|
138
138
|
- [ ] Acceptance criteria documented
|
|
139
139
|
|
|
140
|
-
**⛔ HUMAN Checkpoint**: Present
|
|
140
|
+
**⛔ HUMAN Checkpoint**: Present plan summary and **STOP**. Wait for user to confirm before proceeding to Stage 2.
|
|
141
141
|
|
|
142
142
|
---
|
|
143
143
|
|
|
144
144
|
### Stage 2: Implement
|
|
145
145
|
|
|
146
|
-
**Objective**: Write the code
|
|
146
|
+
**Objective**: Write the code and document what was done
|
|
147
147
|
|
|
148
148
|
**Duration**: Hours (varies by complexity)
|
|
149
149
|
|
|
@@ -154,16 +154,84 @@ created: {timestamp}
|
|
|
154
154
|
3 - **Handle edge cases**: Error handling, validation
|
|
155
155
|
4 - **Add documentation**: Code comments, JSDoc/docstrings
|
|
156
156
|
5 - **Run linting**: Ensure code style compliance
|
|
157
|
+
6 - **Document implementation**: Create implementation walkthrough
|
|
157
158
|
|
|
158
|
-
**
|
|
159
|
-
|
|
159
|
+
**Artifacts**:
|
|
160
|
+
|
|
161
|
+
- Source code - As defined in project structure (e.g., `src/`, `app/`, `pages/`)
|
|
162
|
+
- `implementation-walkthrough.md` - `memory-bank/bolts/{bolt-id}/implementation-walkthrough.md`
|
|
163
|
+
|
|
164
|
+
**Implementation Walkthrough Guidelines**:
|
|
165
|
+
|
|
166
|
+
⚠️ **CRITICAL RULES**:
|
|
167
|
+
|
|
168
|
+
- **NO CODE** in this document - only structure summaries and descriptions
|
|
169
|
+
- **USE CHECKMARKS** for all file entries (completed work)
|
|
170
|
+
- **BE CONSISTENT** - follow the template exactly
|
|
171
|
+
|
|
172
|
+
**Template**:
|
|
173
|
+
|
|
174
|
+
```markdown
|
|
175
|
+
---
|
|
176
|
+
stage: implement
|
|
177
|
+
bolt: {bolt-id}
|
|
178
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
## Implementation Walkthrough: {unit-name}
|
|
182
|
+
|
|
183
|
+
### Summary
|
|
184
|
+
|
|
185
|
+
{2-3 sentence overview of what was built - NO CODE}
|
|
186
|
+
|
|
187
|
+
### Structure Overview
|
|
188
|
+
|
|
189
|
+
{High-level description of the architecture/organization - NO CODE}
|
|
190
|
+
|
|
191
|
+
### Completed Work
|
|
192
|
+
|
|
193
|
+
- [x] `{path/to/file}` - {what this file does, not how}
|
|
194
|
+
- [x] `{path/to/file}` - {what this file does, not how}
|
|
195
|
+
- [x] `{path/to/file}` - {what this file does, not how}
|
|
196
|
+
|
|
197
|
+
### Key Decisions
|
|
198
|
+
|
|
199
|
+
- **{Decision}**: {Why this approach was chosen}
|
|
200
|
+
|
|
201
|
+
### Deviations from Plan
|
|
202
|
+
|
|
203
|
+
{Any changes from implementation-plan.md and why, or "None"}
|
|
204
|
+
|
|
205
|
+
### Dependencies Added
|
|
206
|
+
|
|
207
|
+
- [x] `{package}` - {why needed}
|
|
208
|
+
|
|
209
|
+
### Developer Notes
|
|
210
|
+
|
|
211
|
+
{Gotchas, tips, or context for future work - keep brief}
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
**What to Include**:
|
|
215
|
+
|
|
216
|
+
- ✅ File paths with brief purpose descriptions
|
|
217
|
+
- ✅ Architectural decisions and rationale
|
|
218
|
+
- ✅ Deviations from original plan
|
|
219
|
+
- ✅ High-level structure explanations
|
|
220
|
+
|
|
221
|
+
**What NOT to Include**:
|
|
222
|
+
|
|
223
|
+
- ❌ Code snippets or examples
|
|
224
|
+
- ❌ Implementation details (how it works internally)
|
|
225
|
+
- ❌ Line-by-line explanations
|
|
226
|
+
- ❌ API signatures or type definitions
|
|
160
227
|
|
|
161
228
|
**Completion Criteria**:
|
|
162
229
|
|
|
163
|
-
- [ ] All deliverables from
|
|
230
|
+
- [ ] All deliverables from plan implemented
|
|
164
231
|
- [ ] Code follows project coding standards
|
|
165
232
|
- [ ] Linting passes
|
|
166
233
|
- [ ] Code is documented
|
|
234
|
+
- [ ] Implementation walkthrough created
|
|
167
235
|
|
|
168
236
|
**⛔ HUMAN Checkpoint**: Present implementation summary and **STOP**. Wait for user to confirm before proceeding to Stage 3.
|
|
169
237
|
|
|
@@ -180,11 +248,11 @@ created: {timestamp}
|
|
|
180
248
|
1 - **Write unit tests**: Test individual functions/components
|
|
181
249
|
2 - **Write integration tests**: Test API endpoints or component interactions
|
|
182
250
|
3 - **Run test suite**: Execute all tests
|
|
183
|
-
4 - **Verify acceptance criteria**: Check against
|
|
251
|
+
4 - **Verify acceptance criteria**: Check against plan
|
|
184
252
|
5 - **Document results**: Create test report
|
|
185
253
|
|
|
186
|
-
**Artifact**: `test-
|
|
187
|
-
**Location**: `memory-bank/bolts/{bolt-id}/test-
|
|
254
|
+
**Artifact**: `test-walkthrough.md`
|
|
255
|
+
**Location**: `memory-bank/bolts/{bolt-id}/test-walkthrough.md`
|
|
188
256
|
|
|
189
257
|
**Template Structure**:
|
|
190
258
|
|
|
@@ -192,7 +260,7 @@ created: {timestamp}
|
|
|
192
260
|
---
|
|
193
261
|
stage: test
|
|
194
262
|
bolt: {bolt-id}
|
|
195
|
-
created: {
|
|
263
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
196
264
|
---
|
|
197
265
|
|
|
198
266
|
## Test Report: {unit-name}
|
|
@@ -231,9 +299,9 @@ Bolt instance tracks progress:
|
|
|
231
299
|
---
|
|
232
300
|
current_stage: implement
|
|
233
301
|
stages_completed:
|
|
234
|
-
- name:
|
|
302
|
+
- name: plan
|
|
235
303
|
completed: 2024-12-05T10:00:00Z
|
|
236
|
-
artifact:
|
|
304
|
+
artifact: implementation-plan.md
|
|
237
305
|
status: in-progress
|
|
238
306
|
---
|
|
239
307
|
```
|
|
@@ -249,9 +317,10 @@ For Stage 2 (Implement) and Stage 3 (Test), load all artifacts from the bolt fol
|
|
|
249
317
|
**Load all files in this folder**, which may include:
|
|
250
318
|
|
|
251
319
|
- `bolt.md` - Bolt instance metadata
|
|
252
|
-
- `
|
|
320
|
+
- `implementation-plan.md` - Plan from Stage 1
|
|
321
|
+
- `implementation-walkthrough.md` - Developer notes from Stage 2 (if exists)
|
|
253
322
|
|
|
254
|
-
This ensures
|
|
323
|
+
This ensures later stages have full context from earlier work.
|
|
255
324
|
|
|
256
325
|
---
|
|
257
326
|
|
|
@@ -80,7 +80,7 @@ This bolt type is for research and proof-of-concept work when there are unknowns
|
|
|
80
80
|
---
|
|
81
81
|
stage: explore
|
|
82
82
|
bolt: {bolt-id}
|
|
83
|
-
created: {
|
|
83
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
84
84
|
time_box: {hours}
|
|
85
85
|
---
|
|
86
86
|
|
|
@@ -142,7 +142,7 @@ time_box: {hours}
|
|
|
142
142
|
---
|
|
143
143
|
stage: document
|
|
144
144
|
bolt: {bolt-id}
|
|
145
|
-
created: {
|
|
145
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
146
146
|
---
|
|
147
147
|
|
|
148
148
|
## Spike Report: {topic}
|
|
@@ -16,8 +16,8 @@ Use this template to track construction progress and replanning decisions for a
|
|
|
16
16
|
---
|
|
17
17
|
unit: {unit-name}
|
|
18
18
|
intent: {intent-name}
|
|
19
|
-
created: {YYYY-MM-
|
|
20
|
-
last_updated: {YYYY-MM-
|
|
19
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
20
|
+
last_updated: {YYYY-MM-DDTHH:MM:SSZ}
|
|
21
21
|
---
|
|
22
22
|
|
|
23
23
|
# Construction Log: {unit-name}
|
|
@@ -15,8 +15,8 @@ Use this template to track inception progress and decisions for an intent.
|
|
|
15
15
|
```markdown
|
|
16
16
|
---
|
|
17
17
|
intent: {intent-name}
|
|
18
|
-
created: {YYYY-MM-
|
|
19
|
-
completed: {YYYY-MM-
|
|
18
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
19
|
+
completed: {YYYY-MM-DDTHH:MM:SSZ or null}
|
|
20
20
|
status: {in-progress | complete}
|
|
21
21
|
---
|
|
22
22
|
|
|
@@ -11,8 +11,8 @@ Use this template when documenting requirements for an intent.
|
|
|
11
11
|
intent: {intent-name}
|
|
12
12
|
phase: inception
|
|
13
13
|
status: draft|in-progress|complete
|
|
14
|
-
created: {YYYY-MM-
|
|
15
|
-
updated: {YYYY-MM-
|
|
14
|
+
created: {YYYY-MM-DDTHH:MM:SSZ}
|
|
15
|
+
updated: {YYYY-MM-DDTHH:MM:SSZ}
|
|
16
16
|
---
|
|
17
17
|
```
|
|
18
18
|
|