warning
free in the CLI
Rename or drop breaking the deploy window
Warning — this works, but blocks traffic or rewrites data at scale.
What it catches
Between the migration running and the last old app instance stopping, old code still queries the old name. A rename or drop makes those queries error immediately — a partial outage that lasts exactly as long as your rollout.
Fires on
ALTER TABLE users RENAME COLUMN email TO email_address;Do this instead
Expand/contract: add the new name alongside the old, have app code write both and read the new one, backfill in batches, then drop the old name a release after no deployed code references it. A rename becomes two additive steps that never break in-flight queries.
SET lock_timeout = '5s';
ALTER TABLE users ADD COLUMN email_address text;
-- dual-write both columns from the app, backfill in batches,
-- switch readers, then drop the old column a release laterCatch this before it ships
This rule runs locally in the free CLI — or with the full corpus through the hosted service: npx bolvrk check migration.sql