Test Tool Gateway
面向测试场景的 MCP 工具投影或入口;实际调用已由 TestResourceToolAdapter 执行并生成 Capability Invocation/Result。旧 MCP text content 保持不变,新增 structuredContent;legacy-static 模式明确生成兼容 Lease,capability-adapter 模式接收 Server→Worker→Driver 原样透传的 Ed25519 签名 Lease,必须同时装配 verifier 与持久元数据审计,并对作用域、权限、writeUseCase、参数约束和可跨重启恢复的 maxCalls 默认拒绝。
职责与边界
负责
- 把测试场景权限允许的 Resource Tool Adapter 能力投影为 MCP 工具
- 暴露固定测试环境、Test Intake/Test Writeback 与测试数据专属工具
- 校验工具参数、风险等级与测试数据写入信封
- 返回含证据、新鲜度、分页、截断和审计引用的结构化结果
不负责
- 不编排完整测试流程
- 不保存测试结论主状态
- 不直接决定外部 DevOps 状态
- 不自行维护项目资源发现或绑定逻辑
- 不是 Choerodon Tester/Test Manager 连接器
- 不是项目 Runner,也不直接调度 execute_test_batch
数据与接口
拥有的数据
输入
受控测试工具调用;data-write 工具的测试数据写入信封;standard 模式的签名 Capability Lease
输出
数据库、接口或环境操作结果
协议
MCP;flynor/capability-invocation/v1alpha1;flynor/capability-result/v1alpha1;flynor/capability-lease/v1alpha1
依赖
protocol;capability-adapter
运行与部署
质量平台组 · experimental · incubating;升级路径:质量平台组 → 平台治理组
embedded · limited;作为版本化 stdio MCP 包由 Test Runtime 内部 Worker 启动;目标项目工具绑定通过 Project Resource Connector 解析,当前仍兼容受控工具清单和驱动命令。
flynor/test-mcp-tools/v1 工具清单;项目只声明静态命令、Schema、风险、超时和环境变量白名单;data-write 工具强制校验固定环境、AI-TEST-DATA- 标识、executionId 归属和保留策略。standard 模式另以绝对路径加载 Ed25519 公钥和受保护 JSONL 审计文件,私钥不进入 Test MCP
@flynor/test-mcp 版本化 stdio 包,由 Test Worker 按执行策略启动;不运行独立状态服务
离线 doctor、真实 MCP stdio smoke、Capability/Audit Schema、Ed25519/grantHash/篡改/生效时间/过期/作用域/maxCalls/参数约束拒绝、审计重启恢复与旧结果兼容测试
兼容日志记录 executionId、traceId、工具、风险、耗时和结果;standard 审计另持久化 lease/task/actor/key/capability/resource 引用、argumentsHash 与终态,不记录请求参数、响应、签名或秘密值
按 npm 版本整体升级或回退;工具清单独立版本化,写工具默认关闭