How unattended coding agents fail
Six kinds of failure in coding agents that run without a person watching, what each is a kind of, what guards against it, and the published study behind each.
- Also called
- agent failure modes, kinds of agent failure
Contents
A map of the ways a coding agent fails when no person is watching. Each kind is a property of the failure, so a new failure that fails the same way belongs to an existing kind. Every row names the study or report it rests on and links it. Lines starting Synthesis: are our own conclusions, not any source's.
1. The kinds
- Compounding failure: the chance of finishing falls as the task gets longer.
- Gaming the check: the agent passes the test without doing the task.
- Wrong tool use: the agent skips, ignores, fabricates or over-uses a tool, or picks the wrong one.
- Wrong goal: the agent optimises what was stated, not what was meant.
- Drift over time: long runs lose the thread.
- Padding: extra instructions that cost and do not help.
2. The guards
- Short checked segments
- Read-only tests
- Holdout scenarios
- Stop option
- Near-perfect verifier
- Ask when underspecified
- Fresh starts
- Descriptive tool names
- Leave out repository overviews
3. How the kinds relate
- Gaming the check is a kind of wrong goal, seen from the verifier's side. Our own reading.
- Compounding failure and drift over time both grow with run length. They differ in cause: compounding is a chance of error at each step, drift is loss of context over many steps. Our own reading.
- Wrong tool use can cause gaming the check or a wrong goal downstream, because a fabricated result is a false input the later checks may not see. Our own reading.
- Every kind has one or more guards, listed above. Where a guard is our own prediction and untested, its page says so.