brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
phx-challengeChallenge mode reviews - rigorous questioning before approving changes. Use when you want thorough scrutiny of Ecto…
Independent GitHub snapshot · Automated classification · Original documentation governs
Rigorous, critical review patterns inspired by Boris Cherny's "Grill me" approach. Push beyond first solutions to ensure quality.
$elixir-phoenix:phx-challenge ecto)Grill the developer on database changes:
Migration Safety
Query Performance
Schema Integrity
Backward Compatibility
$elixir-phoenix:phx-challenge liveview)Prove the LiveView handles all cases:
Event Coverage
handle_event clause and expected socket statePubSub Handling
handle_info clause and when it's triggeredState Transitions
Memory & Performance
$elixir-phoenix:phx-challenge pr)Senior engineer review checklist:
Must Pass
Performance
OTP
Security
Run this before analysis so consecutive runs don't re-report identical issues.
.claude/plans/*/reviews/ and .claude/reviews/ for prior findings## Challenge: Ecto — Orders Migration
### FINDING 1: Table lock risk (HIGH)
AddColumn on `orders` (2.1M rows) will lock table during deploy.
**Proof needed**: Run `SELECT count(*) FROM orders` — if >1M, use
`ALTER TABLE ... ADD COLUMN ... DEFAULT NULL` (no lock).
### FINDING 2: Missing index (MEDIUM)
New `WHERE status = ?` query on line 45 has no index.
**Action**: Add `create index(:orders, [:status])` to migration.
### Status: BLOCKED — 2 unresolved findings
Run $elixir-phoenix:phx-challenge [mode] to initiate a rigorous review. The reviewer will not approve until all concerns are addressed with evidence.
Example workflow:
$elixir-phoenix:phx-challenge ecto after migration changes