An agent patch is a hypothesis about your codebase. It makes three claims: the invariants still hold, the output changes are intended, and the new failures are not flukes. CI should test all three claims before a human opens the diff.

The gate I keep coming back to is a three-checkpoint contract. Property delta. Fixture delta. Flake freeze. Each checkpoint answers a question a reviewer would ask anyway; the goal is to make the answers machine-checkable so the review budget goes where it matters.

Patch generation is getting cheaper, which moves the constraint. Give a patch generator free model access and a free server option — MonkeyCode is the concrete case this article is written around — and the cost per patch attempt drops toward zero. Review time does not drop with it. If reviewing one patch costs more than generating ten, the agent wins by attrition.

Disclosure: This article was prepared as part of MonkeyCode's product outreach.

The contract below is model-agnostic. It does not care whether the patch came from a free endpoint, a local model, or a teammate, and treating the free tier as an availability claim rather than a benchmark is enough. Nothing here depends on a model name, a quota, or an uptime number.