From 8edde1d1230aa58d053270bb16f9b03a2b8fef98 Mon Sep 17 00:00:00 2001 From: ShotaroKataoka Date: Wed, 8 Jul 2026 18:35:25 +0900 Subject: [PATCH] =?UTF-8?q?fix(composer):=20define=20module=20logger=20?= =?UTF-8?q?=E2=80=94=20NameError=20on=20group=20MCP=20stop=20failure?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The finally block at run_group exit calls logger.warning() when the per-group MCPClient fails to stop, but composer.py never defined `logger` — the warning path itself raised NameError instead of logging. --- agent/modes/separated/composer.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/agent/modes/separated/composer.py b/agent/modes/separated/composer.py index e38e9a4a..f5addbdf 100644 --- a/agent/modes/separated/composer.py +++ b/agent/modes/separated/composer.py @@ -3,6 +3,7 @@ """Composer agent: compose_slides tool with parallel execution, prefetch, and post-build.""" import json +import logging import os import queue import time @@ -18,6 +19,8 @@ from modes import MODES # imported lazily in compose_slides if needed from resilience import call_tool_with_retry +logger = logging.getLogger("sdpm.agent") + # Soft-stop signal: the webui cancel button sends InvokeAgentRuntimeCommand # to `touch /tmp/compose_stops/{parent_tool_use_id}` inside this microVM.