From 422f7e73823e22bf5ee9a0cffaef43f85f95bf18 Mon Sep 17 00:00:00 2001 From: Tao Chen Date: Thu, 11 Jun 2026 16:54:42 -0700 Subject: [PATCH] Address comments --- python/packages/core/agent_framework/__init__.py | 2 +- python/packages/core/agent_framework/_tools.py | 4 +--- python/packages/core/agent_framework/_workflows/_runner.py | 6 +++--- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/python/packages/core/agent_framework/__init__.py b/python/packages/core/agent_framework/__init__.py index 3a001cdb02..445f138c88 100644 --- a/python/packages/core/agent_framework/__init__.py +++ b/python/packages/core/agent_framework/__init__.py @@ -125,7 +125,6 @@ from ._harness._todo import ( TodoSessionStore, TodoStore, ) -from ._mcp import MCPStdioTool, MCPStreamableHTTPTool, MCPTaskOptions, MCPWebsocketTool, SamplingApprovalCallback from ._harness._tool_approval import ( DEFAULT_TOOL_APPROVAL_SOURCE_ID, ToolApprovalMiddleware, @@ -135,6 +134,7 @@ from ._harness._tool_approval import ( create_always_approve_tool_response, create_always_approve_tool_with_arguments_response, ) +from ._mcp import MCPStdioTool, MCPStreamableHTTPTool, MCPTaskOptions, MCPWebsocketTool, SamplingApprovalCallback from ._middleware import ( AgentContext, AgentMiddleware, diff --git a/python/packages/core/agent_framework/_tools.py b/python/packages/core/agent_framework/_tools.py index ad232ffeb4..065324289f 100644 --- a/python/packages/core/agent_framework/_tools.py +++ b/python/packages/core/agent_framework/_tools.py @@ -1989,9 +1989,7 @@ def _store_already_approved_approval_requests( return existing_groups = state.get(_ALREADY_APPROVED_APPROVAL_REQUEST_GROUPS_KEY) - pending_groups: list[Any] = ( - list(cast(Iterable[Any], existing_groups)) if isinstance(existing_groups, list) else [] - ) + pending_groups: list[Any] = list(cast(Iterable[Any], existing_groups)) if isinstance(existing_groups, list) else [] pending_groups.append({ "approval_request_ids": visible_ids, "approval_requests": [request.to_dict() for request in already_approved_requests], diff --git a/python/packages/core/agent_framework/_workflows/_runner.py b/python/packages/core/agent_framework/_workflows/_runner.py index 820864c9e5..db6b61af1f 100644 --- a/python/packages/core/agent_framework/_workflows/_runner.py +++ b/python/packages/core/agent_framework/_workflows/_runner.py @@ -156,12 +156,12 @@ class Runner: if not await self._ctx.has_messages(): break - if self._iteration >= self._max_iterations and await self._ctx.has_messages(): - raise WorkflowConvergenceException(f"Runner did not converge after {self._max_iterations} iterations.") - logger.info(f"Workflow completed after {self._iteration} supersteps") self._resumed_from_checkpoint = False # Reset resume flag for next run + if self._iteration >= self._max_iterations and await self._ctx.has_messages(): + raise WorkflowConvergenceException(f"Runner did not converge after {self._max_iterations} iterations.") + async def _run_iteration(self) -> None: """Run a single iteration of the workflow.