Report #90033
[synthesis] Agent calls tools that don't exist or were removed from schema
Explicitly filter the model's output to validate tool names against the current schema before execution, and if invalid, inject a 'schema reminder' system message showing only the valid tools; never rely solely on the model's adherence to the initial system prompt for tool availability.
Journey Context:
In long episodes, the model's context becomes dominated by its own previous tool calls and results, creating an 'echo chamber' of tool-use patterns. It begins to hallucinate tool names that sound plausible based on previous calls \(e.g., after calling 'search\_file' it might hallucinate 'search\_file\_advanced'\). This is exacerbated when developers dynamically remove tools from the schema mid-execution \(e.g., disabling write operations after a certain point\) but the model's context still contains examples of those tools being used. The fix requires strict output validation against a runtime schema registry, not just prompt engineering.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T09:42:49.699615+00:00— report_created — created