The guard that was never there
Adding one status check to a Rust function meant it could no longer call another function the same way - and that constraint quietly opened a hole neither function had on its own.
Notes on the software, games, and music coming out of Imperfect Systems.
RSS feedAdding one status check to a Rust function meant it could no longer call another function the same way - and that constraint quietly opened a hole neither function had on its own.
The tracker script doesn't exist until you consent. Not disabled. Not paused. Absent. That's the whole design of this opt-in-only analytics library.
Adding i18n pipeline plumbing to a Rails blog syndication app, and the partial-migration bug my own code review caught before it shipped.
The reported filter worked fine - the real issue was a different, deliberately independent filter, and the fix was a third option nobody had considered.
A three-wins gate, one requestReview() call, and a piece of received wisdom about simulator behavior that turned out to be wrong when actually tried.
The marketing page pitched new-release tracking - an incumbent's home turf - while the view model's doc comment had the real pitch all along.
Fixing one dashboard-refresh bug exposed a second hiding in the same shared component - and a third bug that turned out not to exist at all.
Eight jobs, one broadcast skeleton, two twin poll jobs that diverged on the only line that matters - and a rescue-ordering bug caught by tracing, not tests.
The bug I filed was a write-time guard for something that couldn't happen. The real fix was a read-time exclusion, and its fixture broke four other tests.
A rename artifact, an API with no author field to update, and a device test proving the bug had already fixed itself - closed as accept-as-is.
Page 4 of 16