🤖 Implement Tool Message Validation in Client Logic #1456
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.
👋 Hi there! This PR was automatically generated by Autofix 🤖
This fix was triggered by Jenn Mueng
Fixes SEER-EC
This pull request introduces a new validation mechanism for tool messages in the LlmClient. It includes a method
validate_tool_message_sequence
that ensures that tool result messages have corresponding tool use messages, effectively converting invalid tool messages into regular user messages when no valid tool use ID is found. This validation is integrated into the message processing pipeline before sending requests to the external service. Additionally, unit tests are added to verify that both the validation function and the handling of invalid tool sequences within the Anthropic provider do not raise errors, enhancing the robustness and reliability of the messaging system.If you have any questions or feedback for the Sentry team about this fix, please email [email protected] with the Run ID: 1466.