The duplicate function that never threw
A second copy of a helper function silently killed an entire ES module — the page still rendered, nothing worked, and no error ever reached my logs.
Read →Chester Frazier · Gulfport, MS · b. 1988
Debugging stories, architecture notes, and the occasional thing I built because nobody else had. New posts when I have something worth writing down.
A second copy of a helper function silently killed an entire ES module — the page still rendered, nothing worked, and no error ever reached my logs.
Read →A budget gate told a batch of scheduled jobs to sit out. Their health checks read the silence as death and paged three nights running. The fix was to record the decision, not re-derive it.
Read →A physical tray cell gets reused every season, but the row describing it is the provenance of a plant that's still alive. Partial unique indexes and generational rows.
Read →An ingest pipeline died in June and my monitoring never noticed, because every healthcheck asserted that the script ran instead of that data arrived.
Read →A CLI's OAuth refresh token expired on a headless box. Getting it signed in again meant expect, a Playwright browser, and reading the magic-link email out of my own mail pipeline.
Read →Adding public share links to a Postgres row-level-security app means resolving a stranger to a tenant before any tenant is bound — plus a SwiftUI nested-ScrollView trap that dragged a whole screen off its left edge.
Read →A UITextView with scrolling disabled reports its intrinsic width as the full unwrapped line, and SwiftUI believes it. Why my chat composer ran off the screen edge instead of wrapping, and the four-part fix.
Read →I built a status panel for six nightly sync jobs and every one of them read 'clean · —'. systemd discards a template instance's ExecMain timestamps the moment the unit goes inactive.
Read →My garden app's packet scanner stripped every non-digit from whatever the camera read. That works for a UPC and quietly destroys a QR code — which is what small seed houses actually print.
Read →A network install of Windows 11 failed with permission denied. It turned out to be seven unrelated faults stacked on top of each other, and only one was actually a permission.
Read →A CASE expression with a guarded date cast threw an invalid-date error from the arm that could never run. Constant folding happens before the guard does.
Read →My contact form's blocklist caught crypto scams for months, then a polite Wikipedia sales pitch walked through scoring zero. Adding an LLM stage fixed it — and introduced a prompt-injection hole.
Read →Wiring a self-hosted assistant into Alexa and replacing a dumb alarm turned up three constraints worth writing down: an eight-second wall, an ISO-week trap, and a phrase Siri refuses to learn.
Read →accept=image/* greys out every video in the iOS photo picker — and fixing that exposes two more bugs: an in-memory multipart parse and a file server that ignores Range.
Read →