mirror of
https://github.com/jjbrunton/Sauci.git
synced 2026-10-31 18:19:43 +00:00
Skip Terraform for function-only Supabase releases to avoid unrelated provider drift failures. Continue applying infrastructure for terraform path changes or explicit manual deployment requests.
1.1 KiB
1.1 KiB
Database migration safety
All schema changes are versioned local files under apps/supabase/migrations/.
Required workflow
npm run db:migration:new -- <descriptive_name>- Edit the generated local migration.
- Prefer idempotent SQL where semantics permit it.
npm run db:resetagainst local Supabase.- Run
npm run test:supabaseand affected application checks. - Commit the migration with dependent code and types.
Forbidden paths
- Never call a remote
apply_migrationMCP tool. - Never execute DDL through MCP SQL execution.
- MCP SQL execution is read-only
SELECTuse only. - Never insert migration history manually except an explicitly approved repair.
- Never hardcode a production URL in a migration or cron definition.
CI deploys committed migrations and Edge Functions to non-production after relevant
pushes. Production promotion is a manual workflow dispatch. Terraform is applied
only when files under terraform/ change, or when deploy_infrastructure is
explicitly selected during a manual deployment. Local verification must not link a
remote project.