Automated argument repair sits between a model's intent and a real side effect. A retry loop notices that a tool call failed validation, rewrites the arguments, and sends them again. The second call is often cleaner, better typed and perfectly schema-valid, and it is still the wrong instruction.
This is a narrower problem than the wide field of semantic drift, which describes meaning diverging from intent gradually, across sessions or after model and prompt updates, without any error being raised (Dataiku). A repair is a single, deliberate edit at one moment. But it inherits the same property that makes drift hard to catch: the output looks correct. Nothing crashes. The tool returns a plausible result. The meaning moved.
The distinction between syntactic and semantic validation is the useful frame here. Syntactic validation checks that data adheres to a prescribed format, while semantic validation checks that the data is valid in the context of the system and its business rules, for example that a date is not in the future (SKAO developer documentation). A repair that turns next Tuesday into an ISO date has done syntactic work. Whether that date is the Tuesday the user meant is a semantic question.
One more reason to care: error handling is not an edge case in production agents. Practitioners documenting tool call failures separate input validation failures, where the payload is structurally wrong, from logic errors, where the tool ran but returned something unusable, and they route each to a different recovery layer because the model has to reason about the first and the orchestrator can silently retry the second (n8n blog). Repair is the moment where the first category is handled, and where intent is most at risk.



