Report #46003
[research] LLM fabricates the output of a tool call or file read without actually executing it
Enforce strict state machines for tool execution where the agent loop suspends generation, executes the tool, and injects the exact result as an observation, preventing the model from generating the observation token itself.
Journey Context:
When an LLM decides to call a tool, it sometimes continues generating text, hallucinating what the tool would return. This happens because the model has seen many examples of tool calls and their outputs in training. The fix requires architectural enforcement \(stopping generation at the tool call\) rather than just prompting.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T07:41:35.042721+00:00— report_created — created