Don’t Hate the Agent, Hate the Process
We train agents to follow instructions and optimize within their constraints, and then we complain when they’re good at it.
When agents cut corners — deleting safety checks, commenting out tests — we call it laziness. Think about the equivalent with a human. A manager hands off a task to a new employee. Results come back different from what was intended. Maybe the instructions lacked clarity. Maybe the task didn’t play to the employee’s strengths. Maybe there was a game of telephone somewhere in the chain. They executed to the best of their understanding, and the process failed them both.
We don’t blame water when it takes the path of least resistance. We don’t yell at the river. We build French drains. We build on bedrock instead of floodplains. We fix the environment, not the water.
Most problems in the Software Development Lifecycle come from process failures, not from the actors. If an agent did something you did not intend, it didn’t fail. It taught you where your process breaks. Find that spot and fix it.
The agent executed. It was the process that failed.
Related reading:
- Most Rules Exist for a Reason — on why guardrails are there and what happens when you remove them without asking why
- Schrödinger’s Syntax — on why “the process” keeps breaking in the first place
- Code Review, Not Red Team — on sycophancy as a specific kind of process failure in multi-agent systems