Flynor平台文档Flynor 首页
Flynor 文档/COMPONENT · EXECUTION
草案

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 默认拒绝。

展示名称测试 MCP
类型tool-gateway
成熟度实验
Owner质量平台组
01

职责与边界

负责

  • 把测试场景权限允许的 Resource Tool Adapter 能力投影为 MCP 工具
  • 暴露固定测试环境、Test Intake/Test Writeback 与测试数据专属工具
  • 校验工具参数、风险等级与测试数据写入信封
  • 返回含证据、新鲜度、分页、截断和审计引用的结构化结果

不负责

  • 不编排完整测试流程
  • 不保存测试结论主状态
  • 不直接决定外部 DevOps 状态
  • 不自行维护项目资源发现或绑定逻辑
  • 不是 Choerodon Tester/Test Manager 连接器
  • 不是项目 Runner,也不直接调度 execute_test_batch
02

数据与接口

拥有的数据

    输入

    受控测试工具调用;data-write 工具的测试数据写入信封;standard 模式的签名 Capability Lease

    输出

    数据库、接口或环境操作结果

    协议

    MCP;flynor/capability-invocation/v1alpha1;flynor/capability-result/v1alpha1;flynor/capability-lease/v1alpha1

    依赖

    protocol;capability-adapter

    03

    运行与部署

    Owner / 支持

    质量平台组 · 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 版本整体升级或回退;工具清单独立版本化,写工具默认关闭

    依据

    apps/test-mcp/package.json · apps/test-mcp/README.md · apps/test-mcp/schemas/tools-config.schema.json · apps/test-mcp/schemas/data-write-envelope.schema.json · apps/test-mcp/src/dataWriteEnvelope.js · apps/test-mcp/src/capabilityAdapter.js · apps/test-mcp/src/capabilityLeaseVerifier.js · apps/test-mcp/src/capabilityAuditLedger.js · architecture/schemas/capability-audit.schema.json · apps/test-mcp/config/tools.capability.example.json · apps/test-mcp/scripts/smoke.js · apps/test-mcp/test/test-mcp.test.js · architecture/adrs/0004-test-execution-boundaries.md · architecture/adrs/0009-test-management-runner-browser-boundaries.md · architecture/test-integration.manifest.json · architecture/standards/test-data.md · architecture/runbooks/test-execution-worker.md · architecture/audits/test-runtime-devops-governance-2026-08-26.md · architecture/audits/capability-lease-audit-ledger-governance-2026-08-26.md · architecture/audits/gitlab-required-merge-gate-closure-2026-08-30.md · architecture/evidence/AI-GITLAB-GOV016-20260830-R1.json