@thierrynakoa/fire-flow 10.0.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.
Files changed (215) hide show
  1. package/.claude-plugin/plugin.json +64 -0
  2. package/ARCHITECTURE-DIAGRAM.md +440 -0
  3. package/COMMAND-REFERENCE.md +172 -0
  4. package/DOMINION-FLOW-OVERVIEW.md +421 -0
  5. package/LICENSE +21 -0
  6. package/QUICK-START.md +351 -0
  7. package/README.md +398 -0
  8. package/TROUBLESHOOTING.md +264 -0
  9. package/agents/fire-codebase-mapper.md +484 -0
  10. package/agents/fire-debugger.md +535 -0
  11. package/agents/fire-executor.md +949 -0
  12. package/agents/fire-fact-checker.md +276 -0
  13. package/agents/fire-learncoding-explainer.md +237 -0
  14. package/agents/fire-learncoding-walker.md +147 -0
  15. package/agents/fire-planner.md +675 -0
  16. package/agents/fire-project-researcher.md +155 -0
  17. package/agents/fire-research-synthesizer.md +166 -0
  18. package/agents/fire-researcher.md +723 -0
  19. package/agents/fire-reviewer.md +499 -0
  20. package/agents/fire-roadmapper.md +203 -0
  21. package/agents/fire-verifier.md +880 -0
  22. package/bin/cli.js +208 -0
  23. package/commands/fire-0-orient.md +476 -0
  24. package/commands/fire-1-new.md +281 -0
  25. package/commands/fire-1a-discuss.md +455 -0
  26. package/commands/fire-2-plan.md +527 -0
  27. package/commands/fire-3-execute.md +1303 -0
  28. package/commands/fire-4-verify.md +845 -0
  29. package/commands/fire-5-handoff.md +515 -0
  30. package/commands/fire-6-resume.md +501 -0
  31. package/commands/fire-7-review.md +409 -0
  32. package/commands/fire-add-new-skill.md +598 -0
  33. package/commands/fire-analytics.md +499 -0
  34. package/commands/fire-assumptions.md +78 -0
  35. package/commands/fire-autonomous.md +528 -0
  36. package/commands/fire-brainstorm.md +413 -0
  37. package/commands/fire-complete-milestone.md +270 -0
  38. package/commands/fire-dashboard.md +375 -0
  39. package/commands/fire-debug.md +663 -0
  40. package/commands/fire-discover.md +616 -0
  41. package/commands/fire-double-check.md +460 -0
  42. package/commands/fire-execute-plan.md +182 -0
  43. package/commands/fire-learncoding.md +242 -0
  44. package/commands/fire-loop-resume.md +272 -0
  45. package/commands/fire-loop-stop.md +198 -0
  46. package/commands/fire-loop.md +1168 -0
  47. package/commands/fire-map-codebase.md +313 -0
  48. package/commands/fire-new-milestone.md +356 -0
  49. package/commands/fire-reflect.md +235 -0
  50. package/commands/fire-research.md +246 -0
  51. package/commands/fire-search.md +330 -0
  52. package/commands/fire-security-audit-repo.md +293 -0
  53. package/commands/fire-security-scan.md +484 -0
  54. package/commands/fire-session-summary.md +252 -0
  55. package/commands/fire-skills-diff.md +506 -0
  56. package/commands/fire-skills-history.md +388 -0
  57. package/commands/fire-skills-rollback.md +408 -0
  58. package/commands/fire-skills-sync.md +470 -0
  59. package/commands/fire-test.md +520 -0
  60. package/commands/fire-todos.md +335 -0
  61. package/commands/fire-transition.md +186 -0
  62. package/commands/fire-update.md +312 -0
  63. package/commands/fire-verify-uat.md +146 -0
  64. package/commands/fire-vuln-scan.md +493 -0
  65. package/hooks/hooks.json +16 -0
  66. package/hooks/run-hook.cmd +69 -0
  67. package/hooks/run-hook.sh +8 -0
  68. package/hooks/run-session-end.cmd +49 -0
  69. package/hooks/run-session-end.sh +7 -0
  70. package/hooks/session-end.sh +90 -0
  71. package/hooks/session-start.sh +111 -0
  72. package/package.json +52 -0
  73. package/plugin.json +7 -0
  74. package/references/auto-skill-extraction.md +136 -0
  75. package/references/behavioral-directives.md +365 -0
  76. package/references/blocker-tracking.md +155 -0
  77. package/references/checkpoints.md +165 -0
  78. package/references/circuit-breaker.md +410 -0
  79. package/references/context-engineering.md +587 -0
  80. package/references/decision-time-guidance.md +289 -0
  81. package/references/error-classification.md +326 -0
  82. package/references/execution-mode-intelligence.md +242 -0
  83. package/references/git-integration.md +217 -0
  84. package/references/honesty-protocols.md +304 -0
  85. package/references/integration-architecture.md +470 -0
  86. package/references/issue-to-pr-pipeline.md +150 -0
  87. package/references/metrics-and-trends.md +234 -0
  88. package/references/playwright-e2e-testing.md +326 -0
  89. package/references/questioning.md +125 -0
  90. package/references/research-improvements.md +110 -0
  91. package/references/skills-usage-guide.md +429 -0
  92. package/references/tdd.md +131 -0
  93. package/references/testing-enforcement.md +192 -0
  94. package/references/ui-brand.md +383 -0
  95. package/references/validation-checklist.md +456 -0
  96. package/references/verification-patterns.md +187 -0
  97. package/references/warrior-principles.md +173 -0
  98. package/skills-library/SKILLS-INDEX.md +588 -0
  99. package/skills-library/_general/frontend/html-visual-reports.md +292 -0
  100. package/skills-library/_general/methodology/debug-swarm-researcher-escape-hatch.md +240 -0
  101. package/skills-library/_general/methodology/learncoding-agentic-pattern.md +114 -0
  102. package/skills-library/_general/methodology/shell-autonomous-loop-fixplan.md +238 -0
  103. package/skills-library/basics/api-rest-basics.md +162 -0
  104. package/skills-library/basics/env-variables.md +96 -0
  105. package/skills-library/basics/error-handling-basics.md +125 -0
  106. package/skills-library/basics/git-commit-conventions.md +106 -0
  107. package/skills-library/basics/readme-template.md +108 -0
  108. package/skills-library/common-tasks/async-await-patterns.md +157 -0
  109. package/skills-library/common-tasks/auth-jwt-basics.md +164 -0
  110. package/skills-library/common-tasks/database-schema-design.md +166 -0
  111. package/skills-library/common-tasks/file-upload-basics.md +166 -0
  112. package/skills-library/common-tasks/form-validation.md +159 -0
  113. package/skills-library/debugging/FAILURE_TAXONOMY_CLASSIFICATION.md +117 -0
  114. package/skills-library/debugging/THREE_AGENT_HYPOTHESIS_DEBUGGING.md +86 -0
  115. package/skills-library/methodology/BREATH_BASED_PARALLEL_EXECUTION.md +678 -0
  116. package/skills-library/methodology/CONFIDENCE_GATED_EXECUTION.md +243 -0
  117. package/skills-library/methodology/EVIDENCE_BASED_VALIDATION.md +308 -0
  118. package/skills-library/methodology/MULTI_PERSPECTIVE_CODE_REVIEW.md +330 -0
  119. package/skills-library/methodology/PATH_VERIFICATION_GATE.md +211 -0
  120. package/skills-library/methodology/REFLEXION_MEMORY_PATTERN.md +183 -0
  121. package/skills-library/methodology/RESEARCH_BACKED_WORKFLOW_UPGRADE.md +263 -0
  122. package/skills-library/methodology/SABBATH_REST_PATTERN.md +267 -0
  123. package/skills-library/methodology/STONE_AND_SCAFFOLD.md +220 -0
  124. package/skills-library/performance/cache-augmented-generation.md +172 -0
  125. package/skills-library/quality-safety/debugging-steps.md +147 -0
  126. package/skills-library/quality-safety/deployment-checklist.md +155 -0
  127. package/skills-library/quality-safety/security-checklist.md +204 -0
  128. package/skills-library/quality-safety/testing-basics.md +180 -0
  129. package/skills-library/security/agent-security-scanner.md +445 -0
  130. package/skills-library/specialists/api-architecture/api-designer.md +49 -0
  131. package/skills-library/specialists/api-architecture/graphql-architect.md +49 -0
  132. package/skills-library/specialists/api-architecture/mcp-developer.md +51 -0
  133. package/skills-library/specialists/api-architecture/microservices-architect.md +50 -0
  134. package/skills-library/specialists/api-architecture/websocket-engineer.md +48 -0
  135. package/skills-library/specialists/backend/django-expert.md +52 -0
  136. package/skills-library/specialists/backend/fastapi-expert.md +52 -0
  137. package/skills-library/specialists/backend/laravel-specialist.md +52 -0
  138. package/skills-library/specialists/backend/nestjs-expert.md +51 -0
  139. package/skills-library/specialists/backend/rails-expert.md +53 -0
  140. package/skills-library/specialists/backend/spring-boot-engineer.md +56 -0
  141. package/skills-library/specialists/data-ml/fine-tuning-expert.md +48 -0
  142. package/skills-library/specialists/data-ml/ml-pipeline.md +47 -0
  143. package/skills-library/specialists/data-ml/pandas-pro.md +47 -0
  144. package/skills-library/specialists/data-ml/rag-architect.md +51 -0
  145. package/skills-library/specialists/data-ml/spark-engineer.md +47 -0
  146. package/skills-library/specialists/frontend/angular-architect.md +52 -0
  147. package/skills-library/specialists/frontend/flutter-expert.md +51 -0
  148. package/skills-library/specialists/frontend/nextjs-developer.md +54 -0
  149. package/skills-library/specialists/frontend/react-native-expert.md +50 -0
  150. package/skills-library/specialists/frontend/vue-expert.md +51 -0
  151. package/skills-library/specialists/infrastructure/chaos-engineer.md +74 -0
  152. package/skills-library/specialists/infrastructure/cloud-architect.md +70 -0
  153. package/skills-library/specialists/infrastructure/database-optimizer.md +64 -0
  154. package/skills-library/specialists/infrastructure/devops-engineer.md +70 -0
  155. package/skills-library/specialists/infrastructure/kubernetes-specialist.md +52 -0
  156. package/skills-library/specialists/infrastructure/monitoring-expert.md +70 -0
  157. package/skills-library/specialists/infrastructure/sre-engineer.md +70 -0
  158. package/skills-library/specialists/infrastructure/terraform-engineer.md +51 -0
  159. package/skills-library/specialists/languages/cpp-pro.md +74 -0
  160. package/skills-library/specialists/languages/csharp-developer.md +69 -0
  161. package/skills-library/specialists/languages/dotnet-core-expert.md +54 -0
  162. package/skills-library/specialists/languages/golang-pro.md +51 -0
  163. package/skills-library/specialists/languages/java-architect.md +49 -0
  164. package/skills-library/specialists/languages/javascript-pro.md +68 -0
  165. package/skills-library/specialists/languages/kotlin-specialist.md +68 -0
  166. package/skills-library/specialists/languages/php-pro.md +49 -0
  167. package/skills-library/specialists/languages/python-pro.md +52 -0
  168. package/skills-library/specialists/languages/react-expert.md +51 -0
  169. package/skills-library/specialists/languages/rust-engineer.md +50 -0
  170. package/skills-library/specialists/languages/sql-pro.md +56 -0
  171. package/skills-library/specialists/languages/swift-expert.md +69 -0
  172. package/skills-library/specialists/languages/typescript-pro.md +51 -0
  173. package/skills-library/specialists/platform/atlassian-mcp.md +52 -0
  174. package/skills-library/specialists/platform/embedded-systems.md +53 -0
  175. package/skills-library/specialists/platform/game-developer.md +53 -0
  176. package/skills-library/specialists/platform/salesforce-developer.md +53 -0
  177. package/skills-library/specialists/platform/shopify-expert.md +49 -0
  178. package/skills-library/specialists/platform/wordpress-pro.md +49 -0
  179. package/skills-library/specialists/quality/code-documenter.md +51 -0
  180. package/skills-library/specialists/quality/code-reviewer.md +67 -0
  181. package/skills-library/specialists/quality/debugging-wizard.md +51 -0
  182. package/skills-library/specialists/quality/fullstack-guardian.md +51 -0
  183. package/skills-library/specialists/quality/legacy-modernizer.md +50 -0
  184. package/skills-library/specialists/quality/playwright-expert.md +65 -0
  185. package/skills-library/specialists/quality/spec-miner.md +56 -0
  186. package/skills-library/specialists/quality/test-master.md +65 -0
  187. package/skills-library/specialists/security/secure-code-guardian.md +55 -0
  188. package/skills-library/specialists/security/security-reviewer.md +53 -0
  189. package/skills-library/specialists/workflow/architecture-designer.md +53 -0
  190. package/skills-library/specialists/workflow/cli-developer.md +70 -0
  191. package/skills-library/specialists/workflow/feature-forge.md +65 -0
  192. package/skills-library/specialists/workflow/prompt-engineer.md +54 -0
  193. package/skills-library/specialists/workflow/the-fool.md +62 -0
  194. package/templates/ASSUMPTIONS.md +125 -0
  195. package/templates/BLOCKERS.md +73 -0
  196. package/templates/DECISION_LOG.md +116 -0
  197. package/templates/UAT.md +96 -0
  198. package/templates/blueprint.md +94 -0
  199. package/templates/brainstorm.md +185 -0
  200. package/templates/conscience.md +92 -0
  201. package/templates/fire-handoff.md +159 -0
  202. package/templates/metrics.md +67 -0
  203. package/templates/phase-prompt.md +142 -0
  204. package/templates/record.md +131 -0
  205. package/templates/review-report.md +117 -0
  206. package/templates/skills-index.md +157 -0
  207. package/templates/verification.md +149 -0
  208. package/templates/vision.md +79 -0
  209. package/validation-config.yml +793 -0
  210. package/version.json +7 -0
  211. package/workflows/execute-phase.md +732 -0
  212. package/workflows/handoff-session.md +678 -0
  213. package/workflows/new-project.md +578 -0
  214. package/workflows/plan-phase.md +592 -0
  215. package/workflows/verify-phase.md +874 -0
@@ -0,0 +1,845 @@
1
+ ---
2
+ description: Verify phase completion with must-haves and 70-point validation
3
+ ---
4
+
5
+ # /fire-4-verify
6
+
7
+ > Verify phase N with combined must-haves and WARRIOR 70-point validation
8
+
9
+ ---
10
+
11
+ ## Purpose
12
+
13
+ Perform comprehensive verification of a completed phase by combining Dominion Flow's goal-backward must-haves verification with 70-point quality validation checklist. Generates a detailed verification report and routes to gap closure if needed.
14
+
15
+ ---
16
+
17
+ ## Arguments
18
+
19
+ ```yaml
20
+ arguments:
21
+ phase_number:
22
+ required: true
23
+ type: integer
24
+ description: "Phase number to verify (e.g., 1, 2, 3)"
25
+ example: "/fire-4-verify 3"
26
+
27
+ optional_flags:
28
+ --detailed: "Include verbose output for all checks"
29
+ --quick: "Run only critical checks (must-haves + security)"
30
+ --report-only: "Generate report without routing to gap closure"
31
+ ```
32
+
33
+ ---
34
+
35
+ ## Process
36
+
37
+ ### Step 1: Load Verification Context
38
+
39
+ ```
40
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
41
+ DOMINION FLOW > PHASE {N} VERIFICATION
42
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
43
+ ```
44
+
45
+ **Load Context:**
46
+ ```markdown
47
+ @.planning/CONSCIENCE.md
48
+ @.planning/phases/{N}-{name}/*.BLUEPRINT.md # All plans
49
+ @.planning/phases/{N}-{name}/*-RECORD.md # All summaries
50
+ ```
51
+
52
+ **Extract:**
53
+ - All must_haves from plan frontmatter
54
+ - All warrior_validation items from plans
55
+ - Skills applied during execution
56
+ - Key files created/modified
57
+
58
+ ### Step 2: Spawn fire-verifier
59
+
60
+ ```
61
+ â—† Spawning fire-verifier for Phase {N}...
62
+ ```
63
+
64
+ **Verifier Context:**
65
+ ```markdown
66
+ <verification_scope>
67
+ Phase: {N} - {name}
68
+ Plans to Verify: {list}
69
+ Total Must-Haves: {count}
70
+ WARRIOR Checks: 70 items across 8 categories
71
+ </verification_scope>
72
+
73
+ <must_haves>
74
+ {Aggregated must_haves from all plans}
75
+ </must_haves>
76
+
77
+ <warrior_checklist>
78
+ @references/validation-checklist.md
79
+ </warrior_checklist>
80
+ ```
81
+
82
+ ### Step 2.5: Spawn fire-reviewer in parallel (v8.0)
83
+
84
+ ```
85
+ IF --quick flag NOT set:
86
+
87
+ â—† Spawning fire-reviewer alongside fire-verifier...
88
+
89
+ Task(subagent_type="fire-reviewer", prompt="""
90
+ <review_scope>
91
+ Phase: {N} - {name}
92
+ Review Depth: normal
93
+ </review_scope>
94
+
95
+ <files_to_review>
96
+ {key_files from all RECORD.md frontmatter}
97
+ </files_to_review>
98
+
99
+ <plan_intent>
100
+ {Quick Summary from each RECORD.md}
101
+ </plan_intent>
102
+
103
+ <simplicity_mandate>STRICT</simplicity_mandate>
104
+
105
+ Output to: .planning/phases/{N}-{name}/{N}-REVIEW.md
106
+ """)
107
+
108
+ ELSE:
109
+ # --quick mode: skip review, only run critical checks
110
+ ```
111
+
112
+ ### Step 3: Must-Haves Verification
113
+
114
+ **Verify Truths:**
115
+ Observable behaviors that must be demonstrable.
116
+
117
+ ```markdown
118
+ ### Truths Verification
119
+
120
+ | Truth Statement | Verification Command | Result |
121
+ |-----------------|---------------------|--------|
122
+ | {statement} | {command} | PASS/FAIL |
123
+ ```
124
+
125
+ **Example:**
126
+ ```bash
127
+ # Truth: "User can paginate through results"
128
+ curl -s "http://localhost:3000/api/products?limit=5" | jq '.data | length'
129
+ # Expected: 5
130
+ # Result: PASS
131
+ ```
132
+
133
+ **Verify Artifacts:**
134
+ Files must exist with expected exports and contents.
135
+
136
+ ```markdown
137
+ ### Artifacts Verification
138
+
139
+ | File | Exports | Contains | Result |
140
+ |------|---------|----------|--------|
141
+ | {path} | {exports} | {patterns} | PASS/FAIL |
142
+ ```
143
+
144
+ **Example:**
145
+ ```bash
146
+ # Artifact: server/services/pagination.service.ts exports paginate
147
+ grep -n "export.*paginate" server/services/pagination.service.ts
148
+ # Expected: Match found
149
+ # Result: PASS
150
+ ```
151
+
152
+ **Verify Key Links:**
153
+ Components must be properly wired together.
154
+
155
+ ```markdown
156
+ ### Key Links Verification
157
+
158
+ | From | To | Via | Result |
159
+ |------|----|----|--------|
160
+ | {component-a} | {component-b} | {integration} | PASS/FAIL |
161
+ ```
162
+
163
+ **Example:**
164
+ ```bash
165
+ # Key Link: products-route uses pagination-service
166
+ grep -n "import.*pagination" server/routes/products.ts
167
+ grep -n "paginate" server/routes/products.ts
168
+ # Expected: Both match
169
+ # Result: PASS
170
+ ```
171
+
172
+ ### Step 4: WARRIOR 70-Point Validation
173
+
174
+ **Categories (8 total, 70 checks):**
175
+
176
+ #### Code Quality (6 checks)
177
+ ```bash
178
+ # 1. Project builds without errors
179
+ npm run build
180
+
181
+ # 2. No TypeScript errors
182
+ npm run typecheck
183
+
184
+ # 3. ESLint compliance
185
+ npm run lint
186
+
187
+ # 4. No console.logs in production code
188
+ grep -r "console.log" src/ --include="*.ts" --include="*.tsx" | grep -v ".test." | wc -l
189
+ # Expected: 0
190
+
191
+ # 5. Code comments present on complex functions
192
+ # Manual check or AST analysis
193
+
194
+ # 6. Functions have JSDoc/TSDoc
195
+ # Manual check or documentation tool
196
+ ```
197
+
198
+ #### Testing (5 checks)
199
+ ```bash
200
+ # 1. Unit tests passing
201
+ npm run test
202
+
203
+ # 2. Integration tests passing
204
+ npm run test:integration
205
+
206
+ # 3. Coverage > threshold (default 80%)
207
+ npm run test:coverage
208
+
209
+ # 4. No skipped tests
210
+ grep -r "\.skip\|xit\|xdescribe" **/*.test.* | wc -l
211
+ # Expected: 0
212
+
213
+ # 5. Manual testing complete
214
+ # Checkpoint verification
215
+ ```
216
+
217
+ #### Security (8 checks)
218
+ ```bash
219
+ # 1. No hardcoded credentials
220
+ grep -rE "(password|secret|key)\s*=\s*['\"][^'\"]+['\"]" src/ | grep -v ".test." | wc -l
221
+ # Expected: 0
222
+
223
+ # 2. Input validation implemented
224
+ # Check for validation middleware/schemas
225
+
226
+ # 3. SQL injection prevention
227
+ # Check for parameterized queries
228
+
229
+ # 4. XSS protection
230
+ # Check for output encoding
231
+
232
+ # 5. HTTPS enforced
233
+ # Check for SSL/TLS configuration
234
+
235
+ # 6. CORS configured properly
236
+ # Check CORS middleware settings
237
+
238
+ # 7. Rate limiting active
239
+ # Check for rate limiting middleware
240
+
241
+ # 8. Auth tokens secure (httpOnly, secure flags)
242
+ # Check cookie configuration
243
+ ```
244
+
245
+ #### Performance (6 checks)
246
+ ```bash
247
+ # 1. Page load times < threshold
248
+ # Lighthouse or manual measurement
249
+
250
+ # 2. Database queries optimized
251
+ # Check for N+1, missing indexes
252
+
253
+ # 3. No N+1 queries
254
+ # Query logging analysis
255
+
256
+ # 4. Indexes exist on queried columns
257
+ # Database schema inspection
258
+
259
+ # 5. No memory leaks
260
+ # Memory profiling
261
+
262
+ # 6. API response times < 200ms
263
+ # Load testing or manual measurement
264
+ ```
265
+
266
+ #### Documentation (4 checks)
267
+ ```bash
268
+ # 1. README current
269
+ # Manual check
270
+
271
+ # 2. API documentation complete
272
+ # Check swagger/OpenAPI spec
273
+
274
+ # 3. Setup instructions work
275
+ # Manual verification
276
+
277
+ # 4. Code comments explain "why" not "what"
278
+ # Manual review
279
+ ```
280
+
281
+ #### Database (5 checks)
282
+ ```bash
283
+ # 1. Migrations up to date
284
+ npm run db:migrate:status
285
+
286
+ # 2. Schema matches models
287
+ npm run db:validate
288
+
289
+ # 3. Backup strategy documented
290
+ # Manual check
291
+
292
+ # 4. Connection pooling configured
293
+ # Check database config
294
+
295
+ # 5. Transactions used appropriately
296
+ # Code review
297
+ ```
298
+
299
+ #### API Design (6 checks)
300
+ ```bash
301
+ # 1. RESTful conventions followed
302
+ # Manual review
303
+
304
+ # 2. Versioning implemented
305
+ # Check for /v1/ or header versioning
306
+
307
+ # 3. Error responses consistent
308
+ # Test error endpoints
309
+
310
+ # 4. Pagination on list endpoints
311
+ # Check list endpoints
312
+
313
+ # 5. Authentication required where needed
314
+ # Check protected routes
315
+
316
+ # 6. Rate limiting per endpoint
317
+ # Check rate limit config
318
+ ```
319
+
320
+ #### Infrastructure (4 checks)
321
+ ```bash
322
+ # 1. Environment variables documented
323
+ # Check .env.example
324
+
325
+ # 2. Docker/deployment config present
326
+ # Check Dockerfile, docker-compose
327
+
328
+ # 3. CI/CD pipeline configured
329
+ # Check .github/workflows or equivalent
330
+
331
+ # 4. Logging implemented
332
+ # Check logging configuration
333
+ ```
334
+
335
+ #### E2E Testing - Playwright (10 checks)
336
+ ```bash
337
+ # 1. Playwright installed and configured
338
+ npx playwright --version
339
+ ls playwright.config.{ts,js}
340
+
341
+ # 2. Browsers installed
342
+ npx playwright install --dry-run
343
+
344
+ # 3. Critical user flows covered (login, signup, core CRUD)
345
+ # Check E2E test files exist
346
+
347
+ # 4. All E2E tests pass
348
+ npx playwright test
349
+
350
+ # 5. Cross-browser testing (chromium + firefox)
351
+ npx playwright test --project=chromium
352
+ npx playwright test --project=firefox
353
+
354
+ # 6. Mobile viewport coverage
355
+ # Check for mobile viewport project or responsive checks
356
+
357
+ # 7. API response assertions in E2E tests
358
+ # Check tests validate API responses, not just UI
359
+
360
+ # 8. Visual regression baselines
361
+ npx playwright test --update-snapshots
362
+
363
+ # 9. Test isolation (no shared state)
364
+ npx playwright test --shard=1/3
365
+
366
+ # 10. No console errors during E2E runs
367
+ # Check via Playwright MCP: browser_console_messages level=error
368
+ ```
369
+
370
+ ### Step 5: Generate Verification Report
371
+
372
+ **Create:** `.planning/phases/{N}-{name}/{N}-VERIFICATION.md`
373
+
374
+ ```markdown
375
+ # Verification Report: Phase {N}
376
+
377
+ ## Summary
378
+ - **Must-Haves:** {X}/{Y} PASSED
379
+ - **WARRIOR Validation:** {X}/70 PASSED
380
+ - **Overall Status:** PASSED | PASSED WITH GAPS | FAILED
381
+
382
+ ---
383
+
384
+ ## Must-Haves: {X}/{Y} {STATUS}
385
+
386
+ ### Truths
387
+ | # | Statement | Command | Result |
388
+ |---|-----------|---------|--------|
389
+ | 1 | {statement} | {command} | ✓ PASS |
390
+ | 2 | {statement} | {command} | ✗ FAIL |
391
+
392
+ ### Artifacts
393
+ | # | File | Exports | Contains | Result |
394
+ |---|------|---------|----------|--------|
395
+ | 1 | {path} | {exports} | {patterns} | ✓ PASS |
396
+
397
+ ### Key Links
398
+ | # | From | To | Via | Result |
399
+ |---|------|----|----|--------|
400
+ | 1 | {a} | {b} | {via} | ✓ PASS |
401
+
402
+ ---
403
+
404
+ ## WARRIOR Validation: {X}/70 {STATUS}
405
+
406
+ ### Code Quality (6/6) ✓
407
+ - [x] Project builds without errors
408
+ - [x] No TypeScript errors
409
+ - [x] ESLint compliance
410
+ - [x] No console.logs in production
411
+ - [x] Code comments present
412
+ - [x] Functions have JSDoc
413
+
414
+ ### Testing (4/5) âš 
415
+ - [x] Unit tests passing
416
+ - [x] Integration tests passing
417
+ - [x] Coverage > 80% (current: 94%)
418
+ - [x] No skipped tests
419
+ - [ ] E2E tests passing (deferred)
420
+
421
+ ### Security (8/8) ✓
422
+ [All checks passing]
423
+
424
+ ### Performance (6/6) ✓
425
+ [All checks passing]
426
+
427
+ ### Documentation (4/4) ✓
428
+ [All checks passing]
429
+
430
+ ### Database (5/5) ✓
431
+ [All checks passing]
432
+
433
+ ### API Design (6/6) ✓
434
+ [All checks passing]
435
+
436
+ ### Infrastructure (4/4) ✓
437
+ [All checks passing]
438
+
439
+ ---
440
+
441
+ ## Gaps Identified
442
+
443
+ ### Gap 1: E2E Tests (Minor)
444
+ - **Category:** Testing
445
+ - **Impact:** Low (unit + integration coverage sufficient)
446
+ - **Recommendation:** Defer to Phase {N+2} per roadmap
447
+ - **Action:** Document in CONSCIENCE.md, proceed
448
+
449
+ ### Gap 2: {name} (if any)
450
+ [Details]
451
+
452
+ ---
453
+
454
+ ## Verification Decision
455
+
456
+ **Status:** APPROVED ✓ | APPROVED WITH GAPS ⚠ | REJECTED ✗
457
+
458
+ **Recommendation:** {next step}
459
+
460
+ ---
461
+
462
+ *Verified: {timestamp}*
463
+ *Verifier: fire-verifier*
464
+ ```
465
+
466
+ ### Step 5.5: Merge Verification + Review Results (v8.0)
467
+
468
+ ```
469
+ IF reviewer was spawned (--quick NOT set):
470
+ Read .planning/phases/{N}-{name}/{N}-REVIEW.md
471
+
472
+ Apply combined verdict matrix (same as fire-3-execute Step 8.5):
473
+
474
+ PASSED requires BOTH:
475
+ - verifier: APPROVED (warrior >= 49/70)
476
+ - reviewer: APPROVE (no CRITICAL, <3 HIGH)
477
+
478
+ Any BLOCK from reviewer downgrades result to PASSED WITH GAPS minimum.
479
+
480
+ DISAGREEMENT HANDLING:
481
+ Verifier PASSED + Reviewer BLOCK:
482
+ → Downgrade to PASSED WITH GAPS
483
+ → "Code passes functional checks but has quality/simplicity issues."
484
+
485
+ Verifier FAILED + Reviewer APPROVE:
486
+ → Keep FAILED (functional correctness takes priority)
487
+ → "Code is clean but doesn't work."
488
+ ```
489
+
490
+ ### Step 5.75: Dual-Verification — Read from Authoritative Source (v11.0)
491
+
492
+ > **Research basis (v11.0):** Failure pattern mining (8 instances of silent persistence
493
+ > failures across multiple projects) — write operations appear to succeed but changes
494
+ > don't persist. Root causes: column name mismatches, missing server handlers,
495
+ > computed fields silently zeroing on UPDATE. The fix: verify by READING from the
496
+ > authoritative source, not trusting the write response.
497
+
498
+ For each must-have that involves a data write (create, update, delete):
499
+
500
+ ```
501
+ FOR each must_have WHERE type == "data_persistence":
502
+
503
+ 1. WRITE: Execute the operation (already done by executor)
504
+
505
+ 2. READ: Query the authoritative data source directly
506
+ - Database: SELECT from the actual table, not the API response
507
+ - File: Read the file back, don't trust the write return value
508
+ - API: GET the resource after POST/PUT, compare fields
509
+
510
+ 3. COMPARE: Verify the written values match expected values
511
+ field_by_field_check:
512
+ FOR each field in expected_values:
513
+ IF source_value != expected_value:
514
+ FLAG: "Silent persistence failure: {field} expected={expected} actual={actual}"
515
+
516
+ 4. REPORT:
517
+ IF all fields match: PASS (verified at source)
518
+ IF mismatches found: FAIL with specific field-level report
519
+ ```
520
+
521
+ **Common silent failure patterns to check:**
522
+ - `firstName` vs `first_name` column mismatch (frontend sends camelCase, DB uses snake_case)
523
+ - Computed/JOINed fields sent to UPDATE that silently zero the value
524
+ - API returns `{ success: true }` but handler doesn't actually call the DB
525
+ - Frontend shows optimistic update but server rejected the change
526
+
527
+ **Skip condition:** Must-haves that are purely UI/display or configuration (no data writes).
528
+
529
+ ### Step 6: Route Based on Results
530
+
531
+ **If PASSED (all checks):**
532
+ ```
533
+ ╔══════════════════════════════════════════════════════════════════════════════╗
534
+ ║ ✓ VERIFICATION PASSED ║
535
+ ╠══════════════════════════════════════════════════════════════════════════════╣
536
+ â•‘ â•‘
537
+ â•‘ Phase {N} - {name} â•‘
538
+ â•‘ â•‘
539
+ ║ Must-Haves: {X}/{X} ✓ ║
540
+ â•' WARRIOR Validation: 70/70 âœ" â•'
541
+ â•' Code Review: {verdict} ({findings summary}) â•'
542
+ â•' Simplicity: {N} over-engineering flags â•'
543
+ â•' â•'
544
+ â•' â†' Phase {N} is COMPLETE â•‘
545
+ ║ → Ready for `/fire-2-plan {N+1}` or `/fire-5-handoff` ║
546
+ â•‘ â•‘
547
+ ╚══════════════════════════════════════════════════════════════════════════════╝
548
+ ```
549
+
550
+ **If PASSED WITH GAPS:**
551
+ ```
552
+ ╔══════════════════════════════════════════════════════════════════════════════╗
553
+ â•‘ âš  VERIFICATION PASSED WITH GAPS â•‘
554
+ ╠══════════════════════════════════════════════════════════════════════════════╣
555
+ â•‘ â•‘
556
+ â•‘ Phase {N} - {name} â•‘
557
+ â•‘ â•‘
558
+ â•‘ Must-Haves: {X}/{Y} (1 gap) â•‘
559
+ â•' WARRIOR Validation: 65/70 (2 gaps) â•'
560
+ â•' Code Review: {verdict} ({findings summary}) â•'
561
+ â•' Simplicity: {N} over-engineering flags â•'
562
+ â•' â•'
563
+ â•' Gaps: â•‘
564
+ â•‘ âš  E2E tests not implemented (deferred) â•‘
565
+ â•‘ âš  API versioning incomplete â•‘
566
+ â•‘ â•‘
567
+ â•‘ Options: â•‘
568
+ â•‘ A) Accept gaps and proceed: `/fire-2-plan {N+1}` â•‘
569
+ â•‘ B) Close gaps: `/fire-2-plan {N} --gaps` â•‘
570
+ â•‘ C) Create handoff with gaps noted: `/fire-5-handoff` â•‘
571
+ â•‘ â•‘
572
+ ╚══════════════════════════════════════════════════════════════════════════════╝
573
+ ```
574
+
575
+ **If FAILED:**
576
+ ```
577
+ ╔══════════════════════════════════════════════════════════════════════════════╗
578
+ ║ ✗ VERIFICATION FAILED ║
579
+ ╠══════════════════════════════════════════════════════════════════════════════╣
580
+ â•‘ â•‘
581
+ â•‘ Phase {N} - {name} â•‘
582
+ â•‘ â•‘
583
+ â•‘ Must-Haves: {X}/{Y} FAILED â•‘
584
+ â•' WARRIOR Validation: {X}/70 FAILED â•'
585
+ â•' Code Review: {verdict} ({findings summary}) â•'
586
+ â•' Simplicity: {N} over-engineering flags â•'
587
+ â•' â•'
588
+ â•' Critical Failures: â•‘
589
+ ║ ✗ Truth: "User can log in" - Not verified ║
590
+ ║ ✗ Security: Hardcoded credentials found ║
591
+ ║ ✗ Testing: Coverage 45% (required 80%) ║
592
+ â•‘ â•‘
593
+ â•‘ Action Required: â•‘
594
+ ║ → Run `/fire-2-plan {N} --gaps` to create gap closure plan ║
595
+ â•‘ â•‘
596
+ ╚══════════════════════════════════════════════════════════════════════════════╝
597
+ ```
598
+
599
+ ### Step 7: Update CONSCIENCE.md
600
+
601
+ ```markdown
602
+ ## WARRIOR Integration
603
+ - Validation Status: Phase {N} {result} {X}/70 checks
604
+ - Gaps: {list or "None"}
605
+ - Last verified: {timestamp}
606
+ ```
607
+
608
+ ### Step 7.25: Post-Verification State Transition (v10.0 — Automatic Routing)
609
+
610
+ > **Research basis (v10.0):** Internal gap analysis — after verification completes, the user
611
+ > must manually decide what to do next. This creates a decision bottleneck. Automatic routing
612
+ > based on verification result eliminates the gap between "verified" and "next action."
613
+ > SICA (Self-Improving Coding Agent, ICLR 2025) confirms: automated iteration loops
614
+ > outperform manual checkpoint-and-continue by eliminating human latency.
615
+
616
+ **AUTOMATIC routing based on verification result (no user input needed):**
617
+
618
+ ```
619
+ SWITCH verification_result:
620
+
621
+ CASE "PASSED" (score >= 63/70, all must-haves green):
622
+ # Phase is complete — advance
623
+ 1. Update CONSCIENCE.md: phase status = COMPLETE
624
+ 2. IF next phase exists in VISION.md:
625
+ → Display: "Phase {N} PASSED. Auto-advancing to Phase {N+1}."
626
+ → Suggest: "/fire-2-plan {N+1}"
627
+ 3. IF no next phase (milestone complete):
628
+ → Display: "Milestone COMPLETE. Ready for /fire-5-handoff."
629
+ → Suggest: "/fire-5-handoff"
630
+
631
+ CASE "PASSED_WITH_GAPS" (must-haves green, score 49-62/70):
632
+ # Gaps are non-critical — route based on gap severity
633
+ gap_severity = classify_gaps(gaps_list):
634
+ COSMETIC (docs, comments, minor style) → auto-advance, log deferred
635
+ FUNCTIONAL (missing tests, edge cases) → suggest gap closure plan
636
+ SECURITY (any security gap) → BLOCK, force gap closure
637
+
638
+ IF all gaps COSMETIC:
639
+ → Display: "Phase {N} PASSED with cosmetic gaps (deferred)."
640
+ → Auto-advance same as PASSED
641
+ ELSE:
642
+ → Display: "Phase {N} has {N} functional gaps. Close before advancing?"
643
+ → Suggest: "/fire-2-plan {N} --gaps"
644
+
645
+ CASE "FAILED" (missing must-haves OR score < 49/70):
646
+ # Phase needs re-work — auto-create gap closure plan
647
+ 1. Extract failed checks into gap list
648
+ 2. Display: "Phase {N} FAILED. Creating gap closure plan."
649
+ 3. Auto-generate: /fire-2-plan {N} --gaps --from-failures "{failed_checks}"
650
+ 4. Do NOT advance — loop back to execute → verify
651
+ ```
652
+
653
+ **State transition diagram:**
654
+
655
+ ```
656
+ PASSED ──────────→ /fire-2-plan {N+1} (next phase)
657
+ └→ /fire-5-handoff (if last phase)
658
+
659
+ PASSED_WITH_GAPS
660
+ ├─ cosmetic ──→ auto-advance (gaps deferred)
661
+ └─ functional → /fire-2-plan {N} --gaps
662
+
663
+ FAILED ─────────→ /fire-2-plan {N} --gaps --from-failures
664
+ (loop: plan → execute → verify until PASSED)
665
+ ```
666
+
667
+ ### Step 7.5: Evolutionary Skill Extraction (v5.0 — Auto-Triggered)
668
+
669
+ **Research basis:** SAGE (2025) — 8.9% higher completion, 26% fewer steps via skill augmentation
670
+
671
+ After successful verification (PASS or PASS WITH GAPS), scan the phase for extractable patterns:
672
+
673
+ ```
674
+ IF verification_status != "FAILED":
675
+
676
+ # 1. Scan execution summaries for skill candidates
677
+ FOR each RECORD.md in phase:
678
+ Analyze:
679
+ - Novel code patterns created
680
+ - Debugging strategies that worked
681
+ - Architectural decisions made
682
+ - Workarounds applied
683
+
684
+ # 2. Filter for reusable patterns (from Evolutionary Skill Synthesis)
685
+ candidates = patterns WHERE:
686
+ - Pattern is generalizable (not project-specific)
687
+ - Pattern solved a non-trivial problem
688
+ - Pattern involved >3 files OR >30 minutes of work
689
+ - Pattern required research or multiple attempts
690
+
691
+ # 3. For each candidate, create quarantine skill
692
+ IF candidates.length > 0:
693
+ FOR each candidate:
694
+ Generate skill document (problem, solution, code example, tags)
695
+ Save to: ~/.claude/plugins/warrior-workflow/skills-library/_quarantine/{name}.md
696
+ Security scan: no exec(), eval(), hardcoded credentials
697
+
698
+ Display:
699
+ "+--------------------------------------------------------------+"
700
+ "| SKILL CANDIDATES DISCOVERED |"
701
+ "+--------------------------------------------------------------+"
702
+ "| |"
703
+ "| {N} new skill candidates from Phase {phase}: |"
704
+ "| 1. {name} — {category} — {one-sentence description} |"
705
+ "| 2. {name} — {category} — {one-sentence description} |"
706
+ "| |"
707
+ "| Location: skills-library/_quarantine/ |"
708
+ "| Review: /fire-search --quarantine |"
709
+ "| Approve: Move to proper category directory |"
710
+ "| |"
711
+ "+--------------------------------------------------------------+"
712
+
713
+ ELSE:
714
+ Display: "No new skill candidates found in this phase."
715
+ ```
716
+
717
+ **Quarantine lifecycle:**
718
+ - `_quarantine/` → User reviews → Approved → Move to category dir
719
+ - `_quarantine/` → User reviews → Rejected → Delete
720
+ - Auto-promoted after 3+ successful uses across 2+ projects
721
+
722
+ ### Step 7.6: Hindsight for Failed Verifications (v6.0 — ECHO)
723
+
724
+ > **Research basis:** ECHO (Oct 2025) — Hindsight optimization. When verification finds
725
+ > failures that are then fixed, generate "what should have been done" as a synthetic
726
+ > positive example. Pre-seed utility_score at 0.8 (high value — these are hard-won lessons).
727
+
728
+ After verification finds must-have failures AND the fix is subsequently applied:
729
+
730
+ ```
731
+ IF verification_status == "FAILED" OR verification_status == "PASS_WITH_GAPS":
732
+
733
+ FOR each must_have that failed:
734
+ # 1. Record what was expected vs what happened
735
+ gap_record = {
736
+ feature: "{feature name from must-have}",
737
+ expected: "{what the must-have required}",
738
+ actual: "{what verification found instead}",
739
+ category: "{missing | broken | incomplete}"
740
+ }
741
+
742
+ # 2. After fix is applied (by /fire-3-execute --gaps or manual fix):
743
+ # Generate hindsight lesson
744
+ hindsight = generate:
745
+ "VERIFICATION HINDSIGHT — Phase {N}: {feature}
746
+
747
+ ## The Gap
748
+ Must-have: {expected}
749
+ Reality: {actual}
750
+ Category: {category}
751
+
752
+ ## The Lesson
753
+ When building {feature type}, ensure {specific thing to check}
754
+ because {why it was missed — root cause of the gap}.
755
+
756
+ ## Prevention Pattern
757
+ During planning: {what should have been in the plan}
758
+ During execution: {what check would have caught this}
759
+ During review: {what self-judge question would have flagged this}"
760
+
761
+ # 3. Save and index
762
+ Save to: .planning/phases/{N}-{name}/hindsight-{feature-slug}.md
763
+
764
+ cd ~/.claude/memory
765
+ npm run index-file -- ".planning/phases/{N}-{name}/hindsight-{feature-slug}.md"
766
+
767
+ # 4. Pre-seed utility score at 0.8 (verification lessons are high-value)
768
+ npm run track-usage -- --source ".planning/phases/{N}-{name}/hindsight-{feature-slug}.md" --helpful true
769
+
770
+ Display:
771
+ "+--------------------------------------------------------------+"
772
+ "| VERIFICATION HINDSIGHT GENERATED |"
773
+ "+--------------------------------------------------------------+"
774
+ "| |"
775
+ "| {N} lesson(s) from failed must-haves: |"
776
+ "| 1. {feature}: {one-sentence lesson} |"
777
+ "| 2. {feature}: {one-sentence lesson} |"
778
+ "| |"
779
+ "| Indexed into vector memory (utility: 0.8) |"
780
+ "| Future plans will find these via episodic recall. |"
781
+ "| |"
782
+ "+--------------------------------------------------------------+"
783
+ ```
784
+
785
+ **Why pre-seed at 0.8:** Verification failures represent hard-won knowledge. They are
786
+ lessons discovered only after building and testing — the most valuable kind of memory.
787
+ By pre-seeding utility at 0.8, two-phase retrieval (Gap 5) will prioritize these
788
+ over generic code snippets, ensuring future phases learn from past mistakes.
789
+
790
+ ---
791
+
792
+ ## Agent Spawning Instructions
793
+
794
+ ### fire-verifier
795
+
796
+ **Agent File:** `@agents/fire-verifier.md`
797
+
798
+ **Context:**
799
+ ```markdown
800
+ <phase_context>
801
+ Phase: {N} - {name}
802
+ Plans: {list}
803
+ </phase_context>
804
+
805
+ <must_haves>
806
+ {Aggregated from all plans}
807
+ </must_haves>
808
+
809
+ <warrior_checklist>
810
+ @references/validation-checklist.md
811
+ </warrior_checklist>
812
+ ```
813
+
814
+ **Verifier Outputs:**
815
+ - `{N}-VERIFICATION.md`
816
+ - Gap analysis
817
+ - Recommendations
818
+
819
+ ---
820
+
821
+ ## Success Criteria
822
+
823
+ ### Required Outputs
824
+ - [ ] All must-haves verified
825
+ - [ ] All WARRIOR checks executed
826
+ - [ ] `{N}-VERIFICATION.md` created
827
+ - [ ] `{N}-REVIEW.md` created (if --quick not set) (v8.0)
828
+ - [ ] Combined verdict evaluated — both verifier and reviewer must agree (v8.0)
829
+ - [ ] CONSCIENCE.md updated with verification status
830
+ - [ ] Clear routing to next action
831
+
832
+ ### Completion Criteria
833
+ - **PASS:** All must-haves + >=63/70 WARRIOR checks
834
+ - **PASS WITH GAPS:** All must-haves + >=49/70 WARRIOR checks
835
+ - **FAIL:** Missing must-haves OR <49/70 WARRIOR checks
836
+
837
+ ---
838
+
839
+ ## References
840
+
841
+ - **Agent:** `@agents/fire-verifier.md` - Verification agent (functional checks)
842
+ - **Agent:** `@agents/fire-reviewer.md` - Review agent (quality + simplicity) (v8.0)
843
+ - **Template:** `@templates/verification.md` - Report template
844
+ - **Checklist:** `@references/validation-checklist.md` - 70-point checklist
845
+ - **Brand:** `@references/ui-brand.md` - Visual output standards