fix: Preserve metadata in _to_thread_response method #37
+57
−0
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.
Problem
The
_to_thread_responsemethod is responsible for converting thread objects to response format, filtering out hidden context items, and returning a cleanThreadobject for client responses. However, it was missing themetadatafield in the returnedThreadobject, causing metadata to be lost in all thread responses sent to clients.Impact
ThreadUpdatedEventwould not include metadata set by responders_to_thread_responsewould lose metadata informationprevious_response_idfor Agent SDK runsSolution
Added the
metadatafield to theThreadobject construction in_to_thread_response:Testing
Added a comprehensive test
test_metadata_preserved_in_thread_responsethat:ThreadCreatedEventhas empty metadata (expected, as it's sent before responder runs)ThreadUpdatedEventcorrectly includes the metadata (this would fail without the fix)