specsmd 0.0.0-dev.63 → 0.0.0-dev.65

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.
@@ -1,37 +1,57 @@
1
- # Skill: Code Review
2
-
3
- Review code written during a run, auto-fix no-brainer issues, and suggest improvements requiring confirmation.
4
-
5
- ---
6
-
7
- ## Trigger
8
-
9
- - Invoked by run-execute after tests pass (Step 6b)
10
- - Receives: files_created, files_modified, run_id, intent context
11
-
12
1
  ---
13
-
14
- ## Degrees of Freedom
15
-
16
- **LOW for auto-fixes** — Only mechanical, non-semantic changes.
17
- **MEDIUM for suggestions** — Present options, let user decide.
18
-
2
+ name: code-review
3
+ description: Review code written during a run, auto-fix no-brainer issues, and suggest improvements requiring confirmation. Invoked after tests pass.
4
+ version: 1.0.0
19
5
  ---
20
6
 
21
- ## Workflow
22
-
23
- ```xml
24
- <skill name="code-review">
25
-
26
- <mandate>
27
- REVIEW all files created/modified in current run.
28
- AUTO-FIX only mechanical, non-semantic issues.
29
- ALWAYS CONFIRM security, architecture, and behavioral changes.
30
- RESPECT project coding standards from .specs-fire/standards/.
31
- NEVER break working code if tests passed, be conservative.
32
- RE-RUN tests after auto-fixes revert if tests fail.
33
- </mandate>
34
-
7
+ <objective>
8
+ Review code written during a run, auto-fix no-brainer issues, and suggest improvements requiring confirmation.
9
+ </objective>
10
+
11
+ <triggers>
12
+ - Invoked by run-execute after tests pass (Step 6b)
13
+ - Receives: files_created, files_modified, run_id, intent context
14
+ </triggers>
15
+
16
+ <degrees_of_freedom>
17
+ - **AUTO-FIX**: LOWOnly mechanical, non-semantic changes
18
+ - **SUGGESTIONS**: MEDIUMPresent options, let user decide
19
+ </degrees_of_freedom>
20
+
21
+ <llm critical="true">
22
+ <mandate>REVIEW all files created/modified in current run</mandate>
23
+ <mandate>AUTO-FIX only mechanical, non-semantic issues</mandate>
24
+ <mandate>ALWAYS CONFIRM security, architecture, and behavioral changes</mandate>
25
+ <mandate>RESPECT project coding standards from .specs-fire/standards/</mandate>
26
+ <mandate>NEVER break working code — if tests passed, be conservative</mandate>
27
+ <mandate>RE-RUN tests after auto-fixes — revert if tests fail</mandate>
28
+ </llm>
29
+
30
+ <input_context>
31
+ The skill receives from run-execute:
32
+
33
+ ```yaml
34
+ files_created:
35
+ - path: src/auth/login.ts
36
+ purpose: Login endpoint handler
37
+ - path: src/auth/login.test.ts
38
+ purpose: Unit tests for login
39
+
40
+ files_modified:
41
+ - path: src/routes/index.ts
42
+ changes: Added login route
43
+
44
+ run_id: run-001
45
+ intent_id: user-auth
46
+ ```
47
+ </input_context>
48
+
49
+ <references_index>
50
+ <reference name="review-categories" path="references/review-categories.md" load_when="analyzing code"/>
51
+ <reference name="auto-fix-rules" path="references/auto-fix-rules.md" load_when="classifying findings"/>
52
+ </references_index>
53
+
54
+ <flow>
35
55
  <step n="1" title="Gather Context">
36
56
  <action>Receive files_created and files_modified from parent workflow</action>
37
57
  <action>Load project standards:</action>
@@ -46,9 +66,7 @@ Review code written during a run, auto-fix no-brainer issues, and suggest improv
46
66
 
47
67
  <action>Read each file to be reviewed</action>
48
68
 
49
- <output>
50
- Reviewing {file_count} files...
51
- </output>
69
+ <output>Reviewing {file_count} files...</output>
52
70
  </step>
53
71
 
54
72
  <step n="2" title="Run Project Linters (if available)">
@@ -95,17 +113,13 @@ Review code written during a run, auto-fix no-brainer issues, and suggest improv
95
113
  <action>Run project test command</action>
96
114
 
97
115
  <check if="tests fail after auto-fix">
98
- <output>
99
- Auto-fix caused test failure. Reverting...
100
- </output>
116
+ <output>Auto-fix caused test failure. Reverting...</output>
101
117
  <action>Revert all auto-fix changes</action>
102
118
  <action>Move failed fixes to CONFIRM category</action>
103
119
  </check>
104
120
 
105
121
  <check if="tests pass">
106
- <output>
107
- Auto-fixed {count} issues. Tests still passing.
108
- </output>
122
+ <output>Auto-fixed {count} issues. Tests still passing.</output>
109
123
  </check>
110
124
  </check>
111
125
  </step>
@@ -129,7 +143,7 @@ Review code written during a run, auto-fix no-brainer issues, and suggest improv
129
143
  </check>
130
144
 
131
145
  <check if="suggestions exist">
132
- <output>
146
+ <template_output section="suggestions">
133
147
  ## Code Review Complete
134
148
 
135
149
  **Auto-fixed ({auto_count} issues)**:
@@ -154,7 +168,7 @@ Review code written during a run, auto-fix no-brainer issues, and suggest improv
154
168
  {/for}
155
169
  [s] Skip all suggestions
156
170
  [r] Review each individually
157
- </output>
171
+ </template_output>
158
172
 
159
173
  <checkpoint>Wait for user response</checkpoint>
160
174
  </check>
@@ -174,7 +188,7 @@ Review code written during a run, auto-fix no-brainer issues, and suggest improv
174
188
 
175
189
  <check if="response == r">
176
190
  <iterate over="suggestions" as="suggestion">
177
- <output>
191
+ <template_output section="individual_suggestion">
178
192
  **[{suggestion.category}]** {suggestion.title}
179
193
 
180
194
  File: {suggestion.file}:{suggestion.line}
@@ -192,7 +206,7 @@ Review code written during a run, auto-fix no-brainer issues, and suggest improv
192
206
  Rationale: {suggestion.rationale}
193
207
 
194
208
  Apply this change? [y/n]
195
- </output>
209
+ </template_output>
196
210
  <checkpoint>Wait for response</checkpoint>
197
211
  <check if="response == y">
198
212
  <action>Apply this suggestion</action>
@@ -210,7 +224,7 @@ Review code written during a run, auto-fix no-brainer issues, and suggest improv
210
224
 
211
225
  <step n="8" title="Return to Parent">
212
226
  <action>Return summary to run-execute workflow:</action>
213
- <return>
227
+ <return_value>
214
228
  {
215
229
  "success": true,
216
230
  "auto_fixed_count": {count},
@@ -219,48 +233,22 @@ Review code written during a run, auto-fix no-brainer issues, and suggest improv
219
233
  "tests_passing": true,
220
234
  "report_path": ".specs-fire/runs/{run-id}/review-report.md"
221
235
  }
222
- </return>
236
+ </return_value>
223
237
  </step>
224
-
225
- </skill>
226
- ```
227
-
228
- ---
229
-
230
- ## Input Context
231
-
232
- The skill receives from run-execute:
233
-
234
- ```yaml
235
- files_created:
236
- - path: src/auth/login.ts
237
- purpose: Login endpoint handler
238
- - path: src/auth/login.test.ts
239
- purpose: Unit tests for login
240
-
241
- files_modified:
242
- - path: src/routes/index.ts
243
- changes: Added login route
244
-
245
- run_id: run-001
246
- intent_id: user-auth
247
- ```
248
-
249
- ---
250
-
251
- ## Output Artifact
252
-
253
- Creates `.specs-fire/runs/{run-id}/review-report.md` with:
254
- - Summary table (auto-fixed, suggested, skipped by category)
255
- - Detailed list of auto-fixed issues with diffs
256
- - Applied suggestions with approval timestamps
257
- - Skipped suggestions with reasons
258
-
259
- ---
260
-
261
- ## References
262
-
263
- | Reference | Purpose |
264
- |-----------|---------|
265
- | `references/review-categories.md` | Categories and what to check |
266
- | `references/auto-fix-rules.md` | Rules for auto-fix vs confirm |
238
+ </flow>
239
+
240
+ <output_artifact>
241
+ Creates `.specs-fire/runs/{run-id}/review-report.md` with:
242
+ - Summary table (auto-fixed, suggested, skipped by category)
243
+ - Detailed list of auto-fixed issues with diffs
244
+ - Applied suggestions with approval timestamps
245
+ - Skipped suggestions with reasons
246
+ </output_artifact>
247
+
248
+ <success_criteria>
249
+ <criterion>All files created/modified in run reviewed</criterion>
250
+ <criterion>Auto-fixes applied without breaking tests</criterion>
251
+ <criterion>Suggestions presented for user approval</criterion>
252
+ <criterion>review-report.md created in run folder</criterion>
253
+ <criterion>Return status to parent workflow</criterion>
254
+ </success_criteria>