Series
The Governance of Debt
One argument, told in order: complexity you don't govern becomes debt. Every piece takes a guarantee out of somebody's head and builds it into something that holds without them. Read top to bottom, or start wherever the problem is yours.
Foundations
Write the decision down, enforce the boundary, don't multiply the pieces you have to govern, and know where the boundary lives when it fails.
Decisions You Don't Write Down Become Debt
Code tells you what the system does. Only written decisions tell you why — and the why is the one thing you can't reconstruct from the code.
A Boundary You Don't Enforce Is Just a Wish
A documented boundary an AI can paraphrase past is just a wish. A fitness function turns it into a wall the build won't let anyone cross.
The Number of Agents Is a Cost, Not a Capability
Every seam between separately-owned units is a place where coordination cost accrues. I learned it the expensive way, years before anyone said 'agent'.
Mostly Isolated Is a Breach with a Delay
Semantic search doesn't respect your tenants. If isolation is a ranking signal, the neighbor's document surfaces the moment it's a better match — and the model answers with data the user was never allowed to see.
Judgment at machine speed
When code arrives faster than anyone can read it, the guarantee has to move out of the review and into something that runs.
Decision rights
Enforcement stops where authority begins. Who decides, and where that authority has to sit for the decision to hold.
Reversibility and the cost of change
What it costs to stay able to change your mind, when to pay it, and why the bill is assembled long after the decision that caused it.
Legacy Complexity Is a Premium Nobody Wrote Down
Every move in this series buys you the ability to be wrong and recover. None of them are free. The question I had been answering by instinct is what any of it should cost, and when to pay.
The Exit Cost Is Never on the Invoice
Last week I argued that the cost of undoing a decision accretes after the decision. The replies came back from people who do not write code, which is how I found out the argument was never about code.