refactor(data_model): 解除 plan_filter 对 DatabaseMessages 的直接依赖

将 `target_message_obj` 的类型从 `DatabaseMessages` 实例改为字典,从而消除了 `plan_filter` 模块对 `database_data_model` 的循环导入风险。同时更新了 `ActionPlannerInfo` 中 `action_message` 的类型注解以保持一致性。
This commit is contained in:
minecraft1024a
2025-09-14 15:09:55 +08:00
parent f907470785
commit c57711c674
2 changed files with 2 additions and 3 deletions

View File

@@ -263,8 +263,7 @@ class PlanFilter:
target_message_dict = self._get_latest_message(message_id_list)
if target_message_dict:
from src.common.data_models.database_data_model import DatabaseMessages
target_message_obj = DatabaseMessages(**target_message_dict)
target_message_obj = target_message_dict
available_action_names = list(plan.available_actions.keys())
if action not in ["no_action", "no_reply", "reply", "do_nothing", "proactive_reply"] and action not in available_action_names:

View File

@@ -21,7 +21,7 @@ class ActionPlannerInfo(BaseDataModel):
action_type: str = field(default_factory=str)
reasoning: Optional[str] = None
action_data: Optional[Dict] = None
action_message: Optional["DatabaseMessages"] = None
action_message: Optional[Dict] = None
available_actions: Optional[Dict[str, "ActionInfo"]] = None