SuperAPI AI 工具集

add-product-e2e-eval

测试与质量

查看项目

更新于 10-16 07:52

技能介绍

用途

该技能用于添加或扩展 Paperclip 全栈运行器(Runner)的端到端(E2E)评测工作流,包括 fixture、匹配器(matcher)和报告证据路径,支持本地或 Daytona 执行。它服务于 Product E2E Eval 场景:涉及真实 Chromium、Paperclip 服务端、数据库、运行器、provider,以及可选的 Daytona。日常工作流(Everyday Workflows)也属于该家族,即使其打包结果被导入 Evalbook。针对 mock 控制平面的运行器协议用例应归入 add-runner-eval。

主要能力

  • 定义一个有界工作流,具有清晰的用户结果、持久状态断言和独立证据。
  • 声明 profile、环境、预期 provider 轮次、超时、清理、截图、产物检查和计费范围。
  • 在 tests/runner-e2e/catalog.ts 和相关 fixture-registry.ts 路径中注册工作流。
  • 将 profile/环境/用例 ID 接入现有选择器和匹配器表,并在周边套件这样做时添加报告/目录覆盖测试。
  • 使用现有结果验证器、失败分类器、截图策略和 Product E2E 报告流水线,而非重复实现。
  • 用有效结果和合理的错误结果校准新的评分断言;缺失证据不得产生通过。

使用方式

先定位仓库:使用 PAPERCLIP_ROOT(若提供),或从检出目录执行 git rev-parse --show-toplevel。若在 Git 之外,检查工作区根目录如 ~/paperclipai/paperclip;验证所选根目录包含 tests/runner-e2e 和 packages/paperclip-runner。从该仓库根目录运行命令。复制的技能可能位于检出目录之外。

阅读 doc/evals.md,然后阅读所选区域的权威文档 tests/runner-e2e/README.md、FIXTURES.md、SECURITY.md 和 EVERYDAY-WORKFLOWS.md。在更改任何内容之前,检查最近的现有目录条目、用例、harness 流程、匹配器、证据写入器和报告测试。将用户旅程保持在生产浏览器/API 表面上;不要添加私有运行器钩子或直接 fixture 数据库写入。

日常用例和操作位于 everyday-cases.ts 和 everyday-flow.ts;匹配现有套件的结构。

在运行前确认发现:

pnpm test:e2e:runner -- --list --suite <suite-name>
pnpm test:e2e:runner -- --list --suite everyday-workflows

--all 有意排除手动 everyday-workflows 套件和其他显式专用单元。对这些使用确切的套件或执行 ID。Product E2E 生成器是 pnpm test:e2e:runner:report;Everyday Workflows 结果也可以使用其规范导入器导入 Evalbook,但它仍然是 Product E2E 运行,应首先使用其打包的仪表板/报告。

先运行免凭据检查:

pnpm test:e2e:runner:typecheck
pnpm test:e2e:runner:unit
pnpm test:e2e:runner -- --list

对于授权的实机检查,使用最小的显式本地 --id 选择器。仅在配置了不可变镜像和凭据时选择 Daytona。完整的 --all 活动是付费的,用于受治理的工作流。从打包的尝试证据和仪表板验证结果;通过的模型编写测试不能覆盖独立 oracle。

将完成的错误工作流按断言要求分类为产品行为或模型/provider 行为。启动、传输和超时症状需要基于证据的归因:它们可能表示 Paperclip/Runner 产品缺陷、provider 行为或基础设施问题。分别保留观察到的失败和原因,保持现有机器评分/分类器不变,并保留部分尝试、重试、源 SHA、目录/定义摘要、模型/profile、环境、评分器版本、计时、token、运行时估计和成本覆盖。不要从部分/手动选择声称合格。

当权威契约变更时,更新 README.md、FIXTURES.md、SECURITY.md 或 EVERYDAY-WORKFLOWS.md,并从 doc/evals.md 链接。不要重建 Evalbook HTML 或发布原始可信追踪、视频、归档、数据库、工作区、凭据、SVG、provider 会话 ID 或隐藏推理。当现有发布器允许时,公开的经过净化的 fixture 对话、标记截图和允许列表结构化证据是预期的。

适用场景

  • 为 Paperclip 全栈运行器添加或扩展 Product E2E 评测工作流。
  • 添加或修改 E2E fixture、匹配器或报告证据路径。
  • 在本地或 Daytona 上执行 Product E2E 评测。
  • 处理属于 Product E2E 家族的 Everyday Workflows。

限制

  • 针对 mock 控制平面的运行器协议用例应归入 add-runner-eval,而非本技能。
  • 不要添加私有运行器钩子或直接 fixture 数据库写入。
  • 凭据和机密不得出现在目录数据、截图、fixture 元数据、日志和受跟踪文件中。
  • Daytona 镜像必须是不可变摘要引用。
  • 缺失证据不得产生通过。
  • 不要从部分/手动选择声称合格。
  • 不要重建 Evalbook HTML 或发布原始可信追踪、视频、归档、数据库、工作区、凭据、SVG、provider 会话 ID 或隐藏推理。
  • 完整的 --all 活动是付费的,用于受治理的工作流。
  • 关于具体收费、价格、平台支持范围等细节,资料暂未提供。