refactor(sleep): 解耦SleepManagerScheduleManager的依赖关系

将日程表获取的逻辑从`SleepManager`转移到`TimeChecker`中,并使其直接从全局的`schedule_manager`实例获取日程,消除了`SleepManager`对日程表的直接管理责任。

这一重构简化了`SleepManager`的职责,使其更专注于睡眠状态的管理,同时提高了模块间的独立性。

- `SleepManager`不再持有`today_schedule`状态。
- `TimeChecker`现在直接从`schedule_manager`获取日程,不再依赖于`SleepManager`传递。
- 移除了`ScheduleManager`中对`sleep_manager`的引用和更新操作。
This commit is contained in:
minecraft1024a
2025-09-07 12:28:15 +08:00
parent d2e48e5b17
commit 1e2eb977bb
3 changed files with 12 additions and 21 deletions

View File

@@ -7,7 +7,6 @@ from src.common.database.sqlalchemy_models import Schedule, get_db_session
from src.config.config import global_config
from src.common.logger import get_logger
from src.manager.async_task_manager import AsyncTask, async_task_manager
from ..chat.chat_loop.sleep_manager.sleep_manager import SleepManager
from .database import update_plan_usage
from .llm_generator import ScheduleLLMGenerator
from .plan_manager import PlanManager
@@ -23,7 +22,6 @@ class ScheduleManager:
self.plan_manager = PlanManager()
self.daily_task_started = False
self.schedule_generation_running = False
self.sleep_manager = SleepManager()
async def start_daily_schedule_generation(self):
if not self.daily_task_started:
@@ -45,7 +43,6 @@ class ScheduleManager:
schedule_data = self._load_schedule_from_db(today_str)
if schedule_data:
self.today_schedule = schedule_data
self.sleep_manager.update_today_schedule(self.today_schedule)
self._log_loaded_schedule(today_str)
return
@@ -100,7 +97,6 @@ class ScheduleManager:
if schedule_data:
self._save_schedule_to_db(today_str, schedule_data)
self.today_schedule = schedule_data
self.sleep_manager.update_today_schedule(self.today_schedule)
self._log_generated_schedule(today_str, schedule_data)
if sampled_plans: