From 374ab259775725f329f3f476568071be14968187 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?cls=5F=E5=AE=81=E6=B3=A2=E6=9C=AC=E6=9C=BA?= <908705107@qq.com> Date: Sat, 13 Jun 2026 20:05:54 +0800 Subject: [PATCH] test: recognize workflow agent codes from snapshots --- backend-fastapi/scripts/verify_ai_agent_admin.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/backend-fastapi/scripts/verify_ai_agent_admin.py b/backend-fastapi/scripts/verify_ai_agent_admin.py index 1c2df00..36649e5 100644 --- a/backend-fastapi/scripts/verify_ai_agent_admin.py +++ b/backend-fastapi/scripts/verify_ai_agent_admin.py @@ -145,11 +145,18 @@ async def verify(args: argparse.Namespace) -> int: if len(execution_log) < args.min_steps: raise RuntimeError(f"execution log too short: {len(execution_log)} < {args.min_steps}") + snapshot_nodes = (run_detail.get("definition_snapshot") or {}).get("nodes") or [] + node_agent_codes = { + node.get("id"): (node.get("data") or {}).get("agent_code") + for node in snapshot_nodes + if isinstance(node, dict) and (node.get("data") or {}).get("agent_code") + } agent_codes = sorted( { - log.get("metadata", {}).get("agent_code") + log.get("metadata", {}).get("agent_code") or node_agent_codes.get(log.get("node_id")) for log in execution_log - if isinstance(log, dict) and log.get("metadata", {}).get("agent_code") + if isinstance(log, dict) + and (log.get("metadata", {}).get("agent_code") or node_agent_codes.get(log.get("node_id"))) } ) if len(agent_codes) < args.min_agents: