Blog Archive

Don't Delete the Row. Delete the Key.

Append-only history and GDPR-style erasure look incompatible. They are not, if you put the secret in two places.

There Is No Workflow Engine. It's Just Git.

My agent pipeline runs for hours, survives Ctrl+C, and resumes from where it stopped. There's no Temporal, no queue, no database. The state lives in YAML files and commits.

I've Been Shipping 'Multi-Tenant' Wrong for a Decade

Every system I built had a tenant_id column and a discipline problem. This is the first one where the database itself refuses to return the wrong rows.

Voice Agents Don't Need to Be Faster — They Need to Feel Faster

Two agents with identical latency can feel completely different. The gap is fixable at the orchestration layer, without touching the model.

I ran a maintenance agent for 10 days. The number that mattered was 14

A maintenance agent filed 559 bugs and fixed 412 on its own. The interesting number is the 14 it refused to touch.

Parallelism Was a Workaround. Agents Make It Optional.

Feature branches and merge queues were how we coped with slow humans. When an agent finishes a task in ten minutes, the overhead is the bottleneck.

Don't Read the PDF. Write the Parser.

I stopped feeding hospital PDFs to a vision model. When the layout changes, the AI fixes the parser instead — and production never sees a token.

Voice Agents Don't Know When You're Done Talking

Most builders assume end-of-turn detection is a silence threshold. That model breaks in production. The fix is architectural: four probabilistic events, speculative reasoning, and everything downstream cancellable.