ralphie 1.0.0 → 1.1.0

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,303 +1,417 @@
1
1
  ---
2
2
  name: review-spec
3
- description: Validate SPEC.md for format compliance and content quality. Checks for checkbox syntax, code snippets, file paths, and provides content critique on problem-solution fit, integration awareness, scalability, and scope.
3
+ description: Validate specs for V2 format compliance (task IDs, status, size) and content quality. Checks structure, deliverables, and provides content critique.
4
4
  context: fork
5
5
  allowed-tools: Read, Grep, Glob
6
+ license: MIT
7
+ metadata:
8
+ author: ralphie
9
+ version: "3.0.0"
10
+ argument-hint: "[spec-path]"
11
+ install-hint: npx add-skill skylarbarrera/ralphie --skill review-spec
6
12
  ---
7
13
 
8
- # Review SPEC Skill
14
+ # Review SPEC Skill (V2 Format)
9
15
 
10
- Validate `SPEC.md` files for format compliance and content quality before finalizing.
16
+ Validate spec files for V2 format compliance and content quality before finalizing.
11
17
 
12
18
  ## Workflow
13
19
 
14
20
  ```
15
- Read SPEC → Format Checks → Content Critique → Report
21
+ Locate SpecV2 Format Checks → Content Checks → Content Critique → Report
16
22
  ```
17
23
 
18
- ## Step 1: Read SPEC.md
24
+ ## Step 1: Locate Spec
19
25
 
20
- Read the entire `SPEC.md` file to analyze its structure and content.
26
+ Find the spec to review:
27
+
28
+ 1. Check `specs/active/*.md` (one spec at a time)
29
+ 2. Or use provided path argument
21
30
 
22
31
  ```bash
23
- Read SPEC.md
32
+ ls specs/active/*.md
24
33
  ```
25
34
 
26
- ## Step 2: Format Checks
35
+ ## Step 2: V2 Format Checks
27
36
 
28
- Check for format violations that break Ralphie iteration efficiency or create ambiguity.
37
+ These checks are **required** for all specs.
29
38
 
30
- ### 2.1 Checkbox Syntax
39
+ ### 2.1 Task ID Format
31
40
 
32
41
  **PASS:**
33
42
  ```markdown
34
- - [ ] Task description
35
- - [x] Completed task
43
+ ### T001: Setup project structure
44
+ ### T002: Implement core logic
45
+ ### T003: Add tests
36
46
  ```
37
47
 
38
48
  **FAIL:**
39
49
  ```markdown
40
- - [] Missing space
41
- - [X] Uppercase X
42
- - Task without checkbox
43
- * Using asterisk instead of dash
50
+ ### Task 1: Setup project # No T prefix, wrong format
51
+ ### T1: Implement logic # Only 1 digit, need 3
52
+ - [ ] Add tests # Checkbox format (invalid)
44
53
  ```
45
54
 
46
55
  **Check for:**
47
- - All tasks use `- [ ]` or `- [x]` format
48
- - Lowercase `x` for completed tasks
49
- - Space after checkbox
50
- - Dash `-` prefix, not asterisk `*` or number
56
+ - All tasks use `### T###:` format (H3, T prefix, 3 digits, colon, space)
57
+ - Sequential numbering (T001, T002, T003...)
58
+ - No gaps in sequence (T001, T003 - missing T002)
51
59
 
52
- ### 2.2 No Code Snippets
60
+ ### 2.2 Status Field
53
61
 
54
- **FAIL - Code snippets in tasks:**
62
+ **PASS:**
55
63
  ```markdown
56
- - [ ] Fix auth bug
57
- - Use `bcrypt.compare()` instead of `===`
58
- - Add this code:
59
- ```typescript
60
- const isValid = await bcrypt.compare(password, hash);
61
- ```
64
+ ### T001: Task title
65
+ - Status: pending
62
66
  ```
63
67
 
64
- **PASS - Deliverable-focused:**
68
+ **FAIL:**
65
69
  ```markdown
66
- - [ ] Fix auth bug
67
- - Password comparison should be timing-safe
68
- - Handle comparison errors gracefully
70
+ ### T001: Task title
71
+ - Status: todo # Invalid value
72
+ - status: pending # Lowercase "status"
73
+ # Missing Status line entirely
69
74
  ```
70
75
 
76
+ **Valid values:** `pending`, `in_progress`, `passed`, `failed`
77
+
71
78
  **Check for:**
72
- - No ` ```language ` code blocks in task descriptions
73
- - No inline code that shows implementation (`` `bcrypt.compare()` `` is implementation)
74
- - Verification sections CAN include code examples (those are test scripts, not implementation)
79
+ - Every task has `- Status:` line (exact format)
80
+ - Value is one of the four valid options
81
+ - Appears immediately after task header
75
82
 
76
- ### 2.3 No File Paths in Tasks
83
+ ### 2.3 Size Field
77
84
 
78
- **FAIL - File paths prescribe implementation:**
85
+ **PASS:**
79
86
  ```markdown
80
- - [ ] Fix auth bug
81
- - Modify src/auth/login.ts line 42
82
- - Update src/middleware/validate.ts
87
+ ### T001: Task title
88
+ - Status: pending
89
+ - Size: M
83
90
  ```
84
91
 
85
- **PASS - Outcome-focused:**
92
+ **FAIL:**
86
93
  ```markdown
87
- - [ ] Fix auth bug
88
- - Login endpoint returns 401 for invalid credentials
89
- - Credentials are validated before database lookup
94
+ ### T001: Task title
95
+ - Status: pending
96
+ - Size: Medium # Full word, not abbreviation
97
+ - Size: XL # Invalid size
98
+ # Missing Size line
90
99
  ```
91
100
 
101
+ **Valid values:** `S`, `M`, `L`
102
+
92
103
  **Check for:**
93
- - No file:line references (e.g., `auth.ts:42`)
94
- - No specific file paths in task bullets (e.g., `src/auth/login.ts`)
95
- - Files belong in `.ai/ralphie/plan.md`, not SPEC.md
104
+ - Every task has `- Size:` line (exact format)
105
+ - Value is S, M, or L (single uppercase letter)
106
+ - Appears after Status line
96
107
 
97
- ### 2.4 Sub-Bullets Are Deliverables
108
+ ### 2.4 Deliverables Section
98
109
 
99
- **FAIL - Sub-bullets as instructions:**
110
+ **PASS:**
100
111
  ```markdown
101
- - [ ] Create user API
102
- - Install express and body-parser
103
- - Create routes/user.ts file
104
- - Add GET and POST handlers
105
- - Write tests in tests/user.test.ts
112
+ ### T001: Task title
113
+ - Status: pending
114
+ - Size: S
115
+
116
+ **Deliverables:**
117
+ - First deliverable
118
+ - Second deliverable
106
119
  ```
107
120
 
108
- **PASS - Sub-bullets as deliverables:**
121
+ **FAIL:**
109
122
  ```markdown
110
- - [ ] Create user API
111
- - GET /users - list all users
112
- - POST /users - create new user
113
- - Returns 400 for invalid input
114
- - Tests cover all endpoints
123
+ ### T001: Task title
124
+ - Status: pending
125
+ - Size: S
126
+
127
+ - First deliverable # Missing **Deliverables:** header
128
+ - Second deliverable
115
129
  ```
116
130
 
117
131
  **Check for:**
118
- - Sub-bullets describe WHAT not HOW
119
- - Sub-bullets are verifiable outcomes
120
- - No "Create X file" or "Add Y function" (those are plans, not requirements)
132
+ - `**Deliverables:**` header present for each task
133
+ - At least one bullet under Deliverables
134
+ - Deliverables describe WHAT not HOW
121
135
 
122
- ### 2.5 Task Batching
136
+ ### 2.5 Verify Section
123
137
 
124
- **FAIL - Over-split tasks:**
138
+ **PASS:**
125
139
  ```markdown
126
- - [ ] Create UserModel.ts
127
- - [ ] Create UserService.ts
128
- - [ ] Create UserController.ts
129
- - [ ] Create user.test.ts
140
+ **Verify:** `npm test -- task-name`
130
141
  ```
131
142
 
132
- **PASS - Properly batched:**
143
+ **FAIL:**
133
144
  ```markdown
134
- - [ ] Create User module (Model, Service, Controller) with tests
135
- - User CRUD operations
136
- - Input validation
137
- - Tests cover all operations
145
+ **Verify:** Run the tests # No backticks, vague
146
+ Verify: npm test # Missing ** bold
147
+ # Missing Verify section entirely
138
148
  ```
139
149
 
140
150
  **Check for:**
141
- - Related files are batched into single tasks
142
- - Tasks that could be done together aren't artificially split
143
- - Each checkbox = one meaningful iteration (30min - 2hr of work)
151
+ - `**Verify:**` present (bold, colon)
152
+ - Contains a command or clear verification method
153
+ - Commands should be in backticks
154
+
155
+ ### 2.6 Task Separators
156
+
157
+ **PASS:**
158
+ ```markdown
159
+ **Verify:** `npm test`
144
160
 
145
- ### Format Check Summary
161
+ ---
146
162
 
147
- Report each violation found:
163
+ ### T002: Next task
164
+ ```
148
165
 
166
+ **FAIL:**
149
167
  ```markdown
150
- ## Format Issues
168
+ **Verify:** `npm test`
151
169
 
152
- ### Checkbox Syntax
153
- - Line 42: Uses `* [ ]` instead of `- [ ]`
154
- - Line 58: Completed task uses `[X]` instead of `[x]`
170
+ ### T002: Next task # Missing --- separator
171
+ ```
155
172
 
156
- ### Code Snippets
157
- - Lines 65-70: Task contains TypeScript code block
158
- - Line 82: Implementation detail in sub-bullet: `Use bcrypt.compare()`
173
+ **Check for:**
174
+ - `---` separator between each task
175
+ - Blank line before and after separator
159
176
 
160
- ### File Paths
161
- - Line 92: References `src/auth/login.ts:42`
162
- - Line 105: Sub-bullet says "Modify middleware/validate.ts"
177
+ ### V2 Format Summary
178
+
179
+ Report each violation:
180
+
181
+ ```markdown
182
+ ## V2 Format Issues
183
+
184
+ ### Task IDs
185
+ - Task 3: Uses `### Task 3:` instead of `### T003:`
186
+ - Task sequence: Gap detected - T001, T003 (missing T002)
163
187
 
164
- ### Sub-Bullets Not Deliverables
165
- - Line 120: "Install express and body-parser" (instruction, not deliverable)
166
- - Line 121: "Create routes/user.ts file" (prescribes file structure)
188
+ ### Status Field
189
+ - T002: Missing Status field
190
+ - T004: Invalid status value "todo" (use: pending, in_progress, passed, failed)
167
191
 
168
- ### Task Batching
169
- - Lines 140-143: Four separate tasks for related User module files (should be one task)
192
+ ### Size Field
193
+ - T001: Missing Size field
194
+ - T003: Invalid size "Medium" (use: S, M, L)
195
+
196
+ ### Deliverables
197
+ - T002: Missing **Deliverables:** section
198
+ - T004: Deliverables section empty
199
+
200
+ ### Verify
201
+ - T001: Missing **Verify:** section
202
+ - T003: Verify missing backticks around command
203
+
204
+ ### Separators
205
+ - Between T002 and T003: Missing --- separator
170
206
  ```
171
207
 
172
- ## Step 3: Content Critique
208
+ ---
173
209
 
174
- Evaluate whether the SPEC describes a good problem-solution fit.
210
+ ## Step 3: Content Checks
175
211
 
176
- ### 3.1 Problem-Solution Fit
212
+ These checks apply to all specs.
177
213
 
178
- **Questions to ask:**
179
- - Does the SPEC clearly state what problem it solves?
180
- - Are the tasks aligned with solving that problem?
181
- - Are there tasks that seem unrelated to the stated goal?
214
+ ### 3.1 No Code Snippets in Tasks
182
215
 
183
- **Example concern:**
216
+ **FAIL - Code in tasks:**
184
217
  ```markdown
185
- ## Concern: Task Misalignment
186
- SPEC Goal: "Build a CLI tool for managing database migrations"
187
- Task: "Add user authentication with OAuth"
218
+ **Deliverables:**
219
+ - Use `bcrypt.compare()` instead of `===`
220
+ - Add this code:
221
+ ```typescript
222
+ const isValid = await bcrypt.compare(password, hash);
223
+ ```
224
+ ```
188
225
 
189
- This task doesn't align with the stated goal. Authentication might be needed for a web UI, but the goal describes a CLI tool.
226
+ **PASS - Deliverable-focused:**
227
+ ```markdown
228
+ **Deliverables:**
229
+ - Password comparison should be timing-safe
230
+ - Handle comparison errors gracefully
190
231
  ```
191
232
 
192
- ### 3.2 Integration Awareness
233
+ **Note:** Code in `**Verify:**` sections is OK (test commands, not implementation)
193
234
 
194
- **Questions to ask:**
195
- - Does the SPEC consider existing systems?
196
- - Are there tasks for integration points (APIs, databases, services)?
197
- - Does it account for backward compatibility if modifying existing code?
235
+ ### 3.2 No File Paths in Tasks
198
236
 
199
- **Example concern:**
237
+ **FAIL:**
200
238
  ```markdown
201
- ## Concern: Missing Integration
202
- SPEC adds a new payment endpoint but doesn't mention:
203
- - How it integrates with existing order system
204
- - Whether existing payment records need migration
205
- - How to handle in-flight transactions during deployment
239
+ **Deliverables:**
240
+ - Modify src/auth/login.ts line 42
241
+ - Update src/middleware/validate.ts
206
242
  ```
207
243
 
208
- ### 3.3 Scalability Considerations
244
+ **PASS:**
245
+ ```markdown
246
+ **Deliverables:**
247
+ - Login endpoint returns 401 for invalid credentials
248
+ - Credentials validated before database lookup
249
+ ```
209
250
 
210
- **Questions to ask:**
211
- - For performance-critical features, are there tasks for optimization?
212
- - For high-volume features, is there consideration of limits/throttling?
213
- - Are there tasks for monitoring or observability?
251
+ ### 3.3 Deliverables Are WHAT Not HOW
214
252
 
215
- **Example concern:**
253
+ **FAIL - Instructions:**
216
254
  ```markdown
217
- ## Concern: Scalability Not Addressed
218
- SPEC adds a webhook system but doesn't include:
219
- - Rate limiting for incoming webhooks
220
- - Queue for processing high volumes
221
- - Retry logic for failed deliveries
255
+ **Deliverables:**
256
+ - Install express and body-parser
257
+ - Create routes/user.ts file
258
+ - Add GET and POST handlers
222
259
  ```
223
260
 
224
- **Note:** Not all SPECs need scalability tasks. Simple CLIs, internal tools, and MVPs can skip this.
225
-
226
- ### 3.4 Scope Appropriateness
261
+ **PASS - Outcomes:**
262
+ ```markdown
263
+ **Deliverables:**
264
+ - GET /users returns list of users
265
+ - POST /users creates new user
266
+ - Returns 400 for invalid input
267
+ ```
227
268
 
228
- **Questions to ask:**
229
- - Is the SPEC trying to do too much in one go?
230
- - Are there tasks that could be deferred to later phases?
231
- - Is the SPEC missing critical prerequisites?
269
+ ### 3.4 Task Batching
232
270
 
233
- **Example concern:**
271
+ **FAIL - Over-split:**
234
272
  ```markdown
235
- ## Concern: Scope Too Large
236
- SPEC has 45 tasks across 8 phases. Recommend:
237
- - Identify MVP subset (first 10-15 tasks)
238
- - Move nice-to-have features to Phase 2 SPEC
239
- - Focus on one complete workflow first
273
+ ### T001: Create UserModel.ts
274
+ ### T002: Create UserService.ts
275
+ ### T003: Create UserController.ts
276
+ ### T004: Create user.test.ts
240
277
  ```
241
278
 
242
- **Example concern:**
279
+ **PASS - Properly batched:**
243
280
  ```markdown
244
- ## Concern: Missing Prerequisites
245
- SPEC starts with "Create admin dashboard" but has no tasks for:
246
- - User authentication (needed to know who's an admin)
247
- - Database schema (what data will the dashboard show?)
248
- Recommend adding prerequisite tasks first.
281
+ ### T001: Implement User module
282
+ - Status: pending
283
+ - Size: M
284
+
285
+ **Deliverables:**
286
+ - User CRUD operations (model, service, controller)
287
+ - Input validation
288
+ - Tests cover all operations
249
289
  ```
250
290
 
251
- ### Content Critique Summary
291
+ **Guideline:** 3-10 tasks total. Each task = meaningful iteration (30min - 2hr work).
292
+
293
+ ---
252
294
 
253
- Report concerns in priority order:
295
+ ## Step 4: Content Critique
296
+
297
+ Evaluate problem-solution fit.
298
+
299
+ ### 4.1 Problem-Solution Fit
300
+
301
+ - Does the spec clearly state what problem it solves?
302
+ - Are tasks aligned with solving that problem?
303
+ - Any tasks unrelated to the stated goal?
304
+
305
+ ### 4.2 Integration Awareness
306
+
307
+ - Does spec consider existing systems?
308
+ - Tasks for integration points (APIs, databases)?
309
+ - Backward compatibility considered?
310
+
311
+ ### 4.3 Size Point Distribution
312
+
313
+ For V2 specs, check size distribution:
254
314
 
255
315
  ```markdown
256
- ## Content Concerns
316
+ ## Size Analysis
257
317
 
258
- ### HIGH PRIORITY
259
- 1. **Missing Prerequisites**: Authentication tasks should come before admin dashboard
260
- 2. **Scope Too Large**: 45 tasks is too many for one SPEC - recommend splitting into MVP and Phase 2
318
+ | Size | Count | Points |
319
+ |------|-------|--------|
320
+ | S | 3 | 3 |
321
+ | M | 4 | 8 |
322
+ | L | 1 | 4 |
323
+ | **Total** | **8** | **15** |
324
+
325
+ Estimated iterations: ~4 (at 4 pts/iteration)
326
+ ```
327
+
328
+ **Concerns:**
329
+ - All L tasks? Consider splitting
330
+ - All S tasks? May be over-split
331
+ - Mix of sizes is healthy
332
+
333
+ ### 4.4 Scope Appropriateness
334
+
335
+ - Is spec trying to do too much?
336
+ - Tasks that could be deferred?
337
+ - Missing prerequisites?
338
+
339
+ ---
340
+
341
+ ## Step 5: EARS Validation (Optional)
342
+
343
+ If spec has `## Acceptance Criteria` with EARS patterns, validate them.
344
+
345
+ ### Valid EARS Patterns
346
+
347
+ | Pattern | Format |
348
+ |---------|--------|
349
+ | Ubiquitous | "The system shall [response]" |
350
+ | Event-driven | "WHEN [trigger], the system shall [response]" |
351
+ | State-driven | "WHILE [state], the system shall [response]" |
352
+ | Optional | "WHERE [feature enabled], the system shall [response]" |
353
+ | Unwanted | "IF [condition], THEN the system shall [response]" |
354
+
355
+ ### EARS Concerns
356
+
357
+ **FAIL:**
358
+ ```markdown
359
+ - When needed, the system should probably do something
360
+ ```
261
361
 
262
- ### MEDIUM PRIORITY
263
- 3. **Integration Gap**: No mention of how new API integrates with existing order system
264
- 4. **Scalability Risk**: Webhook system needs rate limiting and queue (high volume expected)
362
+ Issues:
363
+ - "When needed" is vague trigger
364
+ - "should probably" is weak (use "shall")
365
+ - "do something" has no specific response
265
366
 
266
- ### LOW PRIORITY
267
- 5. **Task Misalignment**: OAuth task seems unrelated to CLI tool goal (clarify if needed)
367
+ **PASS:**
368
+ ```markdown
369
+ - WHEN user submits login form, the system shall validate credentials within 200ms
268
370
  ```
269
371
 
270
- ## Step 4: Generate Report
372
+ ---
271
373
 
272
- Combine format checks and content critique into a final report.
374
+ ## Step 6: Generate Report
273
375
 
274
376
  ### Output Format
275
377
 
276
378
  ```markdown
277
379
  # SPEC Review: [PASS/FAIL]
278
380
 
279
- ## Format: [PASS/FAIL]
381
+ ## V2 Format: [PASS/FAIL]
280
382
 
281
- [If FAIL, list all format violations from Step 2]
282
- [If PASS, say "No format violations found."]
383
+ [If FAIL, list all V2 format violations]
384
+ [If PASS, "V2 format validated: X tasks, Y total points"]
283
385
 
284
- ## Content: [PASS/CONCERNS]
386
+ ## Content: [PASS/FAIL]
285
387
 
286
- [If CONCERNS, list all content issues from Step 3 in priority order]
287
- [If PASS, say "No content concerns. SPEC is well-structured and ready."]
388
+ [If FAIL, list content violations (code, file paths, etc.)]
389
+ [If PASS, "No content violations found."]
288
390
 
289
- ## Recommendations
391
+ ## Content Critique: [PASS/CONCERNS]
392
+
393
+ [If CONCERNS, list in priority order]
394
+ [If PASS, "Spec is well-structured and ready."]
290
395
 
291
- [List actionable improvements, prioritized]
396
+ ## Size Summary
292
397
 
293
- 1. Fix format violations (required before finalizing)
294
- 2. Address HIGH PRIORITY content concerns
295
- 3. Consider MEDIUM PRIORITY concerns if applicable
296
- 4. Review LOW PRIORITY suggestions
398
+ | Size | Count | Points |
399
+ |------|-------|--------|
400
+ | S | X | X |
401
+ | M | Y | 2Y |
402
+ | L | Z | 4Z |
403
+ | Total | N | P |
404
+
405
+ Estimated iterations: ~I (at 4 pts/iteration)
406
+
407
+ ## Recommendations
408
+
409
+ 1. [Required fixes]
410
+ 2. [Suggested improvements]
297
411
 
298
412
  ## Summary
299
413
 
300
- [Overall assessment - ready to use, needs revision, or needs major rework]
414
+ [ Ready / Needs revision / ⚠️ Needs discussion]
301
415
  ```
302
416
 
303
417
  ### Example: PASS Report
@@ -305,21 +419,37 @@ Combine format checks and content critique into a final report.
305
419
  ```markdown
306
420
  # SPEC Review: PASS
307
421
 
308
- ## Format: PASS
309
- No format violations found.
422
+ ## V2 Format: PASS
423
+ V2 format validated: 8 tasks, 15 total points
424
+ - Task IDs: T001-T008 sequential ✓
425
+ - All tasks have Status, Size, Deliverables, Verify ✓
426
+ - Separators present between all tasks ✓
310
427
 
311
428
  ## Content: PASS
312
- No content concerns. SPEC is well-structured with:
429
+ No content violations found.
430
+
431
+ ## Content Critique: PASS
313
432
  - Clear goal statement
314
- - Tasks properly batched (15 tasks across 3 phases)
315
- - Good integration awareness (migration tasks included)
316
- - Appropriate scope for MVP
433
+ - Tasks properly batched
434
+ - Good integration awareness
435
+ - Appropriate scope
436
+
437
+ ## Size Summary
438
+
439
+ | Size | Count | Points |
440
+ |------|-------|--------|
441
+ | S | 3 | 3 |
442
+ | M | 4 | 8 |
443
+ | L | 1 | 4 |
444
+ | Total | 8 | 15 |
445
+
446
+ Estimated iterations: ~4 (at 4 pts/iteration)
317
447
 
318
448
  ## Recommendations
319
- None. SPEC is ready to use.
449
+ None. Spec is ready for implementation.
320
450
 
321
451
  ## Summary
322
- SPEC follows all conventions and is ready for implementation.
452
+ Spec follows V2 format and is ready for `ralphie run`.
323
453
  ```
324
454
 
325
455
  ### Example: FAIL Report
@@ -327,64 +457,83 @@ None. SPEC is ready to use.
327
457
  ```markdown
328
458
  # SPEC Review: FAIL
329
459
 
330
- ## Format: FAIL
460
+ ## V2 Format: FAIL
461
+
462
+ ### Task IDs
463
+ - Line 45: Uses `### Task 3:` instead of `### T003:`
464
+
465
+ ### Status Field
466
+ - T002: Missing Status field
467
+ - T004: Invalid status "todo" (valid: pending, in_progress, passed, failed)
468
+
469
+ ### Size Field
470
+ - T001: Missing Size field
471
+
472
+ ### Deliverables
473
+ - T002: Missing **Deliverables:** section
474
+
475
+ ## Content: FAIL
331
476
 
332
477
  ### Code Snippets
333
- - Lines 65-70: Task contains TypeScript code block showing implementation
334
- - Line 82: Sub-bullet includes `bcrypt.compare()` implementation detail
478
+ - T003 line 82: Contains implementation code `bcrypt.compare()`
335
479
 
336
480
  ### File Paths
337
- - Line 92: References specific file `src/auth/login.ts:42`
338
-
339
- ### Sub-Bullets Not Deliverables
340
- - Line 120: "Install express and body-parser" is an instruction, not a deliverable
341
- - Line 121: "Create routes/user.ts file" prescribes file structure
481
+ - T001 line 55: References `src/auth/login.ts:42`
342
482
 
343
- ## Content: CONCERNS
483
+ ## Content Critique: CONCERNS
344
484
 
345
485
  ### HIGH PRIORITY
346
- 1. **Missing Prerequisites**: Tasks 8-12 build admin dashboard but authentication (Task 15) comes later. Reorder so auth comes first.
347
- 2. **Scope Too Large**: 45 tasks is too ambitious. Recommend creating MVP SPEC with first 15 tasks, defer rest to Phase 2.
486
+ 1. Missing Prerequisites: Auth tasks should come before admin dashboard
348
487
 
349
- ### MEDIUM PRIORITY
350
- 3. **Integration Gap**: New payment endpoint (Task 22) doesn't mention integration with existing order system or data migration.
488
+ ## Size Summary
489
+ Cannot calculate - missing Size fields on some tasks.
351
490
 
352
491
  ## Recommendations
353
492
 
354
- 1. **Fix format violations** (required):
355
- - Remove code blocks from task descriptions
356
- - Remove file:line references
357
- - Rewrite sub-bullets as deliverables ("WHAT") not instructions ("HOW")
493
+ 1. **Fix V2 format** (required):
494
+ - Add missing Status and Size fields
495
+ - Fix task ID format on Task 3
496
+ - Add Deliverables section to T002
358
497
 
359
- 2. **Address HIGH PRIORITY concerns**:
360
- - Reorder tasks: move authentication (Task 15) to Phase 1, before admin dashboard
361
- - Split SPEC: Create `SPEC-MVP.md` with first 15 tasks, `SPEC-Phase2.md` with remaining 30
498
+ 2. **Fix content** (required):
499
+ - Remove code from task descriptions
500
+ - Remove file path references
362
501
 
363
- 3. **Consider MEDIUM concerns**:
364
- - Add integration tasks for payment endpoint (migration, order system integration)
502
+ 3. **Address concerns**:
503
+ - Reorder tasks for prerequisites
365
504
 
366
505
  ## Summary
367
- SPEC needs revision before use. Focus on fixing format violations and reordering tasks to address prerequisites.
506
+ Spec needs revision. Fix V2 format violations first.
368
507
  ```
369
508
 
509
+ ---
510
+
370
511
  ## Quick Reference
371
512
 
372
- | Check | Pass | Fail |
373
- |-------|------|------|
374
- | **Checkbox** | `- [ ]` or `- [x]` | `- []`, `- [X]`, `*`, numbers |
375
- | **Code** | No code in tasks | ` ``` ` blocks or implementation code |
376
- | **Files** | No file paths | `src/auth.ts:42`, specific filenames |
377
- | **Sub-bullets** | Deliverables (WHAT) | Instructions (HOW) |
378
- | **Batching** | Related work grouped | Tiny tasks split artificially |
513
+ | V2 Check | Pass | Fail |
514
+ |----------|------|------|
515
+ | Task ID | `### T001:` | `### Task 1:`, `- [ ]` |
516
+ | Status | `- Status: pending` | Missing, invalid value |
517
+ | Size | `- Size: M` | Missing, invalid value |
518
+ | Deliverables | `**Deliverables:**` + bullets | Missing section |
519
+ | Verify | `**Verify:** \`cmd\`` | Missing section |
520
+ | Separators | `---` between tasks | Missing |
521
+
522
+ | Content Check | Pass | Fail |
523
+ |---------------|------|------|
524
+ | Code | Only in Verify | In Deliverables |
525
+ | Files | No paths | `src/file.ts:42` |
526
+ | Deliverables | WHAT (outcomes) | HOW (instructions) |
527
+ | Batching | 3-10 tasks | 20+ micro-tasks |
379
528
 
380
- ## When to Use This Skill
529
+ ## When to Use
381
530
 
382
531
  **Use `/review-spec` when:**
383
- - You just generated a SPEC with `/create-spec`
384
- - User asks you to validate a SPEC before starting work
385
- - You're unsure if a SPEC follows conventions
386
- - Running `ralphie spec --auto` (autonomous mode uses this for self-review)
532
+ - Just generated a spec with `/ralphie-spec` or `ralphie spec` CLI
533
+ - User asks to validate a spec before starting work
534
+ - Running `ralphie spec` (uses this for self-review)
535
+ - Unsure if spec follows V2 conventions
387
536
 
388
537
  **Don't use when:**
389
- - SPEC has already been validated and user is ready to start iterations
390
- - You're mid-iteration (use `/ralphie-iterate` instead)
538
+ - Spec already validated and user is ready to start
539
+ - Mid-iteration (use `/ralphie-iterate` instead)