@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.
- package/.claude-plugin/plugin.json +64 -0
- package/ARCHITECTURE-DIAGRAM.md +440 -0
- package/COMMAND-REFERENCE.md +172 -0
- package/DOMINION-FLOW-OVERVIEW.md +421 -0
- package/LICENSE +21 -0
- package/QUICK-START.md +351 -0
- package/README.md +398 -0
- package/TROUBLESHOOTING.md +264 -0
- package/agents/fire-codebase-mapper.md +484 -0
- package/agents/fire-debugger.md +535 -0
- package/agents/fire-executor.md +949 -0
- package/agents/fire-fact-checker.md +276 -0
- package/agents/fire-learncoding-explainer.md +237 -0
- package/agents/fire-learncoding-walker.md +147 -0
- package/agents/fire-planner.md +675 -0
- package/agents/fire-project-researcher.md +155 -0
- package/agents/fire-research-synthesizer.md +166 -0
- package/agents/fire-researcher.md +723 -0
- package/agents/fire-reviewer.md +499 -0
- package/agents/fire-roadmapper.md +203 -0
- package/agents/fire-verifier.md +880 -0
- package/bin/cli.js +208 -0
- package/commands/fire-0-orient.md +476 -0
- package/commands/fire-1-new.md +281 -0
- package/commands/fire-1a-discuss.md +455 -0
- package/commands/fire-2-plan.md +527 -0
- package/commands/fire-3-execute.md +1303 -0
- package/commands/fire-4-verify.md +845 -0
- package/commands/fire-5-handoff.md +515 -0
- package/commands/fire-6-resume.md +501 -0
- package/commands/fire-7-review.md +409 -0
- package/commands/fire-add-new-skill.md +598 -0
- package/commands/fire-analytics.md +499 -0
- package/commands/fire-assumptions.md +78 -0
- package/commands/fire-autonomous.md +528 -0
- package/commands/fire-brainstorm.md +413 -0
- package/commands/fire-complete-milestone.md +270 -0
- package/commands/fire-dashboard.md +375 -0
- package/commands/fire-debug.md +663 -0
- package/commands/fire-discover.md +616 -0
- package/commands/fire-double-check.md +460 -0
- package/commands/fire-execute-plan.md +182 -0
- package/commands/fire-learncoding.md +242 -0
- package/commands/fire-loop-resume.md +272 -0
- package/commands/fire-loop-stop.md +198 -0
- package/commands/fire-loop.md +1168 -0
- package/commands/fire-map-codebase.md +313 -0
- package/commands/fire-new-milestone.md +356 -0
- package/commands/fire-reflect.md +235 -0
- package/commands/fire-research.md +246 -0
- package/commands/fire-search.md +330 -0
- package/commands/fire-security-audit-repo.md +293 -0
- package/commands/fire-security-scan.md +484 -0
- package/commands/fire-session-summary.md +252 -0
- package/commands/fire-skills-diff.md +506 -0
- package/commands/fire-skills-history.md +388 -0
- package/commands/fire-skills-rollback.md +408 -0
- package/commands/fire-skills-sync.md +470 -0
- package/commands/fire-test.md +520 -0
- package/commands/fire-todos.md +335 -0
- package/commands/fire-transition.md +186 -0
- package/commands/fire-update.md +312 -0
- package/commands/fire-verify-uat.md +146 -0
- package/commands/fire-vuln-scan.md +493 -0
- package/hooks/hooks.json +16 -0
- package/hooks/run-hook.cmd +69 -0
- package/hooks/run-hook.sh +8 -0
- package/hooks/run-session-end.cmd +49 -0
- package/hooks/run-session-end.sh +7 -0
- package/hooks/session-end.sh +90 -0
- package/hooks/session-start.sh +111 -0
- package/package.json +52 -0
- package/plugin.json +7 -0
- package/references/auto-skill-extraction.md +136 -0
- package/references/behavioral-directives.md +365 -0
- package/references/blocker-tracking.md +155 -0
- package/references/checkpoints.md +165 -0
- package/references/circuit-breaker.md +410 -0
- package/references/context-engineering.md +587 -0
- package/references/decision-time-guidance.md +289 -0
- package/references/error-classification.md +326 -0
- package/references/execution-mode-intelligence.md +242 -0
- package/references/git-integration.md +217 -0
- package/references/honesty-protocols.md +304 -0
- package/references/integration-architecture.md +470 -0
- package/references/issue-to-pr-pipeline.md +150 -0
- package/references/metrics-and-trends.md +234 -0
- package/references/playwright-e2e-testing.md +326 -0
- package/references/questioning.md +125 -0
- package/references/research-improvements.md +110 -0
- package/references/skills-usage-guide.md +429 -0
- package/references/tdd.md +131 -0
- package/references/testing-enforcement.md +192 -0
- package/references/ui-brand.md +383 -0
- package/references/validation-checklist.md +456 -0
- package/references/verification-patterns.md +187 -0
- package/references/warrior-principles.md +173 -0
- package/skills-library/SKILLS-INDEX.md +588 -0
- package/skills-library/_general/frontend/html-visual-reports.md +292 -0
- package/skills-library/_general/methodology/debug-swarm-researcher-escape-hatch.md +240 -0
- package/skills-library/_general/methodology/learncoding-agentic-pattern.md +114 -0
- package/skills-library/_general/methodology/shell-autonomous-loop-fixplan.md +238 -0
- package/skills-library/basics/api-rest-basics.md +162 -0
- package/skills-library/basics/env-variables.md +96 -0
- package/skills-library/basics/error-handling-basics.md +125 -0
- package/skills-library/basics/git-commit-conventions.md +106 -0
- package/skills-library/basics/readme-template.md +108 -0
- package/skills-library/common-tasks/async-await-patterns.md +157 -0
- package/skills-library/common-tasks/auth-jwt-basics.md +164 -0
- package/skills-library/common-tasks/database-schema-design.md +166 -0
- package/skills-library/common-tasks/file-upload-basics.md +166 -0
- package/skills-library/common-tasks/form-validation.md +159 -0
- package/skills-library/debugging/FAILURE_TAXONOMY_CLASSIFICATION.md +117 -0
- package/skills-library/debugging/THREE_AGENT_HYPOTHESIS_DEBUGGING.md +86 -0
- package/skills-library/methodology/BREATH_BASED_PARALLEL_EXECUTION.md +678 -0
- package/skills-library/methodology/CONFIDENCE_GATED_EXECUTION.md +243 -0
- package/skills-library/methodology/EVIDENCE_BASED_VALIDATION.md +308 -0
- package/skills-library/methodology/MULTI_PERSPECTIVE_CODE_REVIEW.md +330 -0
- package/skills-library/methodology/PATH_VERIFICATION_GATE.md +211 -0
- package/skills-library/methodology/REFLEXION_MEMORY_PATTERN.md +183 -0
- package/skills-library/methodology/RESEARCH_BACKED_WORKFLOW_UPGRADE.md +263 -0
- package/skills-library/methodology/SABBATH_REST_PATTERN.md +267 -0
- package/skills-library/methodology/STONE_AND_SCAFFOLD.md +220 -0
- package/skills-library/performance/cache-augmented-generation.md +172 -0
- package/skills-library/quality-safety/debugging-steps.md +147 -0
- package/skills-library/quality-safety/deployment-checklist.md +155 -0
- package/skills-library/quality-safety/security-checklist.md +204 -0
- package/skills-library/quality-safety/testing-basics.md +180 -0
- package/skills-library/security/agent-security-scanner.md +445 -0
- package/skills-library/specialists/api-architecture/api-designer.md +49 -0
- package/skills-library/specialists/api-architecture/graphql-architect.md +49 -0
- package/skills-library/specialists/api-architecture/mcp-developer.md +51 -0
- package/skills-library/specialists/api-architecture/microservices-architect.md +50 -0
- package/skills-library/specialists/api-architecture/websocket-engineer.md +48 -0
- package/skills-library/specialists/backend/django-expert.md +52 -0
- package/skills-library/specialists/backend/fastapi-expert.md +52 -0
- package/skills-library/specialists/backend/laravel-specialist.md +52 -0
- package/skills-library/specialists/backend/nestjs-expert.md +51 -0
- package/skills-library/specialists/backend/rails-expert.md +53 -0
- package/skills-library/specialists/backend/spring-boot-engineer.md +56 -0
- package/skills-library/specialists/data-ml/fine-tuning-expert.md +48 -0
- package/skills-library/specialists/data-ml/ml-pipeline.md +47 -0
- package/skills-library/specialists/data-ml/pandas-pro.md +47 -0
- package/skills-library/specialists/data-ml/rag-architect.md +51 -0
- package/skills-library/specialists/data-ml/spark-engineer.md +47 -0
- package/skills-library/specialists/frontend/angular-architect.md +52 -0
- package/skills-library/specialists/frontend/flutter-expert.md +51 -0
- package/skills-library/specialists/frontend/nextjs-developer.md +54 -0
- package/skills-library/specialists/frontend/react-native-expert.md +50 -0
- package/skills-library/specialists/frontend/vue-expert.md +51 -0
- package/skills-library/specialists/infrastructure/chaos-engineer.md +74 -0
- package/skills-library/specialists/infrastructure/cloud-architect.md +70 -0
- package/skills-library/specialists/infrastructure/database-optimizer.md +64 -0
- package/skills-library/specialists/infrastructure/devops-engineer.md +70 -0
- package/skills-library/specialists/infrastructure/kubernetes-specialist.md +52 -0
- package/skills-library/specialists/infrastructure/monitoring-expert.md +70 -0
- package/skills-library/specialists/infrastructure/sre-engineer.md +70 -0
- package/skills-library/specialists/infrastructure/terraform-engineer.md +51 -0
- package/skills-library/specialists/languages/cpp-pro.md +74 -0
- package/skills-library/specialists/languages/csharp-developer.md +69 -0
- package/skills-library/specialists/languages/dotnet-core-expert.md +54 -0
- package/skills-library/specialists/languages/golang-pro.md +51 -0
- package/skills-library/specialists/languages/java-architect.md +49 -0
- package/skills-library/specialists/languages/javascript-pro.md +68 -0
- package/skills-library/specialists/languages/kotlin-specialist.md +68 -0
- package/skills-library/specialists/languages/php-pro.md +49 -0
- package/skills-library/specialists/languages/python-pro.md +52 -0
- package/skills-library/specialists/languages/react-expert.md +51 -0
- package/skills-library/specialists/languages/rust-engineer.md +50 -0
- package/skills-library/specialists/languages/sql-pro.md +56 -0
- package/skills-library/specialists/languages/swift-expert.md +69 -0
- package/skills-library/specialists/languages/typescript-pro.md +51 -0
- package/skills-library/specialists/platform/atlassian-mcp.md +52 -0
- package/skills-library/specialists/platform/embedded-systems.md +53 -0
- package/skills-library/specialists/platform/game-developer.md +53 -0
- package/skills-library/specialists/platform/salesforce-developer.md +53 -0
- package/skills-library/specialists/platform/shopify-expert.md +49 -0
- package/skills-library/specialists/platform/wordpress-pro.md +49 -0
- package/skills-library/specialists/quality/code-documenter.md +51 -0
- package/skills-library/specialists/quality/code-reviewer.md +67 -0
- package/skills-library/specialists/quality/debugging-wizard.md +51 -0
- package/skills-library/specialists/quality/fullstack-guardian.md +51 -0
- package/skills-library/specialists/quality/legacy-modernizer.md +50 -0
- package/skills-library/specialists/quality/playwright-expert.md +65 -0
- package/skills-library/specialists/quality/spec-miner.md +56 -0
- package/skills-library/specialists/quality/test-master.md +65 -0
- package/skills-library/specialists/security/secure-code-guardian.md +55 -0
- package/skills-library/specialists/security/security-reviewer.md +53 -0
- package/skills-library/specialists/workflow/architecture-designer.md +53 -0
- package/skills-library/specialists/workflow/cli-developer.md +70 -0
- package/skills-library/specialists/workflow/feature-forge.md +65 -0
- package/skills-library/specialists/workflow/prompt-engineer.md +54 -0
- package/skills-library/specialists/workflow/the-fool.md +62 -0
- package/templates/ASSUMPTIONS.md +125 -0
- package/templates/BLOCKERS.md +73 -0
- package/templates/DECISION_LOG.md +116 -0
- package/templates/UAT.md +96 -0
- package/templates/blueprint.md +94 -0
- package/templates/brainstorm.md +185 -0
- package/templates/conscience.md +92 -0
- package/templates/fire-handoff.md +159 -0
- package/templates/metrics.md +67 -0
- package/templates/phase-prompt.md +142 -0
- package/templates/record.md +131 -0
- package/templates/review-report.md +117 -0
- package/templates/skills-index.md +157 -0
- package/templates/verification.md +149 -0
- package/templates/vision.md +79 -0
- package/validation-config.yml +793 -0
- package/version.json +7 -0
- package/workflows/execute-phase.md +732 -0
- package/workflows/handoff-session.md +678 -0
- package/workflows/new-project.md +578 -0
- package/workflows/plan-phase.md +592 -0
- package/workflows/verify-phase.md +874 -0
|
@@ -0,0 +1,409 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Multi-perspective code review with 15 specialized reviewer personas
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /fire-7-review
|
|
6
|
+
|
|
7
|
+
> Comprehensive code review through multiple expert lenses
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
Perform deep code review using 16 specialized reviewer personas (14 original + Simplicity Guardian + Qt Thread Guardian), each examining the code from their unique perspective. Inspired by compounding-engineering's multi-perspective approach, this catches issues that single-reviewer passes miss. In v8.0, also available in automatic mode via the `fire-reviewer` agent.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Arguments
|
|
18
|
+
|
|
19
|
+
```yaml
|
|
20
|
+
arguments:
|
|
21
|
+
target:
|
|
22
|
+
required: true
|
|
23
|
+
type: string
|
|
24
|
+
description: "What to review - can be a file, directory, PR number, or 'phase N'"
|
|
25
|
+
examples:
|
|
26
|
+
- "/fire-7-review src/auth/"
|
|
27
|
+
- "/fire-7-review PR#123"
|
|
28
|
+
- "/fire-7-review phase 2"
|
|
29
|
+
|
|
30
|
+
optional_flags:
|
|
31
|
+
--perspectives: "Comma-separated list of specific personas to use (default: all)"
|
|
32
|
+
--depth: "shallow | normal | deep (default: normal)"
|
|
33
|
+
--focus: "Security focus area: auth, data, api, all (default: all)"
|
|
34
|
+
--parallel: "Run persona reviews in parallel (default: true)"
|
|
35
|
+
--output: "Report output path (default: .planning/reviews/)"
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## The 14 Reviewer Personas
|
|
41
|
+
|
|
42
|
+
### Security Reviewers (4)
|
|
43
|
+
|
|
44
|
+
| Persona | Focus | Catches |
|
|
45
|
+
|---------|-------|---------|
|
|
46
|
+
| **Security Hawk** | OWASP Top 10, injection, auth flaws | Critical vulnerabilities |
|
|
47
|
+
| **Data Guardian** | PII exposure, encryption, privacy | Data leaks, compliance |
|
|
48
|
+
| **API Sentinel** | Auth tokens, rate limits, CORS | API abuse vectors |
|
|
49
|
+
| **Crypto Auditor** | Encryption strength, key handling | Weak crypto, key exposure |
|
|
50
|
+
|
|
51
|
+
### Quality Reviewers (5)
|
|
52
|
+
|
|
53
|
+
| Persona | Focus | Catches |
|
|
54
|
+
|---------|-------|---------|
|
|
55
|
+
| **Simplicity Guardian** | Over-engineering, unnecessary abstraction, premature optimization | Code that's complex when it could be simple |
|
|
56
|
+
| **Performance Eagle** | N+1 queries, memory, bottlenecks | Performance issues |
|
|
57
|
+
| **Test Skeptic** | Coverage gaps, test quality | Untested edge cases |
|
|
58
|
+
| **Error Hunter** | Error handling, edge cases | Unhandled failures |
|
|
59
|
+
| **Type Guardian** | Type safety, any usage | Runtime type errors |
|
|
60
|
+
|
|
61
|
+
### Architecture Reviewers (4)
|
|
62
|
+
|
|
63
|
+
| Persona | Focus | Catches |
|
|
64
|
+
|---------|-------|---------|
|
|
65
|
+
| **Pattern Police** | SOLID, DRY, design patterns | Anti-patterns |
|
|
66
|
+
| **Coupling Detective** | Dependencies, modularity | Tight coupling |
|
|
67
|
+
| **Scalability Scout** | Growth patterns, limits | Scaling blockers |
|
|
68
|
+
| **Qt Thread Guardian** | Qt thread affinity, signal/slot marshaling, worker threads | Cross-thread widget creation, race conditions in Qt event loop |
|
|
69
|
+
|
|
70
|
+
### UX/DX Reviewers (3)
|
|
71
|
+
|
|
72
|
+
| Persona | Focus | Catches |
|
|
73
|
+
|---------|-------|---------|
|
|
74
|
+
| **UX Advocate** | User flows, accessibility | Poor user experience |
|
|
75
|
+
| **DX Champion** | API ergonomics, docs | Developer friction |
|
|
76
|
+
| **Maintenance Oracle** | Long-term maintainability | Technical debt |
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Process
|
|
81
|
+
|
|
82
|
+
### Step 1: Load Review Context
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
86
|
+
DOMINION FLOW ► MULTI-PERSPECTIVE REVIEW
|
|
87
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Parse Target:**
|
|
91
|
+
```bash
|
|
92
|
+
# File/directory review
|
|
93
|
+
TARGET_TYPE="files"
|
|
94
|
+
FILES=$(glob "{target}")
|
|
95
|
+
|
|
96
|
+
# PR review
|
|
97
|
+
TARGET_TYPE="pr"
|
|
98
|
+
PR_DIFF=$(gh pr diff {number})
|
|
99
|
+
|
|
100
|
+
# Phase review
|
|
101
|
+
TARGET_TYPE="phase"
|
|
102
|
+
FILES=$(glob ".planning/phases/{N}-*/**/*.ts")
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Step 2: Spawn Parallel Reviewer Agents
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
◆ Spawning 15 reviewer agents in parallel...
|
|
109
|
+
├─ Security Hawk ├─ Pattern Police ├─ UX Advocate
|
|
110
|
+
├─ Data Guardian ├─ Coupling Detective ├─ DX Champion
|
|
111
|
+
├─ API Sentinel ├─ Scalability Scout ├─ Maintenance Oracle
|
|
112
|
+
├─ Crypto Auditor ├─ Qt Thread Guardian
|
|
113
|
+
├─ Performance Eagle ├─ Test Skeptic
|
|
114
|
+
├─ Error Hunter └─ Type Guardian
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
**Each Agent Context:**
|
|
118
|
+
```markdown
|
|
119
|
+
<persona>
|
|
120
|
+
You are the {PERSONA_NAME}.
|
|
121
|
+
|
|
122
|
+
Your expertise: {FOCUS_AREA}
|
|
123
|
+
Your mission: Find issues that others miss in your domain.
|
|
124
|
+
|
|
125
|
+
Review standards:
|
|
126
|
+
- Only report findings you are confident about (>80% confidence)
|
|
127
|
+
- Provide specific file:line references
|
|
128
|
+
- Explain WHY this is a problem
|
|
129
|
+
- Suggest a fix when possible
|
|
130
|
+
- Rate severity: CRITICAL | HIGH | MEDIUM | LOW
|
|
131
|
+
</persona>
|
|
132
|
+
|
|
133
|
+
<code_to_review>
|
|
134
|
+
{FILE_CONTENTS or DIFF}
|
|
135
|
+
</code_to_review>
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### Step 3: Aggregate Findings
|
|
139
|
+
|
|
140
|
+
**Collect from all personas:**
|
|
141
|
+
```markdown
|
|
142
|
+
## Raw Findings
|
|
143
|
+
|
|
144
|
+
### Security Hawk
|
|
145
|
+
- [CRITICAL] SQL injection in auth.ts:45 - using string interpolation
|
|
146
|
+
- [HIGH] Missing rate limit on /api/login endpoint
|
|
147
|
+
|
|
148
|
+
### Data Guardian
|
|
149
|
+
- [MEDIUM] PII logged in error handler at logger.ts:23
|
|
150
|
+
|
|
151
|
+
### Performance Eagle
|
|
152
|
+
- [HIGH] N+1 query in getUserOrders (users.ts:89)
|
|
153
|
+
|
|
154
|
+
... (all 16 personas)
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### Step 4: De-duplicate and Prioritize
|
|
158
|
+
|
|
159
|
+
**Remove duplicates:**
|
|
160
|
+
When multiple personas flag the same issue, consolidate:
|
|
161
|
+
```markdown
|
|
162
|
+
### Consolidated Finding #1
|
|
163
|
+
- **Issue:** SQL injection vulnerability
|
|
164
|
+
- **Flagged by:** Security Hawk, API Sentinel (2 personas)
|
|
165
|
+
- **Location:** auth.ts:45
|
|
166
|
+
- **Severity:** CRITICAL (consensus)
|
|
167
|
+
- **Description:** {merged description}
|
|
168
|
+
- **Fix:** {recommended fix}
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
**Priority Scoring:**
|
|
172
|
+
```
|
|
173
|
+
PRIORITY = SEVERITY_WEIGHT * PERSONA_COUNT
|
|
174
|
+
|
|
175
|
+
SEVERITY_WEIGHT:
|
|
176
|
+
CRITICAL = 4
|
|
177
|
+
HIGH = 3
|
|
178
|
+
MEDIUM = 2
|
|
179
|
+
LOW = 1
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### Step 5: Generate Review Report
|
|
183
|
+
|
|
184
|
+
**Create:** `.planning/reviews/{target}-review-{timestamp}.md`
|
|
185
|
+
|
|
186
|
+
```markdown
|
|
187
|
+
# Multi-Perspective Code Review
|
|
188
|
+
|
|
189
|
+
**Target:** {target}
|
|
190
|
+
**Date:** {timestamp}
|
|
191
|
+
**Depth:** {depth}
|
|
192
|
+
**Personas Used:** 16
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## Executive Summary
|
|
197
|
+
|
|
198
|
+
| Severity | Count | Action Required |
|
|
199
|
+
|----------|-------|-----------------|
|
|
200
|
+
| CRITICAL | 2 | Immediate fix |
|
|
201
|
+
| HIGH | 5 | Fix before merge |
|
|
202
|
+
| MEDIUM | 8 | Address soon |
|
|
203
|
+
| LOW | 12 | Optional |
|
|
204
|
+
|
|
205
|
+
**Overall Assessment:** BLOCK | APPROVE WITH FIXES | APPROVE
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## Critical Findings (Fix Immediately)
|
|
210
|
+
|
|
211
|
+
### Finding #1: SQL Injection in Auth Module
|
|
212
|
+
|
|
213
|
+
| Attribute | Value |
|
|
214
|
+
|-----------|-------|
|
|
215
|
+
| **Severity** | CRITICAL |
|
|
216
|
+
| **Location** | `src/auth/login.ts:45` |
|
|
217
|
+
| **Flagged By** | Security Hawk, API Sentinel |
|
|
218
|
+
| **Confidence** | 95% |
|
|
219
|
+
|
|
220
|
+
**Problem:**
|
|
221
|
+
```typescript
|
|
222
|
+
// VULNERABLE
|
|
223
|
+
const query = `SELECT * FROM users WHERE email = '${email}'`;
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
**Fix:**
|
|
227
|
+
```typescript
|
|
228
|
+
// SAFE
|
|
229
|
+
const query = 'SELECT * FROM users WHERE email = $1';
|
|
230
|
+
const result = await db.query(query, [email]);
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**Why This Matters:**
|
|
234
|
+
Allows attackers to bypass authentication, exfiltrate data, or destroy the database.
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
### Finding #2: ...
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## High Priority Findings
|
|
243
|
+
|
|
244
|
+
[Similar format]
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## Medium Priority Findings
|
|
249
|
+
|
|
250
|
+
[Similar format]
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## Low Priority / Suggestions
|
|
255
|
+
|
|
256
|
+
[Brief list]
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
## Persona Breakdown
|
|
261
|
+
|
|
262
|
+
### Security Review (4 personas)
|
|
263
|
+
- **Issues Found:** 7
|
|
264
|
+
- **Unique Insights:** Rate limit bypass, JWT weak secret
|
|
265
|
+
|
|
266
|
+
### Quality Review (4 personas)
|
|
267
|
+
- **Issues Found:** 12
|
|
268
|
+
- **Unique Insights:** Missing error boundaries, uncovered code paths
|
|
269
|
+
|
|
270
|
+
### Architecture Review (3 personas)
|
|
271
|
+
- **Issues Found:** 5
|
|
272
|
+
- **Unique Insights:** Circular dependency in services/
|
|
273
|
+
|
|
274
|
+
### UX/DX Review (3 personas)
|
|
275
|
+
- **Issues Found:** 3
|
|
276
|
+
- **Unique Insights:** Confusing API response format
|
|
277
|
+
|
|
278
|
+
---
|
|
279
|
+
|
|
280
|
+
## Actionable Summary
|
|
281
|
+
|
|
282
|
+
### Must Fix Before Merge
|
|
283
|
+
1. [ ] SQL injection in auth.ts:45
|
|
284
|
+
2. [ ] N+1 query in users.ts:89
|
|
285
|
+
3. [ ] Missing rate limit on /api/login
|
|
286
|
+
|
|
287
|
+
### Should Fix Soon
|
|
288
|
+
1. [ ] Add error boundaries to React components
|
|
289
|
+
2. [ ] Improve test coverage on auth module (currently 45%)
|
|
290
|
+
|
|
291
|
+
### Consider Later
|
|
292
|
+
1. [ ] Refactor services/ to reduce coupling
|
|
293
|
+
2. [ ] Add API response type documentation
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
*Review completed: {timestamp}*
|
|
298
|
+
*Powered by: Dominion Flow Multi-Perspective Review*
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
### Step 6: Update CONSCIENCE.md (if phase review)
|
|
302
|
+
|
|
303
|
+
```markdown
|
|
304
|
+
## Code Review Status
|
|
305
|
+
- Phase {N} reviewed: {timestamp}
|
|
306
|
+
- Findings: {critical}/{high}/{medium}/{low}
|
|
307
|
+
- Action: {BLOCK | APPROVE WITH FIXES | APPROVE}
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
---
|
|
311
|
+
|
|
312
|
+
## Persona Depth Configurations
|
|
313
|
+
|
|
314
|
+
### Shallow (Quick Pass)
|
|
315
|
+
- 4 personas: Security Hawk, Performance Eagle, Test Skeptic, Pattern Police
|
|
316
|
+
- Focus: Critical issues only
|
|
317
|
+
- Time: Fast
|
|
318
|
+
|
|
319
|
+
### Normal (Default)
|
|
320
|
+
- 16 personas: All
|
|
321
|
+
- Focus: All severities
|
|
322
|
+
- Time: Moderate
|
|
323
|
+
|
|
324
|
+
### Deep (Thorough)
|
|
325
|
+
- 16 personas: All
|
|
326
|
+
- Focus: All severities + suggestions + style
|
|
327
|
+
- Additional: Cross-file analysis, dependency review
|
|
328
|
+
- Time: Comprehensive
|
|
329
|
+
|
|
330
|
+
---
|
|
331
|
+
|
|
332
|
+
## Integration with Dominion Flow
|
|
333
|
+
|
|
334
|
+
### After Execution
|
|
335
|
+
```bash
|
|
336
|
+
/fire-3-execute 2
|
|
337
|
+
# ... execution completes ...
|
|
338
|
+
/fire-7-review phase 2
|
|
339
|
+
# ... before verification
|
|
340
|
+
/fire-4-verify 2
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
### PR Workflow
|
|
344
|
+
```bash
|
|
345
|
+
/fire-7-review PR#123 --focus security
|
|
346
|
+
# Review before merge
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
### Continuous Review
|
|
350
|
+
```bash
|
|
351
|
+
/fire-7-review src/auth/ --depth deep --perspectives "Security Hawk,API Sentinel,Crypto Auditor"
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
---
|
|
355
|
+
|
|
356
|
+
## Automatic Mode (v8.0)
|
|
357
|
+
|
|
358
|
+
When spawned as `fire-reviewer` agent (not manual `/fire-7-review`):
|
|
359
|
+
|
|
360
|
+
| Aspect | Manual | Automatic |
|
|
361
|
+
|--------|--------|-----------|
|
|
362
|
+
| Trigger | User runs `/fire-7-review` | Spawned by orchestrator (`fire-3-execute`, `fire-4-verify`, `fire-loop`) |
|
|
363
|
+
| Default | OFF (user opt-in) | ON (`--skip-review` to disable) |
|
|
364
|
+
| Gate | Informational | BLOCKS human testing |
|
|
365
|
+
| Simplicity | Optional persona | MANDATORY persona (always first) |
|
|
366
|
+
| Depth | User chooses `--depth` | Mapped from difficulty classification (Step 7.6) |
|
|
367
|
+
| Threshold | BLOCK on CRITICAL only | BLOCK on CRITICAL OR 3+ HIGH |
|
|
368
|
+
| Output | `.planning/reviews/` | `.planning/phases/{N}-{name}/{N}-REVIEW.md` |
|
|
369
|
+
|
|
370
|
+
**Automatic mode is stricter** because it gates human testing. Manual mode is informational — the user decides what to act on. Automatic mode enforces: both verifier AND reviewer must independently approve.
|
|
371
|
+
|
|
372
|
+
### Simplicity Guardian Checklist (v8.0)
|
|
373
|
+
|
|
374
|
+
The Simplicity Guardian asks on every review:
|
|
375
|
+
|
|
376
|
+
1. Could this be done with FEWER lines? (not golf — clarity)
|
|
377
|
+
2. Are there abstractions that serve only ONE caller?
|
|
378
|
+
3. Are there helper/utility functions for one-time operations?
|
|
379
|
+
4. Is there error handling for scenarios that can't happen?
|
|
380
|
+
5. Are there config/feature flags for non-configurable things?
|
|
381
|
+
6. Is there backwards-compatibility code for things nothing depends on?
|
|
382
|
+
7. Could a junior dev understand this in 30 seconds?
|
|
383
|
+
8. Are comments explaining WHAT instead of WHY? (sign of unclear code)
|
|
384
|
+
|
|
385
|
+
**Severity:** HIGH for unnecessary abstractions, premature optimization. MEDIUM for verbose-but-functional code.
|
|
386
|
+
|
|
387
|
+
---
|
|
388
|
+
|
|
389
|
+
## Success Criteria
|
|
390
|
+
|
|
391
|
+
### Required Outputs
|
|
392
|
+
- [ ] All specified personas executed review
|
|
393
|
+
- [ ] Findings aggregated and de-duplicated
|
|
394
|
+
- [ ] Review report generated with actionable items
|
|
395
|
+
- [ ] CONSCIENCE.md updated (for phase reviews)
|
|
396
|
+
- [ ] Clear BLOCK/APPROVE recommendation
|
|
397
|
+
|
|
398
|
+
### Quality Gates
|
|
399
|
+
- **BLOCK:** Any CRITICAL finding
|
|
400
|
+
- **APPROVE WITH FIXES:** HIGH findings present, no CRITICAL
|
|
401
|
+
- **APPROVE:** Only MEDIUM/LOW findings
|
|
402
|
+
|
|
403
|
+
---
|
|
404
|
+
|
|
405
|
+
## References
|
|
406
|
+
|
|
407
|
+
- **Inspiration:** compounding-engineering multi-perspective review
|
|
408
|
+
- **Template:** `@templates/review-report.md`
|
|
409
|
+
- **Brand:** `@references/ui-brand.md`
|