specsmd 0.0.0-dev.52 → 0.0.0-dev.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (19) hide show
  1. package/flows/fire/agents/builder/agent.md +12 -2
  2. package/flows/fire/agents/builder/skills/run-execute/SKILL.md +28 -3
  3. package/flows/fire/agents/builder/skills/run-execute/templates/plan.md.hbs +61 -0
  4. package/flows/fire/agents/builder/skills/run-execute/templates/test-report.md.hbs +81 -0
  5. package/flows/fire/agents/builder/skills/walkthrough-generate/SKILL.md +1 -1
  6. package/flows/fire/agents/builder/skills/walkthrough-generate/templates/walkthrough.md.hbs +77 -0
  7. package/flows/fire/agents/orchestrator/skills/project-init/SKILL.md +15 -6
  8. package/flows/fire/agents/orchestrator/skills/project-init/templates/coding-standards.md.hbs +149 -0
  9. package/flows/fire/agents/orchestrator/skills/project-init/templates/system-architecture.md.hbs +101 -0
  10. package/flows/fire/agents/orchestrator/skills/project-init/templates/tech-stack.md.hbs +136 -0
  11. package/flows/fire/agents/orchestrator/skills/project-init/templates/testing-standards.md.hbs +94 -0
  12. package/flows/fire/agents/planner/skills/design-doc-generate/SKILL.md +2 -1
  13. package/flows/fire/agents/planner/skills/design-doc-generate/templates/design.md.hbs +76 -0
  14. package/flows/fire/agents/planner/skills/intent-capture/SKILL.md +1 -1
  15. package/flows/fire/agents/planner/skills/intent-capture/templates/brief.md.hbs +40 -0
  16. package/flows/fire/agents/planner/skills/work-item-decompose/SKILL.md +2 -1
  17. package/flows/fire/agents/planner/skills/work-item-decompose/templates/work-item.md.hbs +40 -0
  18. package/flows/fire/memory-bank.yaml +11 -3
  19. package/package.json +1 -1
@@ -153,14 +153,24 @@ Each run creates a folder with its artifacts:
153
153
 
154
154
  ```
155
155
  .specs-fire/runs/{run-id}/
156
+ ├── plan.md # Approved implementation plan (confirm/validate modes)
156
157
  ├── run.md # Run log (metadata, files changed, decisions)
158
+ ├── test-report.md # Test results, coverage, and acceptance validation
157
159
  └── walkthrough.md # Implementation walkthrough (for human review)
158
160
  ```
159
161
 
162
+ **The quartet**:
163
+ - **plan.md** — What we intended to do (approved at checkpoint)
164
+ - **run.md** — What happened during execution
165
+ - **test-report.md** — Test results and acceptance criteria validation
166
+ - **walkthrough.md** — Human-readable summary after completion
167
+
160
168
  | Artifact | Location | Template |
161
169
  |----------|----------|----------|
162
- | Run Log | `.specs-fire/runs/{run-id}/run.md` | `templates/runs/run.md.hbs` |
163
- | Walkthrough | `.specs-fire/runs/{run-id}/walkthrough.md` | `templates/runs/walkthrough.md.hbs` |
170
+ | Plan | `.specs-fire/runs/{run-id}/plan.md` | `skills/run-execute/templates/plan.md.hbs` |
171
+ | Run Log | `.specs-fire/runs/{run-id}/run.md` | (generated by script) |
172
+ | Test Report | `.specs-fire/runs/{run-id}/test-report.md` | `skills/run-execute/templates/test-report.md.hbs` |
173
+ | Walkthrough | `.specs-fire/runs/{run-id}/walkthrough.md` | `skills/walkthrough-generate/templates/walkthrough.md.hbs` |
164
174
 
165
175
  ---
166
176
 
@@ -66,7 +66,11 @@ Before executing scripts, ensure required dependencies are installed:
66
66
  <step n="2" title="Load Context">
67
67
  <action>Read work item from .specs-fire/intents/{intent}/work-items/{id}.md</action>
68
68
  <action>Read intent brief for broader context</action>
69
- <action>Read project standards (.specs-fire/standards/)</action>
69
+ <action>Load ALL project standards:</action>
70
+ <substep>.specs-fire/standards/tech-stack.md — Technology choices</substep>
71
+ <substep>.specs-fire/standards/coding-standards.md — Code style and patterns</substep>
72
+ <substep>.specs-fire/standards/testing-standards.md — Testing strategy and coverage</substep>
73
+ <substep>.specs-fire/standards/system-architecture.md — Architecture context and constraints</substep>
70
74
  <action>Determine execution mode from work item</action>
71
75
  </step>
72
76
 
@@ -105,6 +109,10 @@ Before executing scripts, ensure required dependencies are installed:
105
109
  <action>Adjust plan</action>
106
110
  <goto step="3b"/>
107
111
  </check>
112
+ <check if="response == y">
113
+ <action>Save approved plan using template: templates/plan.md.hbs</action>
114
+ <action>Write to: .specs-fire/runs/{run-id}/plan.md</action>
115
+ </check>
108
116
  <goto step="5"/>
109
117
  </step>
110
118
 
@@ -136,6 +144,11 @@ Before executing scripts, ensure required dependencies are installed:
136
144
  <action>Adjust plan</action>
137
145
  <goto step="3c"/>
138
146
  </check>
147
+ <check if="response == y">
148
+ <action>Save approved plan using template: templates/plan.md.hbs</action>
149
+ <action>Write to: .specs-fire/runs/{run-id}/plan.md</action>
150
+ <action>Include reference to design doc in plan</action>
151
+ </check>
139
152
  <goto step="5"/>
140
153
  </step>
141
154
 
@@ -154,6 +167,12 @@ Before executing scripts, ensure required dependencies are installed:
154
167
  </step>
155
168
 
156
169
  <step n="6" title="Run Tests">
170
+ <action>Load testing standards from .specs-fire/standards/testing-standards.md</action>
171
+ <action>Write tests following testing standards:</action>
172
+ <substep>Unit tests for new/modified functions</substep>
173
+ <substep>Integration tests for API endpoints or workflows</substep>
174
+ <substep>Follow test naming and structure conventions</substep>
175
+
157
176
  <action>Run test suite</action>
158
177
  <check if="tests fail">
159
178
  <output>
@@ -162,7 +181,11 @@ Before executing scripts, ensure required dependencies are installed:
162
181
  <action>Fix failing tests</action>
163
182
  <action>Re-run tests</action>
164
183
  </check>
165
- <action>Record test results and coverage</action>
184
+
185
+ <action>Validate acceptance criteria from work item</action>
186
+ <action>Measure coverage against target from testing-standards.md</action>
187
+ <action>Generate test report using template: templates/test-report.md.hbs</action>
188
+ <action>Save to: .specs-fire/runs/{run-id}/test-report.md</action>
166
189
  </step>
167
190
 
168
191
  <step n="7" title="Complete Run">
@@ -184,7 +207,9 @@ Before executing scripts, ensure required dependencies are installed:
184
207
  Tests added: {count}
185
208
  Coverage: {percentage}%
186
209
 
187
- Walkthrough: .specs-fire/runs/{run-id}/walkthrough.md
210
+ Artifacts:
211
+ - Test Report: .specs-fire/runs/{run-id}/test-report.md
212
+ - Walkthrough: .specs-fire/runs/{run-id}/walkthrough.md
188
213
 
189
214
  Continue to next work item? [Y/n]
190
215
  </output>
@@ -0,0 +1,61 @@
1
+ ---
2
+ run: {{run_id}}
3
+ work_item: {{work_item_id}}
4
+ intent: {{intent_id}}
5
+ mode: {{mode}}
6
+ checkpoint: {{checkpoint_type}}
7
+ approved_at: {{approved_at}}
8
+ ---
9
+
10
+ # Implementation Plan: {{title}}
11
+
12
+ ## Approach
13
+
14
+ {{approach}}
15
+
16
+ ## Files to Create
17
+
18
+ | File | Purpose |
19
+ |------|---------|
20
+ {{#each files_to_create}}
21
+ | `{{this.path}}` | {{this.purpose}} |
22
+ {{/each}}
23
+ {{#unless files_to_create}}
24
+ | (none) | |
25
+ {{/unless}}
26
+
27
+ ## Files to Modify
28
+
29
+ | File | Changes |
30
+ |------|---------|
31
+ {{#each files_to_modify}}
32
+ | `{{this.path}}` | {{this.changes}} |
33
+ {{/each}}
34
+ {{#unless files_to_modify}}
35
+ | (none) | |
36
+ {{/unless}}
37
+
38
+ {{#if tests}}
39
+ ## Tests
40
+
41
+ | Test File | Coverage |
42
+ |-----------|----------|
43
+ {{#each tests}}
44
+ | `{{this.path}}` | {{this.coverage}} |
45
+ {{/each}}
46
+ {{/if}}
47
+
48
+ {{#if technical_details}}
49
+ ## Technical Details
50
+
51
+ {{technical_details}}
52
+ {{/if}}
53
+
54
+ {{#if design_doc}}
55
+ ## Based on Design Doc
56
+
57
+ Reference: `{{design_doc}}`
58
+ {{/if}}
59
+
60
+ ---
61
+ *Plan approved at checkpoint. Execution follows.*
@@ -0,0 +1,81 @@
1
+ ---
2
+ run: {{run_id}}
3
+ work_item: {{work_item_id}}
4
+ intent: {{intent_id}}
5
+ generated: {{generated_at}}
6
+ status: {{status}}
7
+ ---
8
+
9
+ # Test Report: {{title}}
10
+
11
+ ## Summary
12
+
13
+ | Category | Passed | Failed | Skipped | Coverage |
14
+ |----------|--------|--------|---------|----------|
15
+ | Unit | {{unit_passed}} | {{unit_failed}} | {{unit_skipped}} | {{unit_coverage}}% |
16
+ | Integration | {{integration_passed}} | {{integration_failed}} | {{integration_skipped}} | {{integration_coverage}}% |
17
+ | **Total** | {{total_passed}} | {{total_failed}} | {{total_skipped}} | {{total_coverage}}% |
18
+
19
+ ## Acceptance Criteria Validation
20
+
21
+ {{#each acceptance_criteria}}
22
+ - {{#if this.passed}}✅{{else}}❌{{/if}} **{{this.criterion}}** — {{this.status}}
23
+ {{/each}}
24
+
25
+ ## Tests Written
26
+
27
+ ### Unit Tests
28
+
29
+ {{#each unit_tests}}
30
+ - `{{this.file}}` — {{this.description}}
31
+ {{/each}}
32
+
33
+ ### Integration Tests
34
+
35
+ {{#each integration_tests}}
36
+ - `{{this.file}}` — {{this.description}}
37
+ {{/each}}
38
+
39
+ ## Test Commands
40
+
41
+ ```bash
42
+ # Run all tests
43
+ {{test_command}}
44
+
45
+ # Run with coverage
46
+ {{coverage_command}}
47
+ ```
48
+
49
+ ## Coverage Details
50
+
51
+ {{#if coverage_details}}
52
+ | Module | Statements | Branches | Functions | Lines |
53
+ |--------|------------|----------|-----------|-------|
54
+ {{#each coverage_details}}
55
+ | `{{this.module}}` | {{this.statements}}% | {{this.branches}}% | {{this.functions}}% | {{this.lines}}% |
56
+ {{/each}}
57
+ {{else}}
58
+ Coverage details not available.
59
+ {{/if}}
60
+
61
+ ## Issues Found
62
+
63
+ {{#if issues}}
64
+ | Issue | Severity | Status |
65
+ |-------|----------|--------|
66
+ {{#each issues}}
67
+ | {{this.description}} | {{this.severity}} | {{this.status}} |
68
+ {{/each}}
69
+ {{else}}
70
+ No issues found during testing.
71
+ {{/if}}
72
+
73
+ ## Ready for Completion
74
+
75
+ - [{{#if all_tests_pass}}x{{else}} {{/if}}] All tests passing
76
+ - [{{#if coverage_met}}x{{else}} {{/if}}] Coverage target met ({{coverage_target}}%)
77
+ - [{{#if acceptance_met}}x{{else}} {{/if}}] All acceptance criteria validated
78
+ - [{{#if no_critical_issues}}x{{else}} {{/if}}] No critical issues open
79
+
80
+ ---
81
+ *Generated by FIRE Run {{run_id}}*
@@ -61,7 +61,7 @@ Generate implementation walkthrough for human review after run completion.
61
61
  </step>
62
62
 
63
63
  <step n="5" title="Generate Walkthrough">
64
- <action script="scripts/render-walkthrough.ts">Render walkthrough from template</action>
64
+ <action>Generate walkthrough using template: templates/walkthrough.md.hbs</action>
65
65
  <action>Save to: .specs-fire/runs/{run-id}/walkthrough.md</action>
66
66
  <output>
67
67
  Walkthrough generated: .specs-fire/runs/{run-id}/walkthrough.md
@@ -0,0 +1,77 @@
1
+ ---
2
+ run: {{run_id}}
3
+ work_item: {{work_item_id}}
4
+ intent: {{intent_id}}
5
+ generated: {{generated}}
6
+ mode: {{mode}}
7
+ ---
8
+
9
+ # Implementation Walkthrough: {{title}}
10
+
11
+ ## Summary
12
+
13
+ {{summary}}
14
+
15
+ ## Files Changed
16
+
17
+ ### Created
18
+
19
+ | File | Purpose |
20
+ |------|---------|
21
+ {{#each files_created}}
22
+ | `{{this.path}}` | {{this.purpose}} |
23
+ {{/each}}
24
+ {{#unless files_created}}
25
+ | (none) | |
26
+ {{/unless}}
27
+
28
+ ### Modified
29
+
30
+ | File | Changes |
31
+ |------|---------|
32
+ {{#each files_modified}}
33
+ | `{{this.path}}` | {{this.changes}} |
34
+ {{/each}}
35
+ {{#unless files_modified}}
36
+ | (none) | |
37
+ {{/unless}}
38
+
39
+ ## Key Implementation Details
40
+
41
+ {{#each implementation_details}}
42
+ ### {{@index}}. {{this.title}}
43
+
44
+ {{this.description}}
45
+
46
+ {{/each}}
47
+
48
+ ## Decisions Made
49
+
50
+ | Decision | Choice | Rationale |
51
+ |----------|--------|-----------|
52
+ {{#each decisions}}
53
+ | {{this.decision}} | {{this.choice}} | {{this.rationale}} |
54
+ {{/each}}
55
+ {{#unless decisions}}
56
+ | (none) | | |
57
+ {{/unless}}
58
+
59
+ ## How to Verify
60
+
61
+ {{#each verification_steps}}
62
+ {{@index}}. **{{this.title}}**
63
+ ```bash
64
+ {{this.command}}
65
+ ```
66
+ Expected: {{this.expected}}
67
+
68
+ {{/each}}
69
+
70
+ ## Test Coverage
71
+
72
+ - Tests added: {{tests_added}}
73
+ - Coverage: {{coverage}}%
74
+ - Status: {{test_status}}
75
+
76
+ ---
77
+ *Generated by FIRE Run {{run_id}}*
@@ -104,8 +104,11 @@ Initialize a new FIRE project by detecting workspace type and setting up standar
104
104
  <action>Create .specs-fire/runs/</action>
105
105
  <action>Create .specs-fire/standards/</action>
106
106
  <action>Generate .specs-fire/state.yaml (include autonomy_bias)</action>
107
- <action>Generate .specs-fire/standards/tech-stack.md</action>
108
- <action>Generate .specs-fire/standards/coding-standards.md</action>
107
+ <action>Generate standards using templates:</action>
108
+ <substep>tech-stack.md — templates/tech-stack.md.hbs</substep>
109
+ <substep>coding-standards.md — templates/coding-standards.md.hbs</substep>
110
+ <substep>testing-standards.md — templates/testing-standards.md.hbs</substep>
111
+ <substep>system-architecture.md — templates/system-architecture.md.hbs</substep>
109
112
  </step>
110
113
 
111
114
  <step n="6" title="Complete">
@@ -120,7 +123,9 @@ Initialize a new FIRE project by detecting workspace type and setting up standar
120
123
  ├── runs/
121
124
  └── standards/
122
125
  ├── tech-stack.md
123
- └── coding-standards.md
126
+ ├── coding-standards.md
127
+ ├── testing-standards.md
128
+ └── system-architecture.md
124
129
  ```
125
130
 
126
131
  Ready to capture your first intent.
@@ -136,6 +141,10 @@ Initialize a new FIRE project by detecting workspace type and setting up standar
136
141
 
137
142
  ## Output
138
143
 
139
- - `.specs-fire/state.yaml` Central state file
140
- - `.specs-fire/standards/tech-stack.md` — Technology choices
141
- - `.specs-fire/standards/coding-standards.md` — Coding conventions
144
+ | Artifact | Location | Template |
145
+ |----------|----------|----------|
146
+ | State | `.specs-fire/state.yaml` | |
147
+ | Tech Stack | `.specs-fire/standards/tech-stack.md` | `templates/tech-stack.md.hbs` |
148
+ | Coding Standards | `.specs-fire/standards/coding-standards.md` | `templates/coding-standards.md.hbs` |
149
+ | Testing Standards | `.specs-fire/standards/testing-standards.md` | `templates/testing-standards.md.hbs` |
150
+ | System Architecture | `.specs-fire/standards/system-architecture.md` | `templates/system-architecture.md.hbs` |
@@ -0,0 +1,149 @@
1
+ # Coding Standards
2
+
3
+ ## Overview
4
+
5
+ {{overview}}
6
+
7
+ ## Code Formatting
8
+
9
+ **Tool**: {{formatter}}
10
+ **Config**: {{formatter_config}}
11
+ **Enforcement**: {{formatter_enforcement}}
12
+
13
+ ### Key Settings
14
+
15
+ {{#each formatter_settings}}
16
+ - **{{this.setting}}**: {{this.value}}
17
+ {{/each}}
18
+
19
+ ## Linting
20
+
21
+ **Tool**: {{linter}}
22
+ **Base Config**: {{linter_base}}
23
+ **Strictness**: {{linter_strictness}}
24
+
25
+ ### Key Rules
26
+
27
+ {{#each linter_rules}}
28
+ - `{{this.rule}}`: {{this.setting}} — {{this.rationale}}
29
+ {{/each}}
30
+
31
+ ## Naming Conventions
32
+
33
+ ### Variables and Functions
34
+
35
+ | Element | Convention | Example |
36
+ |---------|------------|---------|
37
+ {{#each naming_conventions}}
38
+ | {{this.element}} | {{this.convention}} | `{{this.example}}` |
39
+ {{/each}}
40
+
41
+ ### Files and Folders
42
+
43
+ {{#each file_naming}}
44
+ - **{{this.type}}**: {{this.convention}} (e.g., `{{this.example}}`)
45
+ {{/each}}
46
+
47
+ ## File Organization
48
+
49
+ ### Project Structure
50
+
51
+ ```
52
+ {{project_structure}}
53
+ ```
54
+
55
+ ### Conventions
56
+
57
+ {{#each organization_conventions}}
58
+ - **{{this.item}}**: {{this.convention}}
59
+ {{/each}}
60
+
61
+ ## Import Order
62
+
63
+ ```{{language}}
64
+ {{import_order_example}}
65
+ ```
66
+
67
+ **Rules**:
68
+ {{#each import_rules}}
69
+ - {{this}}
70
+ {{/each}}
71
+
72
+ ## Error Handling
73
+
74
+ ### Pattern
75
+
76
+ **Approach**: {{error_pattern}}
77
+
78
+ ### Guidelines
79
+
80
+ {{#each error_guidelines}}
81
+ - {{this}}
82
+ {{/each}}
83
+
84
+ ### Example
85
+
86
+ ```{{language}}
87
+ {{error_example}}
88
+ ```
89
+
90
+ ## Logging
91
+
92
+ **Tool**: {{logging_tool}}
93
+ **Format**: {{logging_format}}
94
+
95
+ ### Log Levels
96
+
97
+ | Level | Usage |
98
+ |-------|-------|
99
+ {{#each log_levels}}
100
+ | {{this.level}} | {{this.usage}} |
101
+ {{/each}}
102
+
103
+ ### Guidelines
104
+
105
+ **Always log**:
106
+ {{#each log_always}}
107
+ - {{this}}
108
+ {{/each}}
109
+
110
+ **Never log**:
111
+ {{#each log_never}}
112
+ - {{this}}
113
+ {{/each}}
114
+
115
+ ## Comments and Documentation
116
+
117
+ ### When to Comment
118
+
119
+ {{#each comment_guidelines}}
120
+ - {{this}}
121
+ {{/each}}
122
+
123
+ ### Documentation Format
124
+
125
+ **Functions**: {{doc_format_functions}}
126
+ **Classes**: {{doc_format_classes}}
127
+
128
+ ## Code Patterns
129
+
130
+ ### Preferred Patterns
131
+
132
+ {{#each preferred_patterns}}
133
+ #### {{this.name}}
134
+
135
+ {{this.description}}
136
+
137
+ ```{{../language}}
138
+ {{this.example}}
139
+ ```
140
+ {{/each}}
141
+
142
+ ### Anti-Patterns to Avoid
143
+
144
+ {{#each anti_patterns}}
145
+ - **{{this.name}}**: {{this.why}}
146
+ {{/each}}
147
+
148
+ ---
149
+ *Generated by FIRE project-init*
@@ -0,0 +1,101 @@
1
+ # System Architecture
2
+
3
+ ## Overview
4
+
5
+ {{overview}}
6
+
7
+ ## System Context
8
+
9
+ {{system_context}}
10
+
11
+ ### Context Diagram
12
+
13
+ ```
14
+ {{context_diagram}}
15
+ ```
16
+
17
+ ### Users
18
+
19
+ {{#each users}}
20
+ - **{{this.name}}**: {{this.description}}
21
+ {{/each}}
22
+
23
+ ### External Systems
24
+
25
+ {{#each external_systems}}
26
+ - **{{this.name}}**: {{this.purpose}}
27
+ {{/each}}
28
+
29
+ ## Architecture Pattern
30
+
31
+ **Pattern**: {{architecture_pattern}}
32
+ **Rationale**: {{architecture_rationale}}
33
+
34
+ ## Component Architecture
35
+
36
+ ### Components
37
+
38
+ {{#each components}}
39
+ #### {{this.name}}
40
+
41
+ - **Purpose**: {{this.purpose}}
42
+ - **Responsibilities**: {{this.responsibilities}}
43
+ - **Dependencies**: {{this.dependencies}}
44
+ {{/each}}
45
+
46
+ ### Component Diagram
47
+
48
+ ```
49
+ {{component_diagram}}
50
+ ```
51
+
52
+ ## Data Flow
53
+
54
+ {{data_flow_description}}
55
+
56
+ ```
57
+ {{data_flow_diagram}}
58
+ ```
59
+
60
+ ## Technology Stack
61
+
62
+ | Layer | Technology | Purpose |
63
+ |-------|------------|---------|
64
+ {{#each tech_stack}}
65
+ | {{this.layer}} | {{this.technology}} | {{this.purpose}} |
66
+ {{/each}}
67
+
68
+ ## Non-Functional Requirements
69
+
70
+ ### Performance
71
+
72
+ {{#each nfr_performance}}
73
+ - **{{this.metric}}**: {{this.target}}
74
+ {{/each}}
75
+
76
+ ### Security
77
+
78
+ {{#each nfr_security}}
79
+ - {{this}}
80
+ {{/each}}
81
+
82
+ ### Scalability
83
+
84
+ {{scalability_approach}}
85
+
86
+ ## Constraints
87
+
88
+ {{#each constraints}}
89
+ - {{this}}
90
+ {{/each}}
91
+
92
+ ## Key Decisions
93
+
94
+ | Decision | Choice | Rationale |
95
+ |----------|--------|-----------|
96
+ {{#each key_decisions}}
97
+ | {{this.decision}} | {{this.choice}} | {{this.rationale}} |
98
+ {{/each}}
99
+
100
+ ---
101
+ *Generated by FIRE project-init*
@@ -0,0 +1,136 @@
1
+ # Tech Stack
2
+
3
+ ## Overview
4
+
5
+ {{overview}}
6
+
7
+ ## Core Technologies
8
+
9
+ ### Language
10
+
11
+ **Primary**: {{primary_language}}
12
+ **Version**: {{language_version}}
13
+
14
+ ### Framework
15
+
16
+ **Framework**: {{framework}}
17
+ **Version**: {{framework_version}}
18
+ **Rationale**: {{framework_rationale}}
19
+
20
+ ### Runtime
21
+
22
+ **Runtime**: {{runtime}}
23
+ **Version**: {{runtime_version}}
24
+
25
+ ## Data Layer
26
+
27
+ ### Database
28
+
29
+ **Type**: {{database_type}}
30
+ **Database**: {{database}}
31
+ **Version**: {{database_version}}
32
+
33
+ ### ORM / Data Access
34
+
35
+ **Tool**: {{orm}}
36
+ **Rationale**: {{orm_rationale}}
37
+
38
+ ### Caching
39
+
40
+ {{#if caching}}
41
+ **Solution**: {{caching}}
42
+ {{else}}
43
+ Not configured.
44
+ {{/if}}
45
+
46
+ ## API Layer
47
+
48
+ ### API Style
49
+
50
+ **Style**: {{api_style}}
51
+
52
+ ### Documentation
53
+
54
+ **Tool**: {{api_docs}}
55
+
56
+ ## Frontend (if applicable)
57
+
58
+ {{#if frontend}}
59
+ ### UI Framework
60
+
61
+ **Framework**: {{frontend.framework}}
62
+ **Version**: {{frontend.version}}
63
+
64
+ ### Styling
65
+
66
+ **Approach**: {{frontend.styling}}
67
+
68
+ ### State Management
69
+
70
+ **Solution**: {{frontend.state_management}}
71
+ {{else}}
72
+ Not applicable (backend-only or CLI project).
73
+ {{/if}}
74
+
75
+ ## Infrastructure
76
+
77
+ ### Hosting
78
+
79
+ **Platform**: {{hosting_platform}}
80
+
81
+ ### Containerization
82
+
83
+ {{#if containerization}}
84
+ **Tool**: {{containerization}}
85
+ {{else}}
86
+ Not configured.
87
+ {{/if}}
88
+
89
+ ### CI/CD
90
+
91
+ **Platform**: {{ci_platform}}
92
+
93
+ ## Development Tools
94
+
95
+ ### Package Manager
96
+
97
+ **Manager**: {{package_manager}}
98
+
99
+ ### Build Tool
100
+
101
+ **Tool**: {{build_tool}}
102
+
103
+ ### Linting
104
+
105
+ **Linter**: {{linter}}
106
+ **Config**: {{linter_config}}
107
+
108
+ ### Formatting
109
+
110
+ **Formatter**: {{formatter}}
111
+ **Config**: {{formatter_config}}
112
+
113
+ ## Dependencies
114
+
115
+ ### Production Dependencies
116
+
117
+ {{#each prod_dependencies}}
118
+ - `{{this.name}}` ({{this.version}}) — {{this.purpose}}
119
+ {{/each}}
120
+
121
+ ### Development Dependencies
122
+
123
+ {{#each dev_dependencies}}
124
+ - `{{this.name}}` ({{this.version}}) — {{this.purpose}}
125
+ {{/each}}
126
+
127
+ ## Version Requirements
128
+
129
+ | Tool | Minimum Version | Recommended |
130
+ |------|-----------------|-------------|
131
+ {{#each version_requirements}}
132
+ | {{this.tool}} | {{this.minimum}} | {{this.recommended}} |
133
+ {{/each}}
134
+
135
+ ---
136
+ *Generated by FIRE project-init*
@@ -0,0 +1,94 @@
1
+ # Testing Standards
2
+
3
+ ## Overview
4
+
5
+ {{overview}}
6
+
7
+ ## Testing Framework
8
+
9
+ **Framework**: {{framework}}
10
+ **Runner**: {{runner}}
11
+
12
+ ## Test Types
13
+
14
+ | Type | Tool | Location | When to Use |
15
+ |------|------|----------|-------------|
16
+ {{#each test_types}}
17
+ | {{this.type}} | {{this.tool}} | `{{this.location}}` | {{this.when}} |
18
+ {{/each}}
19
+
20
+ ## Coverage Requirements
21
+
22
+ **Target**: {{coverage_target}}%
23
+ **Enforcement**: {{coverage_enforcement}}
24
+
25
+ **Critical paths that MUST have coverage:**
26
+ {{#each critical_paths}}
27
+ - {{this}}
28
+ {{/each}}
29
+
30
+ ## Test Naming
31
+
32
+ **Pattern**: `{{naming_pattern}}`
33
+
34
+ **Examples**:
35
+ {{#each naming_examples}}
36
+ - `{{this.name}}` — {{this.description}}
37
+ {{/each}}
38
+
39
+ ## Test Structure
40
+
41
+ ```{{language}}
42
+ {{test_structure}}
43
+ ```
44
+
45
+ ## Mock Strategy
46
+
47
+ **Approach**: {{mock_approach}}
48
+
49
+ **Guidelines**:
50
+ {{#each mock_guidelines}}
51
+ - {{this}}
52
+ {{/each}}
53
+
54
+ ## Test Data
55
+
56
+ **Strategy**: {{test_data_strategy}}
57
+
58
+ **Guidelines**:
59
+ {{#each test_data_guidelines}}
60
+ - {{this}}
61
+ {{/each}}
62
+
63
+ ## Running Tests
64
+
65
+ ```bash
66
+ # Run all tests
67
+ {{run_all_command}}
68
+
69
+ # Run with coverage
70
+ {{run_coverage_command}}
71
+
72
+ # Run specific test file
73
+ {{run_single_command}}
74
+
75
+ # Run in watch mode
76
+ {{run_watch_command}}
77
+ ```
78
+
79
+ ## CI/CD Integration
80
+
81
+ {{#if ci_enabled}}
82
+ **Pipeline**: {{ci_pipeline}}
83
+ **Trigger**: {{ci_trigger}}
84
+
85
+ **Required gates**:
86
+ {{#each ci_gates}}
87
+ - {{this}}
88
+ {{/each}}
89
+ {{else}}
90
+ CI/CD integration not configured.
91
+ {{/if}}
92
+
93
+ ---
94
+ *Generated by FIRE project-init*
@@ -119,7 +119,8 @@ Generate design documents for Validate mode work items (Checkpoint 1).
119
119
 
120
120
  <step n="9" title="Handle Response">
121
121
  <check if="response == y">
122
- <action>Save design doc to .specs-fire/intents/{intent-id}/work-items/{id}-design.md</action>
122
+ <action>Generate design doc using template: templates/design.md.hbs</action>
123
+ <action>Save to: .specs-fire/intents/{intent-id}/work-items/{id}-design.md</action>
123
124
  <action>Mark checkpoint 1 as passed</action>
124
125
  <output>
125
126
  Design approved. Ready for implementation planning.
@@ -0,0 +1,76 @@
1
+ ---
2
+ work_item: {{work_item_id}}
3
+ intent: {{intent_id}}
4
+ created: {{created}}
5
+ mode: validate
6
+ checkpoint_1: {{checkpoint_status}}
7
+ ---
8
+
9
+ # Design: {{title}}
10
+
11
+ ## Summary
12
+
13
+ {{summary}}
14
+
15
+ ## Key Decisions
16
+
17
+ | Decision | Choice | Rationale |
18
+ |----------|--------|-----------|
19
+ {{#each decisions}}
20
+ | {{this.decision}} | {{this.choice}} | {{this.rationale}} |
21
+ {{/each}}
22
+
23
+ {{#if domain_model}}
24
+ ## Domain Model
25
+
26
+ ### Entities
27
+ {{#each domain_model.entities}}
28
+ - **{{this.name}}**: {{this.description}}
29
+ {{/each}}
30
+
31
+ ### Value Objects
32
+ {{#each domain_model.value_objects}}
33
+ - **{{this.name}}**: {{this.description}}
34
+ {{/each}}
35
+ {{/if}}
36
+
37
+ ## Technical Approach
38
+
39
+ ### Component Diagram
40
+
41
+ ```
42
+ {{component_diagram}}
43
+ ```
44
+
45
+ {{#if api_endpoints}}
46
+ ### API Endpoints
47
+
48
+ {{#each api_endpoints}}
49
+ - `{{this.method}} {{this.path}}` - {{this.description}}
50
+ {{/each}}
51
+ {{/if}}
52
+
53
+ {{#if database_changes}}
54
+ ### Database Changes
55
+
56
+ ```sql
57
+ {{database_changes}}
58
+ ```
59
+ {{/if}}
60
+
61
+ ## Risks & Mitigations
62
+
63
+ | Risk | Impact | Mitigation |
64
+ |------|--------|------------|
65
+ {{#each risks}}
66
+ | {{this.risk}} | {{this.impact}} | {{this.mitigation}} |
67
+ {{/each}}
68
+
69
+ ## Implementation Checklist
70
+
71
+ {{#each checklist}}
72
+ - [ ] {{this}}
73
+ {{/each}}
74
+
75
+ ---
76
+ *Checkpoint 1 approved: {{approved_at}}*
@@ -85,7 +85,7 @@ Capture user intent through guided conversation.
85
85
 
86
86
  <step n="4" title="Generate Intent Brief">
87
87
  <action>Create intent ID from title (kebab-case)</action>
88
- <action>Generate intent brief using template</action>
88
+ <action>Generate intent brief using template: templates/brief.md.hbs</action>
89
89
  <action>Create directory: .specs-fire/intents/{intent-id}/</action>
90
90
  <action>Save: .specs-fire/intents/{intent-id}/brief.md</action>
91
91
  </step>
@@ -0,0 +1,40 @@
1
+ ---
2
+ id: {{id}}
3
+ title: {{title}}
4
+ status: {{status}}
5
+ created: {{created}}
6
+ ---
7
+
8
+ # Intent: {{title}}
9
+
10
+ ## Goal
11
+
12
+ {{goal}}
13
+
14
+ ## Users
15
+
16
+ {{users}}
17
+
18
+ ## Problem
19
+
20
+ {{problem}}
21
+
22
+ ## Success Criteria
23
+
24
+ {{#each success_criteria}}
25
+ - {{this}}
26
+ {{/each}}
27
+
28
+ ## Constraints
29
+
30
+ {{#each constraints}}
31
+ - {{this}}
32
+ {{/each}}
33
+
34
+ ## Notes
35
+
36
+ {{#if notes}}
37
+ {{notes}}
38
+ {{else}}
39
+ (none)
40
+ {{/if}}
@@ -132,7 +132,8 @@ Break an intent into discrete, executable work items.
132
132
  <step n="7" title="Save Work Items">
133
133
  <check if="approved">
134
134
  <action>Create .specs-fire/intents/{intent-id}/work-items/</action>
135
- <action>For each work item, save to {work-item-id}.md</action>
135
+ <action>For each work item, generate using template: templates/work-item.md.hbs</action>
136
+ <action>Save each to: .specs-fire/intents/{intent-id}/work-items/{work-item-id}.md</action>
136
137
  <action>Update state.yaml with work items list</action>
137
138
  </check>
138
139
  </step>
@@ -0,0 +1,40 @@
1
+ ---
2
+ id: {{id}}
3
+ title: {{title}}
4
+ intent: {{intent}}
5
+ complexity: {{complexity}}
6
+ mode: {{mode}}
7
+ status: {{status}}
8
+ depends_on: [{{#each depends_on}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}]
9
+ created: {{created}}
10
+ ---
11
+
12
+ # Work Item: {{title}}
13
+
14
+ ## Description
15
+
16
+ {{description}}
17
+
18
+ ## Acceptance Criteria
19
+
20
+ {{#each acceptance_criteria}}
21
+ - [ ] {{this}}
22
+ {{/each}}
23
+
24
+ ## Technical Notes
25
+
26
+ {{#if technical_notes}}
27
+ {{technical_notes}}
28
+ {{else}}
29
+ (none)
30
+ {{/if}}
31
+
32
+ ## Dependencies
33
+
34
+ {{#if depends_on}}
35
+ {{#each depends_on}}
36
+ - {{this}}
37
+ {{/each}}
38
+ {{else}}
39
+ (none)
40
+ {{/if}}
@@ -11,7 +11,7 @@ structure:
11
11
  - path: runs/
12
12
  description: "Execution logs and walkthroughs per run"
13
13
  - path: standards/
14
- description: "Project standards (tech-stack, coding-standards)"
14
+ description: "Project standards (tech-stack, coding-standards, testing-standards)"
15
15
 
16
16
  # Central state file (FIRE's source of truth)
17
17
  state:
@@ -67,8 +67,10 @@ naming:
67
67
  example: "run-001/"
68
68
  note: "Sequential 3-digit number, folder per run"
69
69
  contents:
70
- - "run.md" # Run log
71
- - "walkthrough.md" # Implementation walkthrough
70
+ - "plan.md" # Approved implementation plan (confirm/validate modes)
71
+ - "run.md" # Run log
72
+ - "test-report.md" # Test results and coverage
73
+ - "walkthrough.md" # Implementation walkthrough
72
74
 
73
75
  # Schema Definition (Source of Truth for Agents)
74
76
  schema:
@@ -79,9 +81,15 @@ schema:
79
81
  work-item: ".specs-fire/intents/{intent-id}/work-items/{work-item-id}.md"
80
82
  runs: ".specs-fire/runs/"
81
83
  run-folder: ".specs-fire/runs/{run-id}/"
84
+ plan: ".specs-fire/runs/{run-id}/plan.md"
82
85
  run-log: ".specs-fire/runs/{run-id}/run.md"
86
+ test-report: ".specs-fire/runs/{run-id}/test-report.md"
83
87
  walkthrough: ".specs-fire/runs/{run-id}/walkthrough.md"
84
88
  standards: ".specs-fire/standards/"
89
+ tech-stack: ".specs-fire/standards/tech-stack.md"
90
+ coding-standards: ".specs-fire/standards/coding-standards.md"
91
+ testing-standards: ".specs-fire/standards/testing-standards.md"
92
+ system-architecture: ".specs-fire/standards/system-architecture.md"
85
93
 
86
94
  # Agent Ownership
87
95
  ownership:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specsmd",
3
- "version": "0.0.0-dev.52",
3
+ "version": "0.0.0-dev.54",
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": {