mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-09-04 23:17:20 +08:00
refactor: reorganize startup persistence boundaries
This commit is contained in:
@@ -13,7 +13,7 @@ from typing import Any, Callable, Optional
|
||||
|
||||
Provider = Callable[[], Any]
|
||||
|
||||
# provider 注册表由 startup/agent_initializer 在组合根装配。
|
||||
# provider 注册表由 startup/initializers/agent.py 在组合根装配。
|
||||
_agent_manager_provider: Optional[Provider] = None
|
||||
_running_agent_manager_provider: Optional[Provider] = None
|
||||
_prompt_manager_provider: Optional[Provider] = None
|
||||
@@ -66,7 +66,7 @@ def _resolve(provider: Optional[Provider], service_name: str) -> Any:
|
||||
if provider is None:
|
||||
raise RuntimeError(
|
||||
f"Agent 服务 {service_name} 未注册:"
|
||||
"请先导入 app.startup.agent_initializer 完成组合根装配"
|
||||
"请先导入 app.startup.initializers.agent 完成组合根装配"
|
||||
)
|
||||
return provider()
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ Command 实现由 startup 组合根在导入期注册,避免 application 层
|
||||
|
||||
from typing import Any, Dict, Optional
|
||||
|
||||
# Command 类:由 startup/command_initializer 在导入期注册。
|
||||
# Command 类:由 startup/initializers/command.py 在导入期注册。
|
||||
_command_class: Any = None
|
||||
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@ def _resolve_skill_catalog() -> SkillCatalogPort:
|
||||
"""解析已注入的技能目录;缺少组合根装配时给出明确错误。"""
|
||||
if _skill_catalog_provider is None:
|
||||
raise RuntimeError(
|
||||
"技能目录服务未注册:请先导入 app.startup.agent_initializer "
|
||||
"技能目录服务未注册:请先导入 app.startup.initializers.agent "
|
||||
"完成组合根装配"
|
||||
)
|
||||
return _skill_catalog_provider()
|
||||
|
||||
@@ -17,7 +17,7 @@ from typing import Any, Awaitable, Callable, List, Optional, cast
|
||||
# Agent 自主定时任务在运行时调度器中的任务 ID 前缀。
|
||||
AGENT_TASK_JOB_PREFIX = "agent-task"
|
||||
|
||||
# Scheduler 类:由 startup/scheduler_initializer 在导入期注册。
|
||||
# Scheduler 类:由 startup/initializers/scheduler.py 在导入期注册。
|
||||
_scheduler_class: Any = None
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user