原语契约测试
针对真实 provider Environment 验证:- 列表形式命令和字符串命令的执行、标准输出、标准错误、非零返回码、超时、工作目录和环境变量。
- 文件与嵌套目录上传/下载、文本读取/写入、缺失路径和路径引用。
- 工作区创建和文档声明的默认值根目录。
- provider 支持时的端点发现机制。
- 成功、命令错误、超时、取消和部分启动后的会话关闭。
来源、资源与覆盖矩阵
验证自动与显式路径:
同时确认解析后计划和真实 sandbox 配置。受支持时测试 CPU 与内存强制执行,并为文档声称支持的磁盘或 GPU 行为提供证据。
网络强制执行矩阵
为每个声明的模式:- 证明
public能访问获准测试目标。 - 证明
no-network在传输层拒绝真实出站请求。 - 对
allowlist,证明一个允许目标成功、一个拒绝目标失败。 - 测试文档声明的具体 host、前导通配符 host、IPv4、IPv6 和 CIDR 条目。
- 声明动态切换时,测试准备 → 运行 → 准备 → 验证器切换。
- 确认关闭和失败启动后移除策略和代理资源。
端到端与并发验证
先以并发1 运行一个真实 Benchmark/Harness 任务,再运行小型并发批次。provider 声称支持 Recipe 工作流时,至少包含一个正常任务镜像和工作区由 Recipe 提供的 Benchmark。
并发运行应覆盖 provider 打开速率限流、唯一资源名称、独立会话、清理、SDK 异步行为、配额错误和取消。确认一个 Environment 失败不会关闭或破坏另一个任务会话。
对于新 provider,在可能的情况下用同一 Model、Benchmark、Harness、镜像、资源和网络策略与已有 provider 比较任务结果和收集的产物,并解释 provider 专属差异。
PR 证据
包含:- 官方 provider API 或 SDK 版本和链接。
- 支持功能和网络矩阵。
- 脱敏后的解析后配置和冒烟测试命令。
- 原语、资源、网络、清理和并发结果。
- 自动 Recipe 和显式覆盖证据。
- 更新后的 Environment 和受影响 Benchmark 文档。
