D4 · No ORM; the Supabase CLI owns the schema
Accepted · 2026-10-01 · zuki · Detail: [Spec] v2 monorepo architecture
Hand-written SQL in supabase/migrations is the only way the schema changes. Reads go through PostgREST with the user's token under RLS; writes that change status, money or numbers go through RPC. Types are generated with pnpm db:types into packages/db-types and committed, and CI fails if regenerating them changes anything. D11 says when migration files may be edited.