aiblueprint-cli 1.4.22 → 1.4.24

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 (90) hide show
  1. package/claude-code-config/skills/git-commit/SKILL.md +42 -0
  2. package/claude-code-config/{commands/git/create-pr.md → skills/git-create-pr/SKILL.md} +12 -18
  3. package/claude-code-config/skills/git-fix-pr-comments/SKILL.md +51 -0
  4. package/claude-code-config/skills/git-merge/SKILL.md +68 -0
  5. package/claude-code-config/skills/{claude-memory → meta-claude-memory}/SKILL.md +7 -2
  6. package/claude-code-config/skills/meta-claude-memory/references/rules-directory-guide.md +298 -0
  7. package/claude-code-config/skills/meta-prompt-creator/SKILL.md +285 -0
  8. package/claude-code-config/skills/meta-prompt-creator/references/anthropic-best-practices.md +126 -0
  9. package/claude-code-config/skills/meta-prompt-creator/references/anti-patterns.md +57 -0
  10. package/claude-code-config/skills/meta-prompt-creator/references/clarity-principles.md +54 -0
  11. package/claude-code-config/skills/meta-prompt-creator/references/context-management.md +389 -0
  12. package/claude-code-config/skills/meta-prompt-creator/references/few-shot-patterns.md +47 -0
  13. package/claude-code-config/skills/meta-prompt-creator/references/openai-best-practices.md +50 -0
  14. package/claude-code-config/skills/meta-prompt-creator/references/prompt-templates.md +110 -0
  15. package/claude-code-config/skills/meta-prompt-creator/references/reasoning-techniques.md +52 -0
  16. package/claude-code-config/skills/meta-prompt-creator/references/system-prompt-patterns.md +48 -0
  17. package/claude-code-config/skills/meta-prompt-creator/references/xml-structure.md +36 -0
  18. package/claude-code-config/skills/meta-skill-creator/LICENSE.txt +202 -0
  19. package/claude-code-config/skills/meta-skill-creator/SKILL.md +421 -0
  20. package/claude-code-config/skills/meta-skill-creator/package.json +5 -0
  21. package/claude-code-config/skills/meta-skill-creator/references/output-patterns.md +82 -0
  22. package/claude-code-config/skills/meta-skill-creator/references/progressive-disclosure-patterns.md +374 -0
  23. package/claude-code-config/skills/meta-skill-creator/references/prompting-integration.md +363 -0
  24. package/claude-code-config/skills/meta-skill-creator/references/real-world-examples.md +513 -0
  25. package/claude-code-config/skills/meta-skill-creator/references/script-patterns.md +385 -0
  26. package/claude-code-config/skills/meta-skill-creator/references/workflows.md +28 -0
  27. package/claude-code-config/skills/meta-skill-creator/references/xml-tag-guide.md +606 -0
  28. package/claude-code-config/skills/meta-skill-creator/scripts/init-skill.ts +214 -0
  29. package/claude-code-config/skills/meta-skill-creator/scripts/package-skill.ts +146 -0
  30. package/claude-code-config/skills/meta-skill-creator/scripts/validate.ts +138 -0
  31. package/claude-code-config/skills/{create-subagents → meta-subagent-creator}/SKILL.md +41 -15
  32. package/claude-code-config/skills/{setup-ralph → ralph-loop}/steps/step-00-init.md +2 -3
  33. package/claude-code-config/skills/utils-fix-errors/SKILL.md +61 -0
  34. package/claude-code-config/skills/utils-fix-grammar/SKILL.md +59 -0
  35. package/claude-code-config/skills/utils-oneshot/SKILL.md +56 -0
  36. package/claude-code-config/skills/workflow-apex/SKILL.md +303 -0
  37. package/claude-code-config/skills/workflow-apex/scripts/setup-templates.sh +134 -0
  38. package/claude-code-config/skills/workflow-apex/scripts/update-progress.sh +80 -0
  39. package/claude-code-config/skills/workflow-apex/steps/step-00-init.md +288 -0
  40. package/claude-code-config/skills/workflow-apex/steps/step-00b-branch.md +126 -0
  41. package/claude-code-config/skills/workflow-apex/steps/step-00b-economy.md +244 -0
  42. package/claude-code-config/skills/workflow-apex/steps/step-00b-interactive.md +153 -0
  43. package/claude-code-config/skills/workflow-apex/steps/step-01-analyze.md +361 -0
  44. package/claude-code-config/skills/workflow-apex/steps/step-02-plan.md +264 -0
  45. package/claude-code-config/skills/workflow-apex/steps/step-03-execute.md +239 -0
  46. package/claude-code-config/skills/workflow-apex/steps/step-04-validate.md +264 -0
  47. package/claude-code-config/skills/workflow-apex/steps/step-05-examine.md +294 -0
  48. package/claude-code-config/skills/workflow-apex/steps/step-06-resolve.md +237 -0
  49. package/claude-code-config/skills/workflow-apex/steps/step-07-tests.md +250 -0
  50. package/claude-code-config/skills/workflow-apex/steps/step-08-run-tests.md +308 -0
  51. package/claude-code-config/skills/workflow-apex/steps/step-09-finish.md +193 -0
  52. package/claude-code-config/skills/workflow-apex/templates/00-context.md +51 -0
  53. package/claude-code-config/skills/workflow-apex/templates/01-analyze.md +10 -0
  54. package/claude-code-config/skills/workflow-apex/templates/02-plan.md +10 -0
  55. package/claude-code-config/skills/workflow-apex/templates/03-execute.md +10 -0
  56. package/claude-code-config/skills/workflow-apex/templates/04-validate.md +10 -0
  57. package/claude-code-config/skills/workflow-apex/templates/05-examine.md +10 -0
  58. package/claude-code-config/skills/workflow-apex/templates/06-resolve.md +10 -0
  59. package/claude-code-config/skills/workflow-apex/templates/07-tests.md +10 -0
  60. package/claude-code-config/skills/workflow-apex/templates/08-run-tests.md +10 -0
  61. package/claude-code-config/skills/workflow-apex/templates/09-finish.md +10 -0
  62. package/claude-code-config/skills/workflow-apex/templates/README.md +195 -0
  63. package/claude-code-config/skills/workflow-apex/templates/step-complete.md +7 -0
  64. package/dist/cli.js +46 -3
  65. package/package.json +1 -1
  66. package/claude-code-config/commands/explore.md +0 -90
  67. package/claude-code-config/commands/git/commit.md +0 -60
  68. package/claude-code-config/commands/git/fix-pr-comments.md +0 -59
  69. package/claude-code-config/commands/oneshot.md +0 -57
  70. package/claude-code-config/skills/create-slash-commands/SKILL.md +0 -1110
  71. package/claude-code-config/skills/create-slash-commands/references/arguments.md +0 -273
  72. package/claude-code-config/skills/create-slash-commands/references/patterns.md +0 -947
  73. package/claude-code-config/skills/create-slash-commands/references/prompt-examples.md +0 -656
  74. package/claude-code-config/skills/create-slash-commands/references/tool-restrictions.md +0 -389
  75. /package/claude-code-config/skills/{claude-memory → meta-claude-memory}/references/comprehensive-example.md +0 -0
  76. /package/claude-code-config/skills/{claude-memory → meta-claude-memory}/references/project-patterns.md +0 -0
  77. /package/claude-code-config/skills/{claude-memory → meta-claude-memory}/references/prompting-techniques.md +0 -0
  78. /package/claude-code-config/skills/{claude-memory → meta-claude-memory}/references/section-templates.md +0 -0
  79. /package/claude-code-config/skills/{create-subagents → meta-subagent-creator}/references/context-management.md +0 -0
  80. /package/claude-code-config/skills/{create-subagents → meta-subagent-creator}/references/debugging-agents.md +0 -0
  81. /package/claude-code-config/skills/{create-subagents → meta-subagent-creator}/references/error-handling-and-recovery.md +0 -0
  82. /package/claude-code-config/skills/{create-subagents → meta-subagent-creator}/references/evaluation-and-testing.md +0 -0
  83. /package/claude-code-config/skills/{create-subagents → meta-subagent-creator}/references/orchestration-patterns.md +0 -0
  84. /package/claude-code-config/skills/{create-subagents → meta-subagent-creator}/references/subagents.md +0 -0
  85. /package/claude-code-config/skills/{create-subagents → meta-subagent-creator}/references/writing-subagent-prompts.md +0 -0
  86. /package/claude-code-config/skills/{setup-ralph → ralph-loop}/SKILL.md +0 -0
  87. /package/claude-code-config/skills/{setup-ralph → ralph-loop}/scripts/setup.sh +0 -0
  88. /package/claude-code-config/skills/{setup-ralph → ralph-loop}/steps/step-01-interactive-prd.md +0 -0
  89. /package/claude-code-config/skills/{setup-ralph → ralph-loop}/steps/step-02-create-stories.md +0 -0
  90. /package/claude-code-config/skills/{setup-ralph → ralph-loop}/steps/step-03-finish.md +0 -0
@@ -0,0 +1,237 @@
1
+ ---
2
+ name: step-06-resolve
3
+ description: Resolve findings - interactively address review issues
4
+ prev_step: steps/step-05-examine.md
5
+ next_step: COMPLETE
6
+ ---
7
+
8
+ # Step 6: Resolve Findings
9
+
10
+ ## MANDATORY EXECUTION RULES (READ FIRST):
11
+
12
+ - 🛑 NEVER auto-fix Noise or Uncertain findings
13
+ - 🛑 NEVER skip validation after fixes
14
+ - ✅ ALWAYS present resolution options to user (unless auto_mode)
15
+ - ✅ ALWAYS validate after applying fixes
16
+ - ✅ ALWAYS provide clear completion summary
17
+ - 📋 YOU ARE A RESOLVER, addressing identified issues
18
+ - 💬 FOCUS on "How do we fix these issues?"
19
+ - 🚫 FORBIDDEN to proceed with failing validation
20
+
21
+ ## EXECUTION PROTOCOLS:
22
+
23
+ - 🎯 Present resolution options first
24
+ - 💾 Log each fix applied (if save_mode)
25
+ - 📖 Validate after all fixes
26
+ - 🚫 FORBIDDEN to skip post-fix validation
27
+
28
+ ## CONTEXT BOUNDARIES:
29
+
30
+ - Findings from step-05 are classified
31
+ - Some are Real, some Noise, some Uncertain
32
+ - User may want different resolution strategies
33
+ - Must validate after any changes
34
+
35
+ ## YOUR TASK:
36
+
37
+ Address adversarial review findings interactively - fix real issues, dismiss noise, discuss uncertain items.
38
+
39
+ ---
40
+
41
+ <available_state>
42
+ From previous steps:
43
+
44
+ | Variable | Description |
45
+ |----------|-------------|
46
+ | `{task_description}` | What was implemented |
47
+ | `{task_id}` | Kebab-case identifier |
48
+ | `{auto_mode}` | Auto-fix Real findings |
49
+ | `{save_mode}` | Save outputs to files |
50
+ | `{output_dir}` | Path to output (if save_mode) |
51
+ | Findings table | IDs, severity, validity |
52
+ | Finding todos | For tracking |
53
+ </available_state>
54
+
55
+ ---
56
+
57
+ ## EXECUTION SEQUENCE:
58
+
59
+ ### 1. Initialize Save Output (if save_mode)
60
+
61
+ **If `{save_mode}` = true:**
62
+
63
+ ```bash
64
+ bash {skill_dir}/scripts/update-progress.sh "{task_id}" "06" "resolve" "in_progress"
65
+ ```
66
+
67
+ Append logs to `{output_dir}/06-resolve.md` as you work.
68
+
69
+ ### 2. Present Resolution Options
70
+
71
+ **If `{auto_mode}` = true:**
72
+ → Auto-fix all "Real" findings, skip Noise/Uncertain
73
+
74
+ **If `{auto_mode}` = false:**
75
+
76
+ ```yaml
77
+ questions:
78
+ - header: "Resolution"
79
+ question: "How would you like to handle these findings?"
80
+ options:
81
+ - label: "Auto-fix Real issues (Recommended)"
82
+ description: "Fix 'Real' findings, skip noise/uncertain"
83
+ - label: "Walk through each finding"
84
+ description: "Decide on each finding individually"
85
+ - label: "Fix only critical"
86
+ description: "Only fix CRITICAL/BLOCKING issues"
87
+ - label: "Skip all"
88
+ description: "Acknowledge but don't change"
89
+ multiSelect: false
90
+ ```
91
+
92
+ ### 3. Apply Fixes Based on Choice
93
+
94
+ **Auto-fix Real:**
95
+ 1. Filter to Real findings only
96
+ 2. For each: Read file → Apply fix → Verify
97
+ 3. Log each fix
98
+
99
+ **Walk through each:**
100
+ For each finding in severity order:
101
+
102
+ ```yaml
103
+ questions:
104
+ - header: "F1"
105
+ question: "How should we handle this finding?"
106
+ options:
107
+ - label: "Fix now (Recommended)"
108
+ description: "Apply the suggested fix"
109
+ - label: "Skip"
110
+ description: "Acknowledge but don't fix"
111
+ - label: "Discuss"
112
+ description: "Need more context"
113
+ - label: "Mark as noise"
114
+ description: "Not a real issue"
115
+ multiSelect: false
116
+ ```
117
+
118
+ **Fix only critical:**
119
+ 1. Filter to CRITICAL/BLOCKING only
120
+ 2. Auto-fix those, skip others
121
+
122
+ **Skip all:**
123
+ 1. Acknowledge findings
124
+ 2. If Critical/High exist, confirm:
125
+
126
+ ```yaml
127
+ questions:
128
+ - header: "Confirm"
129
+ question: "You have unresolved Critical/High findings. Proceed anyway?"
130
+ options:
131
+ - label: "Go back and fix"
132
+ description: "Return to resolution options"
133
+ - label: "Proceed anyway"
134
+ description: "Accept risks, continue"
135
+ - label: "Fix only critical"
136
+ description: "Just fix critical issues"
137
+ multiSelect: false
138
+ ```
139
+
140
+ ### 4. Post-Resolution Validation
141
+
142
+ After any fixes:
143
+
144
+ ```bash
145
+ pnpm run typecheck && pnpm run lint
146
+ ```
147
+
148
+ Both MUST pass.
149
+
150
+ ### 5. Resolution Summary
151
+
152
+ ```
153
+ **Resolution Complete**
154
+
155
+ **Fixed:** {count}
156
+ - F1: Parameterized SQL query in auth.ts:42
157
+ - F2: Added null check in handler.ts:78
158
+
159
+ **Skipped:** {count}
160
+ - F3: Complex function (uncertain)
161
+
162
+ **Validation:** ✓ Passed
163
+ ```
164
+
165
+ ### 6. Complete Save Output (if save_mode)
166
+
167
+ **If `{save_mode}` = true:**
168
+
169
+ Append to `{output_dir}/06-resolve.md`:
170
+ ```markdown
171
+ ---
172
+ ## Step Complete
173
+ **Status:** ✓ Complete
174
+ **Findings fixed:** {count}
175
+ **Findings skipped:** {count}
176
+ **Validation:** ✓ Passed
177
+ **Timestamp:** {ISO timestamp}
178
+ ```
179
+
180
+ ### 7. Completion Summary
181
+
182
+ ```
183
+ **APEX Workflow Complete**
184
+
185
+ **Task:** {task_description}
186
+
187
+ **Implementation:**
188
+ - Files modified: {count}
189
+ - All checks passing: ✓
190
+
191
+ **Review:**
192
+ - Findings identified: {total}
193
+ - Findings resolved: {fixed}
194
+ - Findings skipped: {skipped}
195
+
196
+ **Next Steps:**
197
+ - [ ] Commit changes
198
+ - [ ] Run full test suite
199
+ - [ ] Deploy when ready
200
+ ```
201
+
202
+ ---
203
+
204
+ ## SUCCESS METRICS:
205
+
206
+ ✅ User chose resolution approach
207
+ ✅ All chosen fixes applied correctly
208
+ ✅ Validation passes after fixes
209
+ ✅ Clear summary of resolved/skipped
210
+ ✅ User understands next steps
211
+
212
+ ## FAILURE MODES:
213
+
214
+ ❌ Auto-fixing Noise or Uncertain findings
215
+ ❌ Not validating after fixes
216
+ ❌ No clear completion summary
217
+ ❌ Proceeding with failing validation
218
+ ❌ **CRITICAL**: Not using AskUserQuestion for decisions
219
+
220
+ ## RESOLUTION PROTOCOLS:
221
+
222
+ - Only auto-fix Real findings
223
+ - Validate after EVERY fix round
224
+ - Clear summary at the end
225
+ - User controls final decision
226
+
227
+ ---
228
+
229
+ ## NEXT STEP:
230
+
231
+ Based on flags:
232
+ - **If pr_mode:** Load `./step-09-finish.md` to create pull request
233
+ - **Otherwise:** Workflow complete - show summary
234
+
235
+ <critical>
236
+ Remember: Always validate after fixes - never proceed with failing checks!
237
+ </critical>
@@ -0,0 +1,250 @@
1
+ ---
2
+ name: step-07-tests
3
+ description: Smart test analysis and creation - analyze patterns, create appropriate tests
4
+ prev_step: steps/step-04-validate.md
5
+ next_step: steps/step-08-run-tests.md
6
+ ---
7
+
8
+ # Step 7: Tests (Analysis & Creation)
9
+
10
+ ## MANDATORY EXECUTION RULES (READ FIRST):
11
+
12
+ - 🛑 NEVER create tests without analyzing existing patterns first
13
+ - 🛑 NEVER use wrong test type (unit when integration needed)
14
+ - ✅ ALWAYS analyze test infrastructure BEFORE writing
15
+ - ✅ ALWAYS follow existing test conventions exactly
16
+ - ✅ ALWAYS map tests to acceptance criteria
17
+ - 📋 YOU ARE A TEST ENGINEER, not a code generator
18
+ - 💬 FOCUS on "What tests does this ACTUALLY need?"
19
+ - 🚫 FORBIDDEN to ignore project test conventions
20
+
21
+ ## EXECUTION PROTOCOLS:
22
+
23
+ - 🎯 Analyze test infrastructure first
24
+ - 💾 Document test strategy (if save_mode)
25
+ - 📖 Read similar tests before writing
26
+ - 🚫 FORBIDDEN to write tests without reading examples
27
+
28
+ ## CONTEXT BOUNDARIES:
29
+
30
+ - Implementation is complete and validated
31
+ - Test infrastructure exists (discovered in this step)
32
+ - Existing tests show conventions to follow
33
+ - Focus on creating RIGHT tests, not just tests
34
+
35
+ ## YOUR TASK:
36
+
37
+ Analyze existing test patterns and create appropriate tests for the implementation.
38
+
39
+ ---
40
+
41
+ <available_state>
42
+ From previous steps:
43
+
44
+ | Variable | Description |
45
+ |----------|-------------|
46
+ | `{task_description}` | What was implemented |
47
+ | `{task_id}` | Kebab-case identifier |
48
+ | `{auto_mode}` | Skip confirmations |
49
+ | `{save_mode}` | Save outputs to files |
50
+ | `{economy_mode}` | Lighter test analysis |
51
+ | `{output_dir}` | Path to output (if save_mode) |
52
+ | Files modified | From implementation |
53
+ | Acceptance criteria | From step-01 |
54
+ </available_state>
55
+
56
+ ---
57
+
58
+ ## EXECUTION SEQUENCE:
59
+
60
+ ### 1. Initialize Save Output (if save_mode)
61
+
62
+ **If `{save_mode}` = true:**
63
+
64
+ ```bash
65
+ bash {skill_dir}/scripts/update-progress.sh "{task_id}" "07" "tests" "in_progress"
66
+ ```
67
+
68
+ Append analysis to `{output_dir}/07-tests.md` as you work.
69
+
70
+ ### 2. Analyze Test Infrastructure
71
+
72
+ **2.1 Discover Framework**
73
+ ```bash
74
+ cat package.json | grep -E "(jest|vitest|mocha|playwright|testing-library)"
75
+ ```
76
+
77
+ **2.2 Find Config**
78
+ ```bash
79
+ ls -la | grep -E "(jest|vitest|playwright)"
80
+ ```
81
+
82
+ **2.3 Find Test Commands**
83
+ ```bash
84
+ cat package.json | grep -A 5 '"scripts"' | grep -E "(test|spec)"
85
+ ```
86
+
87
+ ### 3. Analyze Existing Test Patterns
88
+
89
+ **If `{economy_mode}` = true:**
90
+ → Read 1 similar test file for patterns
91
+
92
+ **If `{economy_mode}` = false:**
93
+ → Read 2-3 similar test files
94
+
95
+ **Pattern Checklist:**
96
+ - [ ] describe/it vs test() syntax
97
+ - [ ] Setup/teardown patterns
98
+ - [ ] Mocking approach
99
+ - [ ] Assertion style
100
+ - [ ] Test data approach
101
+
102
+ ### 4. Determine Test Strategy
103
+
104
+ | Implementation Type | Test Type |
105
+ |--------------------|-----------|
106
+ | API Route | Integration with supertest/fetch |
107
+ | Service/Logic | Integration with real deps |
108
+ | Utility Function | Unit with mocks |
109
+ | React Component | Component with testing-library |
110
+ | Full Feature | Integration + E2E |
111
+
112
+ ### 5. Create Test Plan
113
+
114
+ ```markdown
115
+ ## Test Plan
116
+
117
+ **Framework:** {jest/vitest}
118
+ **Command:** `pnpm test`
119
+
120
+ ### Tests to Create
121
+
122
+ **Integration:** `src/auth/register.test.ts`
123
+ - creates user with valid data (happy path)
124
+ - rejects invalid email (error case)
125
+ - handles auth failure (error case)
126
+
127
+ **Unit:** `src/utils/validation.test.ts`
128
+ - validates correct email
129
+ - rejects malformed email
130
+ ```
131
+
132
+ **If `{auto_mode}` = false:**
133
+
134
+ ```yaml
135
+ questions:
136
+ - header: "Tests"
137
+ question: "Review the test plan. Ready to create tests?"
138
+ options:
139
+ - label: "Create tests (Recommended)"
140
+ description: "Proceed with planned tests"
141
+ - label: "Add more tests"
142
+ description: "I want additional test cases"
143
+ - label: "Modify approach"
144
+ description: "Change the strategy"
145
+ - label: "Skip tests"
146
+ description: "Don't create tests"
147
+ multiSelect: false
148
+ ```
149
+
150
+ ### 6. Create Tests
151
+
152
+ **CRITICAL: Follow existing patterns EXACTLY**
153
+
154
+ 1. Read similar test for reference
155
+ 2. Create test file matching structure
156
+ 3. Write tests following conventions
157
+
158
+ ```typescript
159
+ import { describe, it, expect, beforeEach } from 'vitest'
160
+
161
+ describe('POST /api/auth/register', () => {
162
+ beforeEach(async () => {
163
+ await db.user.deleteMany()
164
+ })
165
+
166
+ it('creates user with valid data', async () => {
167
+ const response = await client.post('/api/auth/register', {
168
+ email: 'test@example.com',
169
+ password: 'SecurePass123!'
170
+ })
171
+
172
+ expect(response.status).toBe(201)
173
+ })
174
+
175
+ it('rejects invalid email', async () => {
176
+ const response = await client.post('/api/auth/register', {
177
+ email: 'invalid',
178
+ password: 'SecurePass123!'
179
+ })
180
+
181
+ expect(response.status).toBe(400)
182
+ })
183
+ })
184
+ ```
185
+
186
+ ### 7. Verify Tests
187
+
188
+ ```bash
189
+ pnpm run typecheck
190
+ ```
191
+
192
+ List created tests:
193
+ ```
194
+ **Tests Created:**
195
+ - `src/auth/register.test.ts` (3 tests)
196
+ - `src/utils/validation.test.ts` (2 tests)
197
+ ```
198
+
199
+ ### 8. Complete Save Output (if save_mode)
200
+
201
+ **If `{save_mode}` = true:**
202
+
203
+ Append to `{output_dir}/07-tests.md`:
204
+ ```markdown
205
+ ---
206
+ ## Step Complete
207
+ **Status:** ✓ Complete
208
+ **Tests created:** {count}
209
+ **Test files:** {list}
210
+ **Next:** step-08-run-tests.md
211
+ **Timestamp:** {ISO timestamp}
212
+ ```
213
+
214
+ ---
215
+
216
+ ## SUCCESS METRICS:
217
+
218
+ ✅ Test infrastructure analyzed
219
+ ✅ Existing patterns studied
220
+ ✅ Appropriate test types chosen
221
+ ✅ Tests follow codebase conventions
222
+ ✅ Tests pass syntax check
223
+ ✅ All AC have corresponding tests
224
+
225
+ ## FAILURE MODES:
226
+
227
+ ❌ Writing tests without analyzing patterns
228
+ ❌ Wrong test type for implementation
229
+ ❌ Ignoring project conventions
230
+ ❌ Tests don't match acceptance criteria
231
+ ❌ Over-testing (testing implementation, not behavior)
232
+ ❌ **CRITICAL**: Not using AskUserQuestion for approval
233
+
234
+ ## TEST PROTOCOLS:
235
+
236
+ - Analyze BEFORE writing
237
+ - Follow existing patterns EXACTLY
238
+ - Test behavior, not implementation
239
+ - Map to acceptance criteria
240
+ - Create minimal, focused tests
241
+
242
+ ---
243
+
244
+ ## NEXT STEP:
245
+
246
+ After tests created, load `./step-08-run-tests.md`
247
+
248
+ <critical>
249
+ Remember: Create the RIGHT tests - analyze patterns first, then write!
250
+ </critical>