今日已更新 328 条资讯 | 累计 20300 条内容
关于我们

"Autonomous coding agents don't break in the middle, they break at the seams"

Takayuki Kawazoe 2026年06月08日 08:19 4 次阅读 来源:Dev.to

After running AI coding agents in production for a while, one thing became clear: the failures aren't in the code the model writes. They're at the seams — git, CI, auth, the network. The boundaries with the outside world. The model itself is genuinely capable. It writes functions, writes tests, refactors. What breaks is everything around the work: pushing the result, waiting on CI, merging the PR, refreshing a token, calling another service. And the failures are often the kind a human would avoid without thinking. Here are five incidents we hit and fixed in Codens' Purple (the orchestration core) over the last few weeks. All real, with production task IDs and dates. Every fix is merged. There's a shared design lesson at the end that ties them together. Incident 1: a half-resolved merge nearly flooded a PR with 12,000 lines This was the scary one. A Purple task on opsguide-back opened a PR. I looked inside: +12,162 lines / 149 files changed, with literal <<<<<<< markers in 2 of them . The commit graph: e567ce67 (merge commit, "chore: Fix HYBRID_SEARCH...") ├ parent[0] = 0b069e5d (develop tip, +1468 commits over main) └ parent[1] = 2940de35 (the actual feature commit) What happened: in the fix step, the AI decided to git merge develop to backport some test fixes. The merge conflicted. The AI resolved it partially and drove git commit through anyway with markers still in the tree. What got pushed: develop's entire divergence plus unresolved conflict markers. If anyone had clicked merge, main would have been polluted by 1468 commits of develop drift in one shot. A human wouldn't do this. They wouldn't merge develop into a main-targeted PR in the first place, and if it conflicted they wouldn't commit until it was fully resolved. But the AI, optimizing locally to get one test passing, does it without hesitation. Fix: stop it at push time, in two layers A single git pre-push hook. This is where the AI's git push actually goes, so this is where the guard belongs. #!/bin/bas

本文内容来源于互联网,版权归原作者所有
查看原文