From f2c50d2cd46937fc45a3ab49c8c6cd235403c47f Mon Sep 17 00:00:00 2001 From: SengokuCola <1026294844@qq.com> Date: Wed, 23 Apr 2025 00:42:28 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E6=8B=AF=E6=95=91=E5=A4=A7?= =?UTF-8?q?=E5=85=B5ruff?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/heart_flow/heartflow.py | 11 ++++++----- src/heart_flow/sub_heartflow.py | 2 +- src/plugins/chat/message_sender.py | 6 +++--- src/plugins/heartFC_chat/heartflow_prompt_builder.py | 2 -- src/plugins/heartFC_chat/normal_chat.py | 1 - 5 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/heart_flow/heartflow.py b/src/heart_flow/heartflow.py index 7277d980a..0680984ee 100644 --- a/src/heart_flow/heartflow.py +++ b/src/heart_flow/heartflow.py @@ -272,7 +272,7 @@ class Heartflow: logger.debug(f"[Heartflow State] OFFLINE 持续时间达到,切换到 {next_state.value}") else: # 保持 OFFLINE,重置计时器以开始新的5分钟计时 - logger.debug(f"[Heartflow State] OFFLINE 持续时间达到,保持 OFFLINE,重置计时器") + logger.debug("[Heartflow State] OFFLINE 持续时间达到,保持 OFFLINE,重置计时器") self.current_state.last_status_change_time = current_time self.current_state.last_5min_check_time = current_time # 保持一致 # 显式将 next_state 设为 OFFLINE 以便后续处理 @@ -312,10 +312,10 @@ class Heartflow: # --- 新增逻辑:根据状态转换调整子心流 --- # if previous_status == MaiState.OFFLINE and next_state != MaiState.OFFLINE: - logger.info(f"[Heartflow] 主状态从 OFFLINE 激活,尝试激活子心流到 CHAT 状态。") + logger.info("[Heartflow] 主状态从 OFFLINE 激活,尝试激活子心流到 CHAT 状态。") await self._activate_random_subflows_to_chat(next_state) elif next_state == MaiState.OFFLINE and previous_status != MaiState.OFFLINE: - logger.info(f"[Heartflow] 主状态变为 OFFLINE,停用所有子心流活动。") + logger.info("[Heartflow] 主状态变为 OFFLINE,停用所有子心流活动。") await self._deactivate_all_subflows_on_offline() # --- 结束新增逻辑 --- # @@ -324,7 +324,7 @@ class Heartflow: # 确保计时器被重置 (这在上面的持续时间规则中已处理,但为了清晰再次确认) if time_in_current_status >= FIVE_MINUTES: # 确保计时器已在上面重置,这里无需操作,只记录日志 - logger.debug(f"[Heartflow State] 保持 OFFLINE 状态,计时器已重置。") + logger.debug("[Heartflow State] 保持 OFFLINE 状态,计时器已重置。") pass # 无需状态转换,也无需调用激活/停用逻辑 # --- 如果没有确定 next_state (即没有触发任何切换规则) --- # @@ -733,7 +733,8 @@ class Heartflow: focused_flows = [] items_snapshot_after_normal = list(self._subheartflows.items()) for flow_id, flow in items_snapshot_after_normal: - if flow_id not in self._subheartflows: continue # Double check + if flow_id not in self._subheartflows: + continue # Double check if flow.chat_state.chat_status == ChatState.FOCUSED: focused_flows.append((flow_id, flow.last_active_time)) diff --git a/src/heart_flow/sub_heartflow.py b/src/heart_flow/sub_heartflow.py index fce62399d..d9ad0c0b2 100644 --- a/src/heart_flow/sub_heartflow.py +++ b/src/heart_flow/sub_heartflow.py @@ -20,7 +20,7 @@ from src.plugins.heartFC_chat.heartFC_chat import HeartFChatting # Type hinting for circular dependency if TYPE_CHECKING: - from .heartflow import Heartflow, MaiState # Import Heartflow for type hinting + from .heartflow import Heartflow # Import Heartflow for type hinting from .sub_heartflow import ChatState # Keep ChatState here too? from src.plugins.heartFC_chat.heartFC_chat import HeartFChatting # <-- Add for type hint diff --git a/src/plugins/chat/message_sender.py b/src/plugins/chat/message_sender.py index 23c08a0fc..726b99cf3 100644 --- a/src/plugins/chat/message_sender.py +++ b/src/plugins/chat/message_sender.py @@ -135,13 +135,13 @@ class MessageContainer: def remove_message(self, message_to_remove: Union[MessageThinking, MessageSending]) -> bool: """移除指定的消息对象,如果消息存在则返回True,否则返回False""" try: - initial_len = len(self.messages) + _initial_len = len(self.messages) # 使用列表推导式或 filter 创建新列表,排除要删除的元素 # self.messages = [msg for msg in self.messages if msg is not message_to_remove] # 或者直接 remove (如果确定对象唯一性) if message_to_remove in self.messages: - self.messages.remove(message_to_remove) - return True + self.messages.remove(message_to_remove) + return True # logger.debug(f"Removed message {getattr(message_to_remove, 'message_info', {}).get('message_id', 'UNKNOWN')}. Old len: {initial_len}, New len: {len(self.messages)}") # return len(self.messages) < initial_len return False diff --git a/src/plugins/heartFC_chat/heartflow_prompt_builder.py b/src/plugins/heartFC_chat/heartflow_prompt_builder.py index 15623a494..086196ba8 100644 --- a/src/plugins/heartFC_chat/heartflow_prompt_builder.py +++ b/src/plugins/heartFC_chat/heartflow_prompt_builder.py @@ -1,7 +1,5 @@ import random -from typing import Optional from ...config.config import global_config -from ..chat.chat_stream import chat_manager from src.common.logger import get_module_logger from ...individuality.individuality import Individuality from src.plugins.utils.prompt_builder import Prompt, global_prompt_manager diff --git a/src/plugins/heartFC_chat/normal_chat.py b/src/plugins/heartFC_chat/normal_chat.py index f5a9e4c3a..b37810be9 100644 --- a/src/plugins/heartFC_chat/normal_chat.py +++ b/src/plugins/heartFC_chat/normal_chat.py @@ -22,7 +22,6 @@ from src.plugins.respon_info_catcher.info_catcher import info_catcher_manager from src.plugins.utils.timer_calculater import Timer from src.heart_flow.heartflow import heartflow from src.heart_flow.sub_heartflow import ChatState -from src.heart_flow.heartflow import heartflow # 定义日志配置 chat_config = LogConfig( console_format=CHAT_STYLE_CONFIG["console_format"],