fix(handoffs): filter duplicate items from model input when nest_handoff_history is enabled #2254
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.
Fixes #2171
Problem
When
nest_handoff_historyis enabled, the next agent receives duplicate conversation items:Before this fix:
<CONVERSATION HISTORY>containing tool calls as textfunction_callitems (duplicated)function_call_outputitems (duplicated)This causes the model to see the same information twice, wasting tokens and potentially causing confusion.
Solution
Introduced separation between items sent to the model vs items preserved for session history:
function_callandfunction_call_outputitems already in the summaryKey changes:
input_itemsfield toHandoffInputDatafor filtered model inputsession_step_itemsfield toSingleStepResultfor full session historygenerated_itemsproperty to use session items when availableBehavior
Testing