diff --git a/data/sql/162_drop_district_economics_sat_factor.sql b/data/sql/162_drop_district_economics_sat_factor.sql index e36e0586..47c6044a 100644 --- a/data/sql/162_drop_district_economics_sat_factor.sql +++ b/data/sql/162_drop_district_economics_sat_factor.sql @@ -5,8 +5,14 @@ -- The live market sub-score uses sat_score = min(100, sold_pct * 100 / 70) directly, -- so sat_factor double-counts absorption without being applied anywhere. -- All code references removed in the same commit as this migration. +-- +-- NB: ALTER TABLE *IF EXISTS* — district_economics is created by the site-finder +-- pipeline (09_macro_and_trend.py / server.py), NOT by data/sql migrations, so it may +-- be absent on the main Postgres. Without IF EXISTS the deploy fails with +-- "relation district_economics does not exist" (DROP COLUMN IF EXISTS only guards the +-- column, not the table). Idempotent + safe when the table is absent. BEGIN; -ALTER TABLE district_economics DROP COLUMN IF EXISTS sat_factor; +ALTER TABLE IF EXISTS district_economics DROP COLUMN IF EXISTS sat_factor; COMMIT;