From 8c3e5bb1f0655f5e994c81b14f5ff4a41817a9df Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 12 Jun 2025 14:08:19 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=96=20=E8=87=AA=E5=8A=A8=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E5=8C=96=E4=BB=A3=E7=A0=81=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/chat/focus_chat/planners/action_manager.py | 5 ++++- src/plugin_system/apis/hearflow_api.py | 12 ++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/chat/focus_chat/planners/action_manager.py b/src/chat/focus_chat/planners/action_manager.py index f60df9652..9fcb1f93f 100644 --- a/src/chat/focus_chat/planners/action_manager.py +++ b/src/chat/focus_chat/planners/action_manager.py @@ -123,8 +123,9 @@ class ActionManager: try: # 从组件注册中心获取所有已注册的action from src.plugin_system.core.component_registry import component_registry + action_registry = component_registry.get_action_registry() - + # 从action_registry获取所有已注册动作 for action_name, action_class in action_registry.items(): # 获取动作相关信息 @@ -316,6 +317,7 @@ class ActionManager: # 旧系统的动作创建逻辑 from src.plugin_system.core.component_registry import component_registry + action_registry = component_registry.get_action_registry() handler_class = action_registry.get(action_name) if not handler_class: @@ -582,5 +584,6 @@ class ActionManager: Optional[Type[BaseAction]]: 动作处理器类,如果不存在则返回None """ from src.plugin_system.core.component_registry import component_registry + action_registry = component_registry.get_action_registry() return action_registry.get(action_name) diff --git a/src/plugin_system/apis/hearflow_api.py b/src/plugin_system/apis/hearflow_api.py index 35ca75536..86739c887 100644 --- a/src/plugin_system/apis/hearflow_api.py +++ b/src/plugin_system/apis/hearflow_api.py @@ -7,12 +7,14 @@ logger = get_logger("hearflow_api") def _get_heartflow(): """获取heartflow实例的延迟导入函数""" from src.chat.heart_flow.heartflow import heartflow + return heartflow def _get_subheartflow_types(): """获取SubHeartflow和ChatState类型的延迟导入函数""" from src.chat.heart_flow.sub_heartflow import SubHeartflow, ChatState + return SubHeartflow, ChatState @@ -36,7 +38,7 @@ class HearflowAPI: """ # 使用延迟导入 heartflow = _get_heartflow() - + # 直接从subheartflow_manager获取已存在的子心流 # 使用锁来确保线程安全 async with heartflow.subheartflow_manager._lock: @@ -130,7 +132,9 @@ class HearflowAPI: # 检查子心流是否处于FOCUSED状态且有HeartFC实例 if subflow.chat_state.chat_status != ChatState.FOCUSED: - logger.debug(f"{self.log_prefix} 子心流 {chat_id} 未处于FOCUSED状态,当前状态: {subflow.chat_state.chat_status.value}") + logger.debug( + f"{self.log_prefix} 子心流 {chat_id} 未处于FOCUSED状态,当前状态: {subflow.chat_state.chat_status.value}" + ) return None, None if not subflow.heart_fc_instance: @@ -140,12 +144,12 @@ class HearflowAPI: # 返回replyer和expressor实例 replyer = subflow.heart_fc_instance.replyer expressor = subflow.heart_fc_instance.expressor - + if replyer and expressor: logger.debug(f"{self.log_prefix} 成功获取子心流 {chat_id} 的replyer和expressor") else: logger.warning(f"{self.log_prefix} 子心流 {chat_id} 的replyer或expressor为空") - + return replyer, expressor async def get_sub_hearflow_replyer(self, chat_id: str) -> Optional[Any]: