The normalized finish_reason a driver reports when the model called a tool the request did not
make available — Gemini's UNEXPECTED_TOOL_CALL, raised when the model calls a tool on a request
whose tool choice forbids it or that declared no such tool. Like a malformed call, the turn
carries no toolCalls; the agent loop turns it into a corrective retry.
The normalized
finish_reasona driver reports when the model called a tool the request did not make available — Gemini'sUNEXPECTED_TOOL_CALL, raised when the model calls a tool on a request whose tool choice forbids it or that declared no such tool. Like a malformed call, the turn carries notoolCalls; the agent loop turns it into a corrective retry.