From 1a52166145251a9fb29126cf82e0f4f7f774d75c Mon Sep 17 00:00:00 2001 From: CREDO23 Date: Fri, 5 Jun 2026 13:43:02 +0200 Subject: [PATCH] refactor(agents): place subagent middleware-stack by primary-built-for Re-decide subagent_stack placement using the primary-built-for lens rather than consumer-only: it assembles the middleware stack threaded into every subagent, so its domain is subagents -- even though main_agent is its sole caller (analogous to subagents/registry.py, also invoked from main_agent). Since no subagent *sibling* imports it, it does not belong in subagents/shared/ but at the subagents/ package root: main_agent/middleware/subagent_stack.py -> subagents/middleware_stack.py --- .../chat/multi_agent_chat/main_agent/middleware/stack.py | 6 +++--- .../subagent_stack.py => subagents/middleware_stack.py} | 0 2 files changed, 3 insertions(+), 3 deletions(-) rename surfsense_backend/app/agents/chat/multi_agent_chat/{main_agent/middleware/subagent_stack.py => subagents/middleware_stack.py} (100%) diff --git a/surfsense_backend/app/agents/chat/multi_agent_chat/main_agent/middleware/stack.py b/surfsense_backend/app/agents/chat/multi_agent_chat/main_agent/middleware/stack.py index 4e5eba95e..cc5af1a4b 100644 --- a/surfsense_backend/app/agents/chat/multi_agent_chat/main_agent/middleware/stack.py +++ b/surfsense_backend/app/agents/chat/multi_agent_chat/main_agent/middleware/stack.py @@ -53,6 +53,9 @@ from app.agents.chat.multi_agent_chat.subagents.builtins.knowledge_base.agent im from app.agents.chat.multi_agent_chat.subagents.builtins.knowledge_base.ask_knowledge_base_tool import ( build_ask_knowledge_base_tool, ) +from app.agents.chat.multi_agent_chat.subagents.middleware_stack import ( + build_subagent_middleware_stack, +) from app.db import ChatVisibility from .action_log import build_action_log_mw @@ -74,9 +77,6 @@ from .noop_injection import build_noop_injection_mw from .otel_span import build_otel_mw from .plugins import build_plugin_middlewares from .skills import build_skills_mw -from .subagent_stack import ( - build_subagent_middleware_stack, -) from .tool_call_repair import build_repair_mw diff --git a/surfsense_backend/app/agents/chat/multi_agent_chat/main_agent/middleware/subagent_stack.py b/surfsense_backend/app/agents/chat/multi_agent_chat/subagents/middleware_stack.py similarity index 100% rename from surfsense_backend/app/agents/chat/multi_agent_chat/main_agent/middleware/subagent_stack.py rename to surfsense_backend/app/agents/chat/multi_agent_chat/subagents/middleware_stack.py