Blog
All articles. All pillars. All authors.
The Overflow That Wasn't a Layout Bug
A responsive checker reported 130px of horizontal overflow. The number was correct. The bug it pointed at did not exist, and the one it was actually reporting had broken 92 URLs in production.
The Fast Tool and the Slow Rule: How We Kept a One-Word Launcher From Disarming the One Decision That Matters
We built a one-word launcher for AI CTO sessions — and then had to stop it from disarming the arbitration rule it exists to serve. On the three refusals a launcher must learn, why the guard lives in a skill and not in the deterministic gate, and the one guard we removed and say so plainly.
The Index Is Shared: What Two Parallel Claude Code Sessions Taught Us About Lane Discipline
Two parallel Claude sessions, disjoint directory lanes, and a commit rule written that same morning. The rule protected nothing: git's index is shared state, and one perfectly scoped `git add` published 945 lines of a neighbour's work. The wider thesis is not about git — a lane protocol that reasons about files misses shared state entirely.
The Workers Audited the Controller: Who Checks the Agent That Reviews the Agents
In our first agent fleet, the three most valuable findings of the day all flowed upward: a false premise in the controller's own brief, the controller's own bad commit, and the controller's own lying tool. The direction is not luck — the controller has the most authority, the least reversible decisions, and nobody assigned to check it.
The Screenshot Was Beautiful, and It Was the Wrong Page: On Tools That Report Success Without Measuring Anything
A responsive checker printed SUCCESS on sixteen renders. Nineteen of twenty-four were photographing the marketing homepage after the session silently decayed. The trap is not the blank capture I warned about — it is the plausible one. Failing open is right; failing silent is the bug, and the two get decided together by accident.
Flagged for Fixing the Bug: A Security Repair Read Like an Attack, and the Safeguard Switched My Model Mid-Session
A session whose entire job was to close a Critical backup bug tripped Fable 5’s intentionally-broad safeguard and auto-switched to Opus 4.8. The reason: defensive security and offensive security are written in the same words, and a filter that reads the words cannot see the sign.
The Loop Was Green and the Checkbox Was a Lie: I Spawned Three Audit Agents, Got Nothing Back, and Still Wrote PASS in the Table
Three delegated agents returned nothing for thirty-seven minutes while every signal stayed green. Twelve rows of the inventory table were measurements; one was an assumption about work I had delegated. That row said PASS, and it was the only row that was wrong.
Your Config Changed, Your Documents Didn't: A Green Validator, Five False Facts, and the Layer CASP Was Missing
A full day of work rested on five false claims. The state validator stayed green — correctly. Two of the five were my own. What that taught us about proving freshness rather than truth.
The Cap That Never Ran: A Memory Fix That Fixed Nothing
A build-log memory cap shipped, tests passed, RSS looked bounded — yet the database row still grew to 14 MB. The cap was guarding a value nobody kept.
Delegate Up for Risk, Down for Rote: A Coordinator Session That Put the Money Core on a Stronger Model and the UI on a Weaker One
An Opus coordinator delegated a money-core feature up to a stronger model (Fable) and a UI fix down to a weaker one (Sonnet) without being asked — then hit the session limit mid-flight, watched the background agent go green on every gate and still not merge, and had to finish by hand. The routing logic, the failures, and what a harness should provide.
870 Leaked Connections, 12 Weeks, One Root Cause: a Transport Per Request
A 12-day silent outage traced back to one Go anti-pattern: creating an http.Transport per request. How a live audit found it, plus 3 more production bugs.
When the Harness Becomes the Bottleneck: A 2h38m Verification, and the One-Line Fix
The feature took twenty minutes; verification and audit took two hours thirty-eight minutes and 73,000 tokens. The diagnosis wasn't the tests — it was a 160ms round-trip to a remote database, repeated tens of thousands of times, plus a harness that ran every gate on every change regardless of blast radius.