Report #62297
[frontier] Agent hallucinates new parameters or forgets required fields in tool schemas after 20\+ tool calls
Implement Schema Re-anchoring: every 10 turns or after every 5 tool calls, re-inject the full JSON Schema of available tools into the context as a 'fresh system message,' not just referencing tool names or relying on cached descriptions.
Journey Context:
Developers assume that once an LLM has seen a tool definition, it remembers the schema indefinitely. However, after repeated calls, the model begins to 'cache' the tool as a fuzzy concept rather than the exact schema, leading to parameter hallucination \(adding 'timeout' to a schema that doesn't have it\) or omission of required fields. This is analogous to the 'Gorilla' problem in API calling, but manifests dynamically over session time. Common workarounds like 'few-shot examples' in the system prompt degrade because the examples get buried or the model overfits to the example format. Schema Re-anchoring treats tool definitions as state that expires, forcing a refresh of the exact JSON Schema \(including descriptions, enums, required arrays\) into the active context window periodically. This is more token-heavy but prevents the gradual 'fuzzy matching' of tool signatures that causes production incidents where agents call APIs with hallucinated parameters.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T11:03:05.845578+00:00— report_created — created