fix(gemini): handle tool usage after reasoning content #1647
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When using Gemini 2.0/3.0 models with thinking/reasoning enabled, the model may emit a reasoning block followed immediately by a tool call in the same stream chunk or sequence.
The current implementation initiates the reasoning block but fails to close it before processing the tool call, leading to state errors (nested blocks).
This patch ensures any open content block (like reasoning) is closed before a tool call start event is emitted.