specsmd 0.0.31 → 0.0.33

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.
@@ -98,14 +98,22 @@ Switch to the Construction Agent to execute:
98
98
  /specsmd-construction-agent bolt-start
99
99
  ```
100
100
 
101
- Each bolt goes through stages (DDD bolt example):
101
+ Each bolt type has its own stages:
102
102
 
103
- 1. **Domain Model** - Model the business logic
103
+ **DDD Construction Bolt** (for complex business logic):
104
+
105
+ 1. **Domain Model** - Model the business domain
104
106
  2. **Technical Design** - Define interfaces and architecture
105
107
  3. **ADR Analysis** - Document significant decisions (optional)
106
108
  4. **Implement** - Write production code
107
109
  5. **Test** - Verify correctness
108
110
 
111
+ **Simple Construction Bolt** (for UI, integrations, utilities):
112
+
113
+ 1. **Spec** - Define what to build
114
+ 2. **Implement** - Write the code
115
+ 3. **Test** - Verify it works
116
+
109
117
  Human validation happens at each stage.
110
118
 
111
119
  ### Step 5: Deploy
@@ -136,7 +136,7 @@ When user selects an option:
136
136
 
137
137
  - [ ] `bolt-auth-1` (auth-service, DDD) - planned
138
138
  - [ ] `bolt-auth-2` (auth-service, DDD) - planned
139
- - [ ] `bolt-api-1` (api-gateway, BDD) - planned
139
+ - [ ] `bolt-api-1` (api-gateway, Simple) - planned
140
140
 
141
141
  ### Quick Actions
142
142
 
@@ -58,7 +58,7 @@ AI-DLC is a reimagined development methodology where AI drives the workflow and
58
58
  - **Unit**: Independently deployable component (like a bounded context)
59
59
  - **Story**: User story with acceptance criteria
60
60
  - **Bolt**: Time-boxed execution session (hours/days, not weeks)
61
- - **Bolt Type**: Methodology template (DDD, BDD, TDD)
61
+ - **Bolt Type**: Methodology template (DDD or Simple)
62
62
 
63
63
  ### Core Principles
64
64
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specsmd",
3
- "version": "0.0.31",
3
+ "version": "0.0.33",
4
4
  "description": "Multi-agent orchestration system for AI-native software development. Delivers AI-DLC, Agile, and custom SDLC flows as markdown-based agent systems.",
5
5
  "main": "lib/installer.js",
6
6
  "bin": {
@@ -1,250 +0,0 @@
1
- # Bolt Type: BDD Construction
2
-
3
- ## Mandatory Output Rules (READ FIRST)
4
-
5
- - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
6
- - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
7
- - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
8
-
9
- ## Success Metrics
10
-
11
- - ✅ Activities presented as numbered lists (not tables)
12
- - ✅ Stage progress shown with status indicators
13
- - ✅ Human checkpoints clearly marked
14
-
15
- ## Failure Modes
16
-
17
- - ❌ Using ASCII table for activities
18
- - ❌ Auto-advancing without human confirmation
19
- - ❌ Skipping stages
20
-
21
- ---
22
-
23
- ## Metadata
24
-
25
- ```yaml
26
- bolt_type: bdd-construction-bolt
27
- name: BDD Construction Bolt
28
- description: Behavior-Driven Development with specification, implementation, and testing
29
- version: 1.0.0
30
- suitable_for:
31
- - Feature-focused development
32
- - User story implementation
33
- - Scenarios with clear Given-When-Then flows
34
- stages_count: 3
35
- ```
36
-
37
- ---
38
-
39
- ## Overview
40
-
41
- This bolt type implements Behavior-Driven Development (BDD) methodology through three stages focused on specifications, implementation, and acceptance testing.
42
-
43
- **Best For**:
44
-
45
- - Feature-driven development
46
- - User-facing functionality
47
- - Clear user stories with acceptance criteria
48
- - Scenarios that can be expressed in Given-When-Then format
49
-
50
- ---
51
-
52
- ## Stages
53
-
54
- ### Stage 1: specify
55
-
56
- **Objective**: Define behavior specifications in Gherkin format
57
-
58
- **Duration**: Hours (typically 1-2 hours)
59
-
60
- **Activities**:
61
-
62
- 1 - **Review user stories**: Analyze stories and acceptance criteria
63
- 2 - **Write feature files**: Create Gherkin specifications
64
- 3 - **Define happy paths**: Document expected successful flows
65
- 4 - **Define edge cases**: Document boundary conditions
66
- 5 - **Define error scenarios**: Document error handling behaviors
67
- 6 - **Review with stakeholders**: Validate specifications
68
-
69
- **Artifact**: `specifications.md` and `.feature` files
70
- **Location**: Path defined by `schema.units` in `.specsmd/aidlc/memory-bank.yaml`
71
- *(Default: `{intents-path}/{intent}/units/{unit}/specifications.md`)*
72
-
73
- **Template Structure**:
74
-
75
- ```markdown
76
- ---
77
- stage: specify
78
- bolt: {bolt-id}
79
- created: {timestamp}
80
- ---
81
-
82
- ## Behavior Specifications: {unit-name}
83
-
84
- ### Feature Overview
85
- {Feature description}
86
-
87
- ### Scenarios
88
-
89
- #### Scenario 1: {Happy Path}
90
- ​```gherkin
91
- Given {precondition}
92
- When {action}
93
- Then {expected outcome}
94
- ​```
95
-
96
- #### Scenario 2: {Edge Case}
97
-
98
- ​```gherkin
99
- Given {precondition}
100
- When {action}
101
- Then {expected outcome}
102
- ​```
103
-
104
- ### Background
105
-
106
- {Shared context for all scenarios}
107
-
108
- ### Data Examples
109
-
110
- - **{Field}**: Valid: {examples} - Invalid: {examples}
111
-
112
- ```
113
-
114
- **Completion Criteria**:
115
-
116
- - [ ] All user stories have scenarios
117
- - [ ] Happy paths covered
118
- - [ ] Edge cases covered
119
- - [ ] Error handling scenarios defined
120
- - [ ] Scenarios reviewed and approved
121
-
122
- **⛔ HUMAN Checkpoint**: Present specification summary and **STOP**. Wait for user to confirm before proceeding to Stage 2.
123
-
124
- ---
125
-
126
- ### Stage 2: implement
127
-
128
- **Objective**: Implement the specified behaviors
129
-
130
- **Duration**: Hours to days (varies by complexity)
131
-
132
- **Activities**:
133
-
134
- 1 - **Setup step definitions**: Create test framework structure
135
- 2 - **Implement Given steps**: Build context setup code
136
- 3 - **Implement When steps**: Build action code
137
- 4 - **Implement Then steps**: Build assertion code
138
- 5 - **Implement production code**: Build feature implementation
139
- 6 - **Wire specs to implementation**: Connect tests to code
140
-
141
- **Artifact**: Source code
142
- **Location**: `src/{unit}/`
143
-
144
- **Project Structure**:
145
-
146
- ```text
147
-
148
- src/{unit}/
149
- ├── features/
150
- │ └── *.feature # Gherkin specs
151
- ├── steps/
152
- │ └──*_steps.{ext} # Step definitions
153
- ├── src/
154
- │ └── ... # Production code
155
- └── support/
156
- └── ... # Test utilities
157
-
158
- ```
159
-
160
- **Completion Criteria**:
161
-
162
- - [ ] All step definitions implemented
163
- - [ ] Production code implements features
164
- - [ ] All scenarios executable
165
- - [ ] Code follows standards
166
-
167
- **⛔ HUMAN Checkpoint**: Present implementation summary and **STOP**. Wait for user to confirm before proceeding to Stage 3.
168
-
169
- ---
170
-
171
- ### Stage 3: validate
172
-
173
- **Objective**: Run acceptance tests and verify behaviors
174
-
175
- **Duration**: Hours (typically 1-2 hours)
176
-
177
- **Activities**:
178
-
179
- 1 - **Run all feature tests**: Execute test suite
180
- 2 - **Fix any failing scenarios**: Address issues
181
- 3 - **Generate living documentation**: Create doc report
182
- 4 - **Verify acceptance criteria**: Validate against stories
183
- 5 - **Stakeholder sign-off**: Get approval
184
-
185
- **Artifact**: `acceptance-report.md`
186
- **Location**: Path defined by `schema.units` in `.specsmd/aidlc/memory-bank.yaml`
187
- *(Default: `{intents-path}/{intent}/units/{unit}/acceptance-report.md`)*
188
-
189
- **Template Structure**:
190
-
191
- ```markdown
192
- ---
193
- stage: validate
194
- bolt: {bolt-id}
195
- created: {timestamp}
196
- ---
197
-
198
- ## Acceptance Report: {unit-name}
199
-
200
- ### Test Results
201
-
202
- - **{Feature}**: {scenarios} scenarios - {passed} passed, {failed} failed
203
-
204
- ### Acceptance Criteria Status
205
-
206
- - ✅/❌ **{Story}**: {Criteria} - Scenario: {name} - {Status}
207
-
208
- ### Living Documentation
209
- {Link to generated docs}
210
-
211
- ### Sign-off
212
- - [ ] Developer verified
213
- - [ ] Stakeholder approved
214
- ```
215
-
216
- **Completion Criteria**:
217
-
218
- - [ ] All scenarios passing
219
- - [ ] Acceptance criteria met
220
- - [ ] Living documentation generated
221
- - [ ] Stakeholder sign-off received
222
-
223
- **⛔ HUMAN Checkpoint**: Present acceptance report and **STOP**. Wait for user to confirm bolt completion.
224
-
225
- ---
226
-
227
- ## Stage Execution
228
-
229
- ### Sequence
230
-
231
- ```text
232
- specify → implement → validate
233
- ```
234
-
235
- ### State Tracking
236
-
237
- ```yaml
238
- ---
239
- current_stage: implement
240
- stages_completed:
241
- - name: specify
242
- completed: 2024-12-05T10:00:00Z
243
- artifact: specifications.md
244
- status: in-progress
245
- ---
246
- ```
247
-
248
- ### Human Validation
249
-
250
- Specifications require stakeholder review before implementation.
@@ -1,259 +0,0 @@
1
- # Bolt Type: TDD Construction
2
-
3
- ## Mandatory Output Rules (READ FIRST)
4
-
5
- - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
6
- - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
7
- - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
8
-
9
- ## Success Metrics
10
-
11
- - ✅ Activities presented as numbered lists (not tables)
12
- - ✅ Stage progress shown with status indicators
13
- - ✅ Human checkpoints clearly marked
14
-
15
- ## Failure Modes
16
-
17
- - ❌ Using ASCII table for activities
18
- - ❌ Auto-advancing without human confirmation
19
- - ❌ Skipping stages
20
-
21
- ---
22
-
23
- ## Metadata
24
-
25
- ```yaml
26
- bolt_type: tdd-construction-bolt
27
- name: TDD Construction Bolt
28
- description: Test-Driven Development with red-green-refactor cycle
29
- version: 1.0.0
30
- suitable_for:
31
- - Algorithm implementation
32
- - Utility functions
33
- - Pure logic without external dependencies
34
- - Libraries and reusable components
35
- stages_count: 3
36
- ```
37
-
38
- ---
39
-
40
- ## Overview
41
-
42
- This bolt type implements Test-Driven Development (TDD) methodology through the classic red-green-refactor cycle: write failing tests, make them pass, then refactor.
43
-
44
- **Best For**:
45
-
46
- - Algorithm and logic implementation
47
- - Utility functions and helpers
48
- - Pure functions without side effects
49
- - Libraries and SDKs
50
- - Components with clear inputs/outputs
51
-
52
- ---
53
-
54
- ## Stages
55
-
56
- ### Stage 1: test-first
57
-
58
- **Objective**: Write failing tests that specify expected behavior
59
-
60
- **Duration**: Hours (typically 1-3 hours)
61
-
62
- **Activities**:
63
-
64
- 1 - **Analyze requirements**: Identify test cases and edge cases
65
- 2 - **Write unit tests**: Create tests for core functionality (failing)
66
- 3 - **Write edge case tests**: Cover boundary conditions
67
- 4 - **Write error tests**: Cover error conditions
68
- 5 - **Run tests**: Confirm they fail (RED state)
69
-
70
- **Artifact**: `test-spec.md` and test files
71
- **Location**: Path defined by `schema.units` in `.specsmd/aidlc/memory-bank.yaml`
72
- *(Default: `{intents-path}/{intent}/units/{unit}/test-spec.md`)*
73
-
74
- **Template Structure**:
75
-
76
- ```markdown
77
- ---
78
- stage: test-first
79
- bolt: {bolt-id}
80
- created: {timestamp}
81
- ---
82
-
83
- ## Test Specification: {unit-name}
84
-
85
- ### Test Cases
86
-
87
- #### Core Functionality
88
-
89
- - **{Test name}**: Input: {input} → Expected: {output}
90
- - **{Test name}**: Input: {input} → Expected: {output}
91
-
92
- #### Edge Cases
93
-
94
- - **{Test name}**: Input: {input} → Expected: {output}
95
-
96
- #### Error Conditions
97
-
98
- - **{Test name}**: Input: {input} → Expected Error: {error}
99
-
100
- ### Test Run (RED)
101
- - Total tests: {n}
102
- - Passing: 0
103
- - Failing: {n}
104
-
105
- Status: 🔴 RED (all tests failing as expected)
106
- ```
107
-
108
- **Completion Criteria**:
109
-
110
- - [ ] All functionality has tests
111
- - [ ] Edge cases covered
112
- - [ ] Error cases covered
113
- - [ ] All tests compile/parse
114
- - [ ] All tests fail (RED state)
115
-
116
- **⛔ HUMAN Checkpoint**: Present test specification and **STOP**. Wait for user to confirm before proceeding to Stage 2.
117
-
118
- ---
119
-
120
- ### Stage 2: implement
121
-
122
- **Objective**: Write minimal code to make tests pass
123
-
124
- **Duration**: Hours (varies by complexity)
125
-
126
- **Activities**:
127
-
128
- 1 - **Implement first test**: Write simplest code that passes
129
- 2 - **Iterate through tests**: Make each test pass in turn
130
- 3 - **Run full suite**: Confirm all tests pass
131
- 4 - **Review implementation**: Check for issues
132
-
133
- **Artifact**: Source code
134
- **Location**: `src/{unit}/`
135
-
136
- **Approach**:
137
-
138
- ```text
139
- for each failing test:
140
- 1. Write simplest code that passes the test
141
- 2. Run tests
142
- 3. Commit if green
143
- 4. Move to next test
144
- ```
145
-
146
- **Completion Criteria**:
147
-
148
- - [ ] All tests passing (GREEN state)
149
- - [ ] Implementation is minimal
150
- - [ ] No over-engineering
151
- - [ ] All acceptance criteria met
152
-
153
- **⛔ HUMAN Checkpoint**: Present implementation summary and **STOP**. Wait for user to confirm before proceeding to Stage 3.
154
-
155
- ---
156
-
157
- ### Stage 3: refactor
158
-
159
- **Objective**: Improve code quality while keeping tests green
160
-
161
- **Duration**: Hours (typically 1-2 hours)
162
-
163
- **Activities**:
164
-
165
- 1 - **Review code**: Identify improvement opportunities
166
- 2 - **Remove duplication**: Apply DRY principle
167
- 3 - **Improve naming**: Make names clear and descriptive
168
- 4 - **Extract functions**: Create clean, focused functions
169
- 5 - **Optimize if needed**: Improve performance where necessary
170
- 6 - **Run tests after each change**: Maintain green state
171
-
172
- **Artifact**: `refactor-report.md`
173
- **Location**: Path defined by `schema.units` in `.specsmd/aidlc/memory-bank.yaml`
174
- *(Default: `{intents-path}/{intent}/units/{unit}/refactor-report.md`)*
175
-
176
- **Template Structure**:
177
-
178
- ```markdown
179
- ---
180
- stage: refactor
181
- bolt: {bolt-id}
182
- created: {timestamp}
183
- ---
184
-
185
- ## Refactor Report: {unit-name}
186
-
187
- ### Improvements Made
188
-
189
- - **{Change}**: Before: {old} → After: {new} - Reason: {why}
190
-
191
- ### Code Quality Metrics
192
-
193
- - **Cyclomatic Complexity**: Before: {n} → After: {n}
194
- - **Lines of Code**: Before: {n} → After: {n}
195
- - **Test Coverage**: Before: {n}% → After: {n}%
196
-
197
- ### Test Status
198
- - All tests: ✅ PASSING
199
- - Coverage: {n}%
200
-
201
- ### Final State
202
- Status: 🟢 GREEN (refactored and tested)
203
- ```
204
-
205
- **Completion Criteria**:
206
-
207
- - [ ] All tests still passing
208
- - [ ] Code is clean and readable
209
- - [ ] No duplication
210
- - [ ] Functions are small and focused
211
- - [ ] Naming is clear
212
-
213
- **⛔ HUMAN Checkpoint**: Present refactor report and **STOP**. Wait for user to confirm bolt completion.
214
-
215
- ---
216
-
217
- ## Stage Execution
218
-
219
- ### Sequence
220
-
221
- ```text
222
- test-first (RED) → implement (GREEN) → refactor (REFACTOR)
223
- ```
224
-
225
- ### The TDD Cycle
226
-
227
- ```text
228
- ┌──────────┐
229
- │ RED │ Write failing test
230
- └────┬─────┘
231
-
232
-
233
- ┌──────────┐
234
- │ GREEN │ Make it pass
235
- └────┬─────┘
236
-
237
-
238
- ┌──────────┐
239
- │ REFACTOR │ Improve code
240
- └────┬─────┘
241
-
242
- └──────► Next test case
243
- ```
244
-
245
- ### State Tracking
246
-
247
- ```yaml
248
- ---
249
- current_stage: refactor
250
- stages_completed:
251
- - name: test-first
252
- completed: 2024-12-05T10:00:00Z
253
- tests_written: 15
254
- - name: implement
255
- completed: 2024-12-05T12:00:00Z
256
- tests_passing: 15
257
- status: in-progress
258
- ---
259
- ```