From 72a2d4cc18ccb9ff07da471354d972083a114d9d Mon Sep 17 00:00:00 2001 From: dalagadenilesh Date: Sat, 14 Feb 2026 14:37:42 +0530 Subject: [PATCH 1/2] fix: correct include_contents behavior in ADK web (fixes google#3535) --- src/google/adk/flows/llm_flows/contents.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/google/adk/flows/llm_flows/contents.py b/src/google/adk/flows/llm_flows/contents.py index 9b7ef9e121..b623cf9803 100644 --- a/src/google/adk/flows/llm_flows/contents.py +++ b/src/google/adk/flows/llm_flows/contents.py @@ -557,8 +557,9 @@ def _get_current_turn_contents( # Find the latest event that starts the current turn and process from there for i in range(len(events) - 1, -1, -1): event = events[i] - if _should_include_event_in_context(current_branch, event) and ( - event.author == 'user' or _is_other_agent_reply(agent_name, event) + if (_should_include_event_in_context(current_branch, event) + and (event.author == "user" or _is_other_agent_reply(agent_name, event)) + and not _is_direct_transfer(event) ): return _get_contents( current_branch, @@ -570,6 +571,21 @@ def _get_current_turn_contents( return [] +def _is_direct_transfer(event : Event) -> bool: + "Check whether the event is a direct transfer event." + + return bool( + event.actions.transfer_to_agent + or ( + event.content.parts + and any( + p.function_call and p.function_call.name == 'transfer_to_agent' + for p in event.content.parts + ) + ) + ) + + def _is_other_agent_reply(current_agent_name: str, event: Event) -> bool: """Whether the event is a reply from another agent.""" return bool( From ef09566e093ef83f032ec71d9e00f92fbf7f7eb0 Mon Sep 17 00:00:00 2001 From: dalagadenilesh Date: Sat, 14 Feb 2026 15:07:24 +0530 Subject: [PATCH 2/2] fix: Add event.content to #4492 --- src/google/adk/flows/llm_flows/contents.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/google/adk/flows/llm_flows/contents.py b/src/google/adk/flows/llm_flows/contents.py index b623cf9803..9037a37789 100644 --- a/src/google/adk/flows/llm_flows/contents.py +++ b/src/google/adk/flows/llm_flows/contents.py @@ -577,7 +577,8 @@ def _is_direct_transfer(event : Event) -> bool: return bool( event.actions.transfer_to_agent or ( - event.content.parts + event.content + and event.content.parts and any( p.function_call and p.function_call.name == 'transfer_to_agent' for p in event.content.parts