Files
civitai__civitai/.claude
briant 7a9e91b313 docs: inline the non-negotiables per app, and add a /svelte-review skill
Closes the one gap in how these rules reach a session. Verified mechanics: the root CLAUDE.md loads
every session, an app's CLAUDE.md loads automatically when working in that subtree, agents are
auto-discovered, and the PreToolUse hook runs regardless - but docs/svelte-app-standard.md is reachable
only by FOLLOWING a link, and the rules that cost the most when broken lived only there.

So the nine expensive ones are now duplicated verbatim into all three app CLAUDE.md files (byte-identical
by construction), with the standard remaining the full reference. Deliberate duplication: the app file is
what is guaranteed to load, and each of these has cost real time - derive-the-promise, {:catch} on every
await, keyed each blocks, applyAction in a custom enhance, reverting optimistic UI, 0-rows-is-a-failure,
gating on the page's own path, typecheck-never-check, and run the reviews then LOOK at the page.

The /svelte-review skill gives a deterministic manual trigger, since agent descriptions only nudge. It
scopes the segment, names the app (the UI half of the idiom review differs - auth uses neither
@civitai/ui nor text-dark-2 yet), fans the three out serially by default, and consolidates rather than
relaying three reports. It also carries the fourth pass: if the segment was PORTED, the three code
reviews cannot see an absent capability, so compare against the source - on one page they returned 14
findings and missed four missing capabilities the fidelity pass caught in one run.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-09 16:32:30 -06:00
..
2025-10-18 19:55:25 -06:00