fix: improve error handling for tool call parsing - #447
Merged
Conversation
Adds more detailed error messages when tool call parsing fails by providing the specific tool call parts that failed to parse. This will make debugging easier when issues occur with partial tool call parsing. The change uses anyhow::Context to add context to errors that might occur during tool call parsing.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Improve Error Handling for Tool Call Parsing
Description
This PR enhances error handling during tool call parsing by providing more detailed context when errors occur. By capturing and including the specific tool call parts that failed to parse in the error message, it becomes easier to debug issues with tool call parsing.
Changes
anyhow::Context as AnyhowContextimport to avoid name clash with theContextstructwith_context()to show which tool call parts failed to parseTesting
All tests pass in the
forge_domaincrate, indicating that these changes do not affect existing functionality.Motivation
When tool call parsing fails, the current error message doesn't provide enough information to diagnose the issue. This change adds more context to these errors, making it easier to debug when problems occur with partial tool calls.
Additional Context
This is a targeted, focused change that improves error reporting without changing the actual behavior of the code.