Build Log · August 30, 2026
MedinaCHF 2026-2027 Roster Reconciliation & Load
Reconciled two roster CSVs against live production, previewed the load, then loaded 31 new families with real Clerk accounts and patched 17 existing ones — catching and fixing a wrong-org-id mistake and a real webhook bug along the way.
- MedinaCHF
- Data Migration
- Bug Fix
- families now in production
- 49
- new families created
- 31
- existing families patched
- 17
- real webhook bug found and fixed
- 1
families now in production
new families created
existing families patched
real webhook bug found and fixed
Timeline
Start
Reconciliation Charge received
Reconcile two roster CSVs against production, preview before running, report gaps after
~1h
Concurrency blocker
Other live session owned main checkout; worktree creation also broken; resolved once the other session wrapped and force-release was confirmed
~1.5h
Reconciliation report published
32 new / 17 existing / 4 items needing Zeb's call, all resolved
~2h
First load attempt — wrong org_id
Guessed org_mchf_placeholder instead of confirming the real org_id; bypassed real Clerk account creation
~2.25h
Caught, deleted, redone correctly
31 wrong-org rows deleted; redo used the real org_id and the real createUser Clerk flow
~2.5h
Case-sensitivity webhook bug found
2 of 31 new Clerk accounts never linked — fixed ilike() in the webhook, linked both stranded accounts
~3h
Gap report published, deployed, wrapped
Final missing-data report shipped; webhook fix deployed to production
What shipped
Reconciliation preview report (artifact) — new vs. existing families, field diffs, child diffs, 4 flagged review items
One-time load scripts: products/medinaCHF/scripts/_export-current-members.mjs, _load-new-families-corrected.mjs, _delete-wrong-org-families.mjs, _link-stranded-clerk-accounts.mjs
Fixed products/medinaCHF/app/api/webhooks/clerk/route.ts — case-insensitive email match (ilike instead of eq) for the user.created webhook
Final missing-data gap report (artifact, filterable by gap type) — 20 of 48 real families have at least one gap, mostly missing child birthdays
31 new production families with real Clerk accounts (no invitation emails sent, per instruction), 17 existing families patched (address/phone/spouse diffs + 23 missing children added), 3 confirmed data corrections applied (Knupp Maddie->Madeline rename, Meyer Braden/Bryce birth_year swap fix, Brooks upgraded to exact_date twin-of-Bryce)
“We don't use org id for medinachf. We don't use it. Look at my id.”