Skip to content

Commit ac2830a

Browse files
committed
backend tool pending issue fixed
1 parent 94cf5da commit ac2830a

File tree

1 file changed

+8
-1
lines changed
  • typescript-sdk/integrations/adk-middleware/src/adk_middleware

1 file changed

+8
-1
lines changed

typescript-sdk/integrations/adk-middleware/src/adk_middleware/adk_agent.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
RunStartedEvent, RunFinishedEvent, RunErrorEvent,
1414
TextMessageStartEvent, TextMessageContentEvent, TextMessageEndEvent,
1515
StateSnapshotEvent, StateDeltaEvent,
16-
Context, ToolMessage, ToolCallEndEvent, SystemMessage
16+
Context, ToolMessage, ToolCallEndEvent, SystemMessage,ToolCallResultEvent
1717
)
1818

1919
from google.adk import Runner
@@ -626,6 +626,13 @@ async def _start_new_execution(
626626
logger.info(f"Detected ToolCallEndEvent with id: {event.tool_call_id}")
627627
has_tool_calls = True
628628
tool_call_ids.append(event.tool_call_id)
629+
630+
# backend tools will always emit ToolCallResultEvent
631+
# If it is a backend tool then we don't need to add the tool_id in pending_tools
632+
if isinstance(event, ToolCallResultEvent) and event.tool_call_id in tool_call_ids:
633+
logger.info(f"Detected ToolCallResultEvent with id: {event.tool_call_id}")
634+
tool_call_ids.remove(event.tool_call_id)
635+
629636

630637
logger.debug(f"Yielding event: {type(event).__name__}")
631638
yield event

0 commit comments

Comments
 (0)