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: