chore: eliminate redundant work and inconsistency in TracingCallbacks#57
Merged
aakashb95 merged 1 commit intoMar 17, 2026
Merged
Conversation
- Cache llm_output_text result in handle_end_message and pass it to set_llm_response_attributes instead of both methods independently computing it, removing a duplicate serialization + format_tool_calls call per LLM response. - Simplify llm_output_text from three sequential format_tool_calls fallbacks into a single conditional with one fallback. Same behavior, clearer intent: "return content text if present, otherwise tool calls." - Fix inconsistent tool-call argument serialization: append_tool_calls used tc.arguments.to_json directly while format_tool_calls used serialize_output(tc.arguments). Both now use serialize_output for consistent handling of non-Hash/non-Array argument types.
✅ Deploy Preview for ruby-ai-agents canceled.
|
aakashb95
approved these changes
Mar 17, 2026
Contributor
|
Thanks for making the code clearer! |
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.
Cache llm_output_text result in handle_end_message and pass it to set_llm_response_attributes instead of both methods independently computing it, removing a duplicate serialization + format_tool_calls call per LLM response.
Simplify llm_output_text from three sequential format_tool_calls fallbacks into a single conditional with one fallback. Same behavior, clearer intent: "return content text if present, otherwise tool calls."
Fix inconsistent tool-call argument serialization: append_tool_calls used tc.arguments.to_json directly while format_tool_calls used serialize_output(tc.arguments). Both now use serialize_output for consistent handling of non-Hash/non-Array argument types.