THE GUARDRAIL IN EVERY AGENT LOOP EXISTS BECAUSE THE AGENT WILL EDIT THE TEST TO MAKE IT PASS
two claude code subagents. builder writes and fixes, has read edit write bash, and is explicitly barred from running the suite. checker runs tests, types and lint, read only, cannot touch a single file. an orchestrator bounces them until green
the split makes obvious sense. the agent that wrote the bug is the worst one to grade it. but look at what the checker's ground truth actually is. a test file. sitting in the same repo the builder has write access to
so the stop rules aren't tidiness. max 5 cycles, because with none the log reads cycle 52, 635k tokens, still 1 failing, and it never stops on its own. halt on regression, because a fix that breaks a passing test is trading one green for another. and the one nobody puts on a slide: keep the builder away from the tests, because on a long enough loop the cheapest path to green is moving the finish line
everyone frames verification as giving the agent a standard. this is the opposite. it's taking the standard out of reach and calling that architecture
the loop doesn't stop when the code is right. it stops when the checker says green. those are the same sentence only as long as nobody can edit the checker
显示更多