fix:拯救大兵ruff
This commit is contained in:
@@ -272,7 +272,7 @@ class Heartflow:
|
|||||||
logger.debug(f"[Heartflow State] OFFLINE 持续时间达到,切换到 {next_state.value}")
|
logger.debug(f"[Heartflow State] OFFLINE 持续时间达到,切换到 {next_state.value}")
|
||||||
else:
|
else:
|
||||||
# 保持 OFFLINE,重置计时器以开始新的5分钟计时
|
# 保持 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_status_change_time = current_time
|
||||||
self.current_state.last_5min_check_time = current_time # 保持一致
|
self.current_state.last_5min_check_time = current_time # 保持一致
|
||||||
# 显式将 next_state 设为 OFFLINE 以便后续处理
|
# 显式将 next_state 设为 OFFLINE 以便后续处理
|
||||||
@@ -312,10 +312,10 @@ class Heartflow:
|
|||||||
|
|
||||||
# --- 新增逻辑:根据状态转换调整子心流 --- #
|
# --- 新增逻辑:根据状态转换调整子心流 --- #
|
||||||
if previous_status == MaiState.OFFLINE and next_state != MaiState.OFFLINE:
|
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)
|
await self._activate_random_subflows_to_chat(next_state)
|
||||||
elif next_state == MaiState.OFFLINE and previous_status != MaiState.OFFLINE:
|
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()
|
await self._deactivate_all_subflows_on_offline()
|
||||||
# --- 结束新增逻辑 --- #
|
# --- 结束新增逻辑 --- #
|
||||||
|
|
||||||
@@ -324,7 +324,7 @@ class Heartflow:
|
|||||||
# 确保计时器被重置 (这在上面的持续时间规则中已处理,但为了清晰再次确认)
|
# 确保计时器被重置 (这在上面的持续时间规则中已处理,但为了清晰再次确认)
|
||||||
if time_in_current_status >= FIVE_MINUTES:
|
if time_in_current_status >= FIVE_MINUTES:
|
||||||
# 确保计时器已在上面重置,这里无需操作,只记录日志
|
# 确保计时器已在上面重置,这里无需操作,只记录日志
|
||||||
logger.debug(f"[Heartflow State] 保持 OFFLINE 状态,计时器已重置。")
|
logger.debug("[Heartflow State] 保持 OFFLINE 状态,计时器已重置。")
|
||||||
pass # 无需状态转换,也无需调用激活/停用逻辑
|
pass # 无需状态转换,也无需调用激活/停用逻辑
|
||||||
|
|
||||||
# --- 如果没有确定 next_state (即没有触发任何切换规则) --- #
|
# --- 如果没有确定 next_state (即没有触发任何切换规则) --- #
|
||||||
@@ -733,7 +733,8 @@ class Heartflow:
|
|||||||
focused_flows = []
|
focused_flows = []
|
||||||
items_snapshot_after_normal = list(self._subheartflows.items())
|
items_snapshot_after_normal = list(self._subheartflows.items())
|
||||||
for flow_id, flow in items_snapshot_after_normal:
|
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:
|
if flow.chat_state.chat_status == ChatState.FOCUSED:
|
||||||
focused_flows.append((flow_id, flow.last_active_time))
|
focused_flows.append((flow_id, flow.last_active_time))
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ from src.plugins.heartFC_chat.heartFC_chat import HeartFChatting
|
|||||||
|
|
||||||
# Type hinting for circular dependency
|
# Type hinting for circular dependency
|
||||||
if TYPE_CHECKING:
|
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 .sub_heartflow import ChatState # Keep ChatState here too?
|
||||||
from src.plugins.heartFC_chat.heartFC_chat import HeartFChatting # <-- Add for type hint
|
from src.plugins.heartFC_chat.heartFC_chat import HeartFChatting # <-- Add for type hint
|
||||||
|
|
||||||
|
|||||||
@@ -135,13 +135,13 @@ class MessageContainer:
|
|||||||
def remove_message(self, message_to_remove: Union[MessageThinking, MessageSending]) -> bool:
|
def remove_message(self, message_to_remove: Union[MessageThinking, MessageSending]) -> bool:
|
||||||
"""移除指定的消息对象,如果消息存在则返回True,否则返回False"""
|
"""移除指定的消息对象,如果消息存在则返回True,否则返回False"""
|
||||||
try:
|
try:
|
||||||
initial_len = len(self.messages)
|
_initial_len = len(self.messages)
|
||||||
# 使用列表推导式或 filter 创建新列表,排除要删除的元素
|
# 使用列表推导式或 filter 创建新列表,排除要删除的元素
|
||||||
# self.messages = [msg for msg in self.messages if msg is not message_to_remove]
|
# self.messages = [msg for msg in self.messages if msg is not message_to_remove]
|
||||||
# 或者直接 remove (如果确定对象唯一性)
|
# 或者直接 remove (如果确定对象唯一性)
|
||||||
if message_to_remove in self.messages:
|
if message_to_remove in self.messages:
|
||||||
self.messages.remove(message_to_remove)
|
self.messages.remove(message_to_remove)
|
||||||
return True
|
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)}")
|
# 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 len(self.messages) < initial_len
|
||||||
return False
|
return False
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
import random
|
import random
|
||||||
from typing import Optional
|
|
||||||
from ...config.config import global_config
|
from ...config.config import global_config
|
||||||
from ..chat.chat_stream import chat_manager
|
|
||||||
from src.common.logger import get_module_logger
|
from src.common.logger import get_module_logger
|
||||||
from ...individuality.individuality import Individuality
|
from ...individuality.individuality import Individuality
|
||||||
from src.plugins.utils.prompt_builder import Prompt, global_prompt_manager
|
from src.plugins.utils.prompt_builder import Prompt, global_prompt_manager
|
||||||
|
|||||||
@@ -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.plugins.utils.timer_calculater import Timer
|
||||||
from src.heart_flow.heartflow import heartflow
|
from src.heart_flow.heartflow import heartflow
|
||||||
from src.heart_flow.sub_heartflow import ChatState
|
from src.heart_flow.sub_heartflow import ChatState
|
||||||
from src.heart_flow.heartflow import heartflow
|
|
||||||
# 定义日志配置
|
# 定义日志配置
|
||||||
chat_config = LogConfig(
|
chat_config = LogConfig(
|
||||||
console_format=CHAT_STYLE_CONFIG["console_format"],
|
console_format=CHAT_STYLE_CONFIG["console_format"],
|
||||||
|
|||||||
Reference in New Issue
Block a user