Browser Harness QA 签收

日期:2026-03-12
范围:Browser Harness v1、browser-only providers、judge-provider 解耦、基于 fixture 的手工签收

本清单是 Browser Harness 的标准手工 / 浏览器 QA 检查表。 它补充自动化的 backend、frontend 和 Playwright 覆盖,也是最终 playwright-interactive 签收的必需输入。

运行时假设

  • 应用可通过浏览器访问
  • Browser Harness fixtures 与应用位于同一 host,可直接访问
  • 源数据集已经存在于当前工作区
  • 若数据集需要 judge 评分,则当前工作区中至少存在一个 API provider 可用于 judge

需要签收的用户可见主张

  • 应用提供独立的 Browser Harness 路由和导航入口
  • 当所选内容不满足 v1 约束时,页面会阻止导出
  • ChatGPTGeminiCustom 三条路径都能生成脚本、捕获响应并导入结果
  • 导入后的捕获会被创建为普通 completed run,而不是平行的浏览器专属结果类型
  • 导入的 run 会归因到 browser-only providers,而不是 API providers
  • 需要 judge 的数据集可以配置显式 judge provider,且它可与 run provider 不同
  • 导入后的 Browser Harness runs 会继续出现在 Runs 中,并可用于 Comparison
  • Browser Harness 页面在桌面与移动端视口下都不会裁切,也不依赖水平滚动
  • 整个签收流程中无 console errors 或 page errors

控件与状态

Control / BehaviorFunctional checkVisual checkExpected evidence
Dataset selector + section scope选择数据集、切换 sections、设置 Max items,确认 selection summary 有变化selection summary 与 blocked-state 文案保持可读桌面端 Browser Harness 截图
Preflight blocking制造 blocked 条件,确认导出被阻止,且显示明确 issue 列表blocked issue card 清晰可读,无裁切截图 + 备注
Preset selectorChatGPTGemini 间切换,确认 selector recipe 会变化且不破坏 pacing controlspreset labels、origin 与 pacing 字段保持可读桌面端截图
Custom selectors填完所有必填 selectors,确认只有在字段齐全时才允许 generate高密度 selector form 在桌面与移动端都保持可读桌面端 + 移动端截图
Generate script生成 raw script 与 bookmarklet生成结果区域可见,copy affordances 可触达截图
Fixture links从 Browser Harness 页面打开每个本地 fixture 页面fixture link 分组可见且语义清楚截图
ChatGPT fixture flow运行导出脚本,等待 ZIP 下载,导入 capture,并确认 run 出现在 Runs状态、provider 与导入反馈文字无裁切截图 + artifact
Gemini fixture flow同上同上截图 + artifact
Custom fixture flow同上,但使用手工 selectors同上截图 + artifact
Runs attribution检查导入后的 run,确认 Browser Harness trigger 与 browser-only provider attributiontrigger/provider 文本可读,且不是原始内部 enum 噪音Runs 截图
Judge configuration display查看 run detail,确认配置时能显示 judge provider/model/sourcejudge 区块可见,prompt 文本换行正常Run detail 截图
Comparison availability在导入 run 结束后打开 Comparison,确认可选且可读Comparison 布局稳定Comparison 截图

探索性检查

  • 使用错误的 origin,确认运行时会拒绝在错误 host 上执行
  • 走 JSON fallback import 路径,确认应用仍会创建普通 run

必须明确写入的负向确认

最终签收备注必须明确确认:

  • 没有 viewport clipping
  • 没有 horizontal overflow
  • 没有 provider attribution 错误
  • 没有需要 judge 却静默未评分的 run
  • 没有从 Browser Harness import 跳转到 Runs 的深链损坏
  • 没有 console errors
  • 没有 page errors

证据约定

将证据包存放到 .artifacts/manual-qa/browser-harness/

  • browser-harness-signoff.json
  • 桌面端截图
  • 移动端截图
  • run detail 截图
  • comparison 截图
  • 若存在,附上 console/page error 捕获

如果某条主张未覆盖,必须明确记录原因。 对三条 fixture flows、run attribution、judge display 与 viewport fit,不接受 “Not tested”。