Blocker #1: cad_parcels_geom DROP → back-compat VIEW
Old DROP TABLE would break site-finder analyze fallback (per 83_*.sql COMMENT).
Now: drop old BASE TABLE (guarded by table_type), create VIEW over cad_parcels
with identical 4-column signature. Callers continue to work; PR2/5 will switch.
Blocker #2: K.3 redundant RENAME CONSTRAINT removed
ALTER INDEX RENAME on PK index already renames the backing constraint in PG16.
Second ALTER TABLE RENAME CONSTRAINT would throw 'does not exist' and abort tx.
Lesser #1: cadastre_jobs.status CHECK constraint
Inline CHECK (status IN ('queued','running','done','failed','zombie','cancelled','paused'))
per partial-index intent and admin UI plan.
Lesser #2: COMMENT ON TABLE for all 8 tables + view (keeps convention from 63, 83).
Lesser #3: set_updated_at() triggers on 7 tables with updated_at column.
Reuses existing function (verified present). DO $$ guards on pg_trigger
for idempotent re-apply. cadastre_jobs excluded (uses heartbeat_at instead).