perf-audit · git:20260926.9dc1355 · 2026-09-26 · sha256 fc4c5a3e309f706e
perf-audit git:20260926.9dc1355A
Immutable. This exact content never changes and is served at /api/v1/blob/fc4c5a3e309f706e.
--- name: perf-audit description: "Measures and improves performance against budgets — Lighthouse (mobile) / Core Web Vitals, bundle analysis, API p95 with k6, DB EXPLAIN, Go/PHP profiles, game frame/draw-call/memory; ranks fixes by impact; writes docs/ops/perf-audit-<date>.md. Required before release." argument-hint: "[web | api | db | game | full] [url]" user-invocable: true allowed-tools: Read, Glob, Grep, Bash, Write, Task, AskUserQuestion model: sonnet agent: performance-engineer --- # Perf Audit Reply in the project conversation language (CLAUDE.md → Language); code, identifiers, paths and commit messages stay in English. Budgets — `technical-preferences.md`; references `stack-reference/web-platform.md`, `database.md`, `graphql.md`, `threejs-webgames.md`. ## Phase 1: Baseline (Bash, whatever is available) Web: `lighthouse --preset=perf --form-factor=mobile` / Lighthouse CI; `ng build --stats-json` / `vite build` + visualizer; API: `k6 run` scenario (create with consent); DB: `EXPLAIN (ANALYZE, BUFFERS)` on top queries, `pg_stat_statements`; Go `pprof`, PHP Blackfire/Xdebug; game: `renderer.info`, a Performance trace, memory. A missing tool — say so, offer installation. ## Phase 2: Analysis Table "metric → value → budget → status"; findings with estimated gain and cost; the 3 cheapest. ## Phase 3: Fixes (with consent) Through the relevant engineers; re-measure with the same method — before/after. ## Phase 4: Write 1. "May I write `docs/ops/perf-audit-<date>.md`?" — one `AskUserQuestion`: write (Recommended) · show the draft/diff first · not now. After the "write" answer: `touch .claude/.write-consent` (rule 7). 2. For every `OVER BUDGET` metric, one `AskUserQuestion`: record it in `production/findings.md` (`PERF-NNN`, template `findings.md`) (Recommended) · improvement stories now · report only — so the budget miss reaches `/create-stories` and `/sprint-plan`. Verdict: `WITHIN BUDGET` | `OVER BUDGET (metrics: …)`. Next step — one `AskUserQuestion`: improvement stories (Recommended) · `/release-checklist` · re-run `/perf-audit` after fixes.