refactor(core): 移除睡眠系统
由于睡眠系统存在设计缺陷、实现复杂且维护成本高,并且实际使用效果不佳,常常导致非预期的行为(如错过重要消息或在不应睡眠时睡眠),现决定将其从核心代码中完全移除。 移除内容包括: - 删除了整个 `sleep_system` 模块及其所有相关逻辑、状态管理和定时任务。 - 清理了配置文件 `config.py` 和 `official_configs.py` 中的 `SleepSystemConfig`。 - 移除了 `main.py` 中关于睡眠系统的初始化调用。 - 清理了 `message_manager` 和 `proactive_thinker` 中对睡眠状态的检查。 - 更新了 `bot_config_template.toml` 模板文件,移除了所有睡眠系统相关的配置项。 此举旨在简化项目架构,提高系统的稳定性和可预测性。未来的相关功能可能会以更健壮、更模块化的插件形式重新实现。
This commit is contained in:
@@ -19,9 +19,7 @@ from src.config.config import global_config
|
||||
from src.plugin_system.apis.chat_api import get_chat_manager
|
||||
|
||||
from .distribution_manager import stream_loop_manager
|
||||
from .sleep_system.state_manager import SleepState, sleep_state_manager
|
||||
from .global_notice_manager import global_notice_manager, NoticeScope
|
||||
|
||||
from .global_notice_manager import NoticeScope, global_notice_manager
|
||||
|
||||
if TYPE_CHECKING:
|
||||
pass
|
||||
@@ -149,13 +147,6 @@ class MessageManager:
|
||||
|
||||
async def add_message(self, stream_id: str, message: DatabaseMessages):
|
||||
"""添加消息到指定聊天流"""
|
||||
# 在消息处理的最前端检查睡眠状态
|
||||
current_sleep_state = sleep_state_manager.get_current_state()
|
||||
if current_sleep_state == SleepState.SLEEPING:
|
||||
logger.info(f"处于 {current_sleep_state.name} 状态,消息被拦截。")
|
||||
return # 直接返回,不处理消息
|
||||
|
||||
# TODO: 在这里为 WOKEN_UP_ANGRY 等未来状态添加特殊处理逻辑
|
||||
|
||||
try:
|
||||
# 检查是否为notice消息
|
||||
|
||||
Reference in New Issue
Block a user