- 新增 pam_deploy_graph 包,包含 agent、action router、runner、parser 和配置加载能力 - 支持 hybrid_node_mcp 路由策略:PAM_HOME 走脚本 action,PAM_NODE 走 MCP - 新增 fake runner 和 CLI 预演/全局流程验证入口 - 新增路由、输出解析、配置加载、脚本命令构造、Skill 策略加载测试 - 在 README 中记录当前代码骨架、实现进度、使用方式和下一步建议
25 lines
838 B
Python
25 lines
838 B
Python
from pam_deploy_graph.output_parser import parse_key_values, parse_script_result, parse_mcp_result
|
|
|
|
|
|
def test_parse_key_values_collects_repeated_ips():
|
|
values = parse_key_values("ACTION=get-online-ips\nCOUNT=2\nIP=1.1.1.1\nIP=2.2.2.2\n")
|
|
assert values["ACTION"] == "get-online-ips"
|
|
assert values["IP"] == ["1.1.1.1", "2.2.2.2"]
|
|
|
|
|
|
def test_parse_script_result_detects_pending_confirmation():
|
|
result = parse_script_result(
|
|
"verify-ip",
|
|
"PENDING_AGENT_CONFIRMATION(stopFirst=true)\n",
|
|
"",
|
|
0,
|
|
)
|
|
assert not result.ok
|
|
assert result.values["PENDING_AGENT_CONFIRMATION"] == "PENDING_AGENT_CONFIRMATION(stopFirst=true)"
|
|
|
|
|
|
def test_parse_mcp_result_normalizes_aliases():
|
|
result = parse_mcp_result("upload-package", {"hashCode": "abc"})
|
|
assert result.values["HASH_CODE"] == "abc"
|
|
|