Writing

The Constraint That Outlived Itself

My pipeline built pull requests one increment at a time because my old laptop couldn't hold two checkouts of a big codebase at once. I replaced that laptop months ago and never noticed the reason was gone — until a coworker asked a simple question on a work trip.

The Robot Vacuum Needed a Contract

My Valetudo robot was already speaking MQTT. The useful part was turning that topic tree into a discoverable, validated Swamp model instead of making an agent guess.

Trust, but assert.

A fleet-wide upgrade chore turned into a published extension, and its first live campaign caught a bug in itself. Field notes on adopting swamp's new assert steps — and on making release adoption deterministic instead of a vibe.

View all writing →