Production deploys run from GitHub Actions after migrations; staging stays off Vercel until merged to main.
GitHub Actions remains the sole deploy path after Supabase migrations; vercel.json ignoreCommand skips integration-triggered builds.