mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-06-06 20:15:17 +02:00
refactor(agents): move MAC middleware impls out of shared kernel
knowledge_search, memory_injection and scoped_model_fallback no longer belong in the cross-agent kernel (app/agents/shared/middleware): they are consumed only inside multi_agent_chat. Relocate each impl next to the builder that uses it: - knowledge_search.py -> multi_agent_chat/shared/middleware/ (genuinely shared: its _render_priority_message feeds kb_context_projection, used by both the main agent and the KB subagent) - memory_injection.py -> multi_agent_chat/shared/middleware/ (beside its memory.py builder) - scoped_model_fallback.py -> multi_agent_chat/shared/middleware/resilience/ (beside fallback.py/bundle.py) Impls moved verbatim (git rename). Builders/consumers now import the local sibling; main_agent knowledge_priority imports the new shared path; shared middleware barrel trimmed. Tests: repoint imports; convert the knowledge_search monkeypatch targets from brittle dotted-string form to object-based patching (monkeypatch.setattr on the imported module), which is robust to import ordering. No behavior change.
This commit is contained in:
parent
9493519c61
commit
8ae190a11d
12 changed files with 35 additions and 39 deletions
|
|
@ -4,8 +4,10 @@ from __future__ import annotations
|
|||
|
||||
from langchain_core.language_models import BaseChatModel
|
||||
|
||||
from app.agents.multi_agent_chat.shared.middleware.knowledge_search import (
|
||||
KnowledgePriorityMiddleware,
|
||||
)
|
||||
from app.agents.shared.filesystem_selection import FilesystemMode
|
||||
from app.agents.shared.middleware import KnowledgePriorityMiddleware
|
||||
from app.services.llm_service import get_planner_llm
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -12,9 +12,10 @@ from langgraph.runtime import Runtime
|
|||
from app.agents.multi_agent_chat.shared.state.filesystem_state import (
|
||||
SurfSenseFilesystemState,
|
||||
)
|
||||
from app.agents.shared.middleware.knowledge_search import _render_priority_message
|
||||
from app.utils.perf import get_perf_logger
|
||||
|
||||
from .knowledge_search import _render_priority_message
|
||||
|
||||
_perf_log = get_perf_logger()
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2,9 +2,10 @@
|
|||
|
||||
from __future__ import annotations
|
||||
|
||||
from app.agents.shared.middleware import MemoryInjectionMiddleware
|
||||
from app.db import ChatVisibility
|
||||
|
||||
from .memory_injection import MemoryInjectionMiddleware
|
||||
|
||||
|
||||
def build_memory_mw(
|
||||
*,
|
||||
|
|
|
|||
|
|
@ -12,13 +12,13 @@ from langchain.agents.middleware import (
|
|||
|
||||
from app.agents.shared.feature_flags import AgentFeatureFlags
|
||||
from app.agents.shared.middleware import RetryAfterMiddleware
|
||||
from app.agents.shared.middleware.scoped_model_fallback import (
|
||||
ScopedModelFallbackMiddleware,
|
||||
)
|
||||
|
||||
from .fallback import build_fallback_mw
|
||||
from .model_call_limit import build_model_call_limit_mw
|
||||
from .retry import build_retry_mw
|
||||
from .scoped_model_fallback import (
|
||||
ScopedModelFallbackMiddleware,
|
||||
)
|
||||
from .tool_call_limit import build_tool_call_limit_mw
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@ from __future__ import annotations
|
|||
import logging
|
||||
|
||||
from app.agents.shared.feature_flags import AgentFeatureFlags
|
||||
from app.agents.shared.middleware.scoped_model_fallback import (
|
||||
ScopedModelFallbackMiddleware,
|
||||
)
|
||||
|
||||
from ..flags import enabled
|
||||
from .scoped_model_fallback import (
|
||||
ScopedModelFallbackMiddleware,
|
||||
)
|
||||
|
||||
|
||||
def build_fallback_mw(
|
||||
|
|
|
|||
|
|
@ -9,20 +9,12 @@ from app.agents.shared.middleware.kb_persistence import (
|
|||
KnowledgeBasePersistenceMiddleware,
|
||||
commit_staged_filesystem_state,
|
||||
)
|
||||
from app.agents.shared.middleware.knowledge_search import (
|
||||
KnowledgePriorityMiddleware,
|
||||
)
|
||||
from app.agents.shared.middleware.memory_injection import (
|
||||
MemoryInjectionMiddleware,
|
||||
)
|
||||
from app.agents.shared.middleware.permission import PermissionMiddleware
|
||||
from app.agents.shared.middleware.retry_after import RetryAfterMiddleware
|
||||
|
||||
__all__ = [
|
||||
"BusyMutexMiddleware",
|
||||
"KnowledgeBasePersistenceMiddleware",
|
||||
"KnowledgePriorityMiddleware",
|
||||
"MemoryInjectionMiddleware",
|
||||
"PermissionMiddleware",
|
||||
"RetryAfterMiddleware",
|
||||
"SurfSenseCompactionMiddleware",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue