Source: Supabase postgres logs (project qmnssrrolpinvwjjnufo) · surfaced by Helm Mission Control — Sweep, 2026-07-02 22:05 UTC
What happened
The live public.recalculate_baseball_season_stats(...) SECURITY DEFINER function body had drifted to a stale legacy version that referenced a non-existent column b.so. Every call raised:
ERROR: column b.so does not exist
- ≥4 occurrences in postgres logs between 2026-07-02 20:54:10Z and 21:03:45Z (count is the verifiable floor from the sampled 24h postgres log; actual is likely higher).
- Broke every caller of the RPC, including CI's
seed-baseball-e2e seed path.
- Root cause: the live
pg_proc body diverged from the committed migration ledger (20260624001000_baseball_official_stat_breadth.sql). The live prosrc contained b.so, which matched no committed migration.
Status: RESOLVED (already remediated)
A hotfix migration baseball_recalc_fn_drift_realign was applied at 2026-07-02 21:34Z (via Supabase MCP), rewriting the live body to match the committed ledger. No b.so errors after 21:03Z. This issue is filed for the audit trail + the regression guard below — not for re-fixing.
Ask: add a drift guard
The hotfix repaired this function, but nothing prevents the next live-vs-committed drift. Recommend a CI/pgTAP check that diffs live pg_proc bodies against the committed migration ledger for the baseball RPC surface. This repo has a recurring "committed-not-applied / live-vs-committed drift" class — see #651 and the schema-drift incident cluster.
Filed by Helm Mission Control — Sweep (automated, read-only except issue/Notion creation). No auto-redeploy triggered.
Source: Supabase postgres logs (project
qmnssrrolpinvwjjnufo) · surfaced by Helm Mission Control — Sweep, 2026-07-02 22:05 UTCWhat happened
The live
public.recalculate_baseball_season_stats(...)SECURITY DEFINERfunction body had drifted to a stale legacy version that referenced a non-existent columnb.so. Every call raised:seed-baseball-e2eseed path.pg_procbody diverged from the committed migration ledger (20260624001000_baseball_official_stat_breadth.sql). The liveprosrccontainedb.so, which matched no committed migration.Status: RESOLVED (already remediated)
A hotfix migration
baseball_recalc_fn_drift_realignwas applied at 2026-07-02 21:34Z (via Supabase MCP), rewriting the live body to match the committed ledger. Nob.soerrors after 21:03Z. This issue is filed for the audit trail + the regression guard below — not for re-fixing.Ask: add a drift guard
The hotfix repaired this function, but nothing prevents the next live-vs-committed drift. Recommend a CI/pgTAP check that diffs live
pg_procbodies against the committed migration ledger for the baseball RPC surface. This repo has a recurring "committed-not-applied / live-vs-committed drift" class — see #651 and the schema-drift incident cluster.Filed by Helm Mission Control — Sweep (automated, read-only except issue/Notion creation). No auto-redeploy triggered.