29F Rewire — Status Board

Frozen 29F look  +  Neon engine underneath  |  Ohio Clean Cans
Last updated: July 4, 2026 (overnight) — ALL DATABASE NUMBERS NOW MATCH. Stage A (customers) AND Stage B (jobs) synced into Neon through the audited pipeline. Neon now computes Active Subscribers 1,837 · Stops This Week 321 · Orders This Month 7 · Orders YTD 20 — every one identical to your live dashboard, by your exact definitions. Howard: register + sign in, then open the proof page — the database rows should ALL be green. Only the Square/Stripe revenue widgets and pricing-table projections remain (separate phase — they're processor calls, not database math).
Standing rules: The mirror (Tools\29F_MIRROR_2026-07-03) is FROZEN — never edited. Live production (occ-app-29f) is untouched. All payment/send switches stay OFF. No tab counts as done until Howard opens it and approves it.
✅ DONE

Phase 0 — Freeze the Look

Exact mirror of live 29F saved (85 files). This is the visual truth — pixel-identical because it IS 29F.

✅ DONE

Phase 1 — Recon

30F + Neon inventoried (read-only). Verdict: Neon engine (occ-auth, 150+ endpoints) is real, decoupled, and can back plain HTML. 30F = parts shop.

✅ DONE

Phase 2 — Working Copy + This Status Board

Working copy at Tools\29F_REWIRE (rewiring happens here, never in the mirror). This page is the live scoreboard.

✅ DONE

Phase 3 — Call Map

100+ data calls cataloged across every tab. 75–80% have a direct match in the Neon engine. Gaps (prepaid manager, postcards/NFC, intel analytics, discounts) keep their OLD wiring for now — nothing gets guessed. Cleanest first tab: Dashboard.

🔨 WORKING

Phase 4 — Foundations: Adapter, Auth Bridge, Engine Endpoints

✅ Neon adapter + secure proxy (audit: PASS). ✅ Engine multi-site login shipped + verified. ✅ Login page live at /neon-login.html — waiting on Howard's one-time registration. ✅ First engine endpoints (Dashboard KPI math, 29F-exact) shipped after TWO audit rounds — 6 real findings caught and fixed before deploy, including an over-count bug of the exact type that caused the April 11 incident. ✅ Proof page live with tonight's real 29F numbers (1,837 subscribers · 321 stops this week) as the targets Neon must hit.

🔨 WORKING

Phase 5 — Data Refresh

Stage A (customers) DONE: 5 schema columns + all 4,334 customers synced (audited, upsert-only, zero deletes) — 1,837 Active Subscribers exact. ✅ Stage B (jobs) DONE: 1:1 mirror of all 13,343 jobs (new dedicated table, zero risk to anything else) — 321 stops / 7 orders MTD / 20 orders YTD all exact, status vocabulary matches row-for-row. Both pipelines are re-runnable for freshness (re-run cadence = Howard's call). Flagged for Howard: 176 stale June-seed leftover customer rows (cleanup = his call).

⬜ QUEUED

Phase 6 — Tab-by-Tab Rewire

Each tab: wire it → verify numbers → Howard opens it → approved. One at a time.

Dashboard (KPIs)🔬 ALL database KPIs matching (1,837 · 321 · 7 · 20) — awaiting Howard's proof-page confirm
Routes / Schedule boardNot started
Customers / CRMNot started
Money / BillingNot started
Inbox / CommsNot started
ReportsNot started
Automations / SettingsNot started
⬜ HOWARD

Phase 7 — Cutover Decision

When every tab is approved: Howard decides when the rewired 29F becomes the daily driver. Nothing swaps without his word.