跳转至

验证与符合性

验证层次

每次优化必须验证同一目标是否完成,且对象、权限、质量和成本语义保持正确。工具响应更快不能单独证明 Agent 任务更快;步骤更少不能单独证明结果更好。

flowchart LR
  U[目标和可验证结果] --> C[合同与负例测试]
  C --> B[真实页面和语义定位]
  B --> I[隔离服务与正式客户端]
  I --> P[独立安装和制品一致性]
  P --> H[目标宿主真实任务]
  H --> R[发布后任务与产物核验]

各层只证明其实际覆盖范围。协议夹具不能代替真实宿主;本地浏览器不能代替内置浏览器;技术合格不能代替人工质量结论。

本仓库可执行检查

以下命令在仓库根目录执行,不访问业务服务:

uv run --no-project --with-requirements requirements-test.txt python scripts/validate-contracts.py
uv run --no-project --with-requirements requirements-test.txt python -m unittest discover -s tests -v
uv run --no-project --with-requirements requirements.txt mkdocs build --strict
uv run --no-project --with-requirements requirements-test.txt playwright install chromium
uv run --no-project --with-requirements requirements-test.txt python scripts/verify-site.py

已有 Chrome 时可通过 AXI_BROWSER_PATH 指定可执行文件,跳过测试浏览器安装。测试依赖只在工具管理的隔离环境中安装。

检查 实际覆盖 证据
合同校验 五类 JSON 表示、业务输入、目录引用、动作修订、批量状态与范围 .dev/contract-validation.json
行为与负例 未知字段、版本、恢复缺项、同键并发、进程重启、撤权、CAS、保留期、事务回滚 unittest 实际结果
方法包 元数据、包内资源、引用动作及分发内容 合同检查与构建产物
文档站 项目子路径、全页链接、要求锚点、原文下载、图表、搜索、手机导航、无外部运行时请求 .dev/site-validation.json

参考提供方没有真实 OAuth、MCP 传输、MCP App 或 DSH 运行时。上述检查不能证明它们已接入;对应任务需在兼容性矩阵中另行提供证据。

采用方必测矩阵

维度 关键用例
发现 已知目标直接执行;未知入口窄查;索引版本不符;引用工具缺失
定位 同名资源、重复按钮、多候选、分页、对话框、深链和刷新
上下文 切账号、切项目、旧修订、迟到响应、失权与跨范围对象
执行 Schema错误、前置缺失、费用不足、冲突与服务错误
恢复 提交应答丢失、超时、取消、原键重放、等待中换账号
视觉 缩放、平移、比较、键盘、窄屏、图像读取失败
降级 无插件、无页面级工具、注册被拒绝、无浏览器和人工接管
发版 索引/Skill/Schema/运行文件一致,干净安装和新会话发现
安装 可信来源、精确版本、依赖失败、启用范围、卸载和干净环境
身份 已有有效连接、拒绝、过期、刷新、缺 scope、错误受众、切账号与撤销
交互视图 初始化、资源版本、结果推送、工具代理、沙箱、失权与无 UI 降级
升级 旧合同与旧 UI、缓存失效、新权限、在途操作、回滚和远端回读
退役 停止新调用、未知操作核对、恢复保留、权限撤销与数据边界
结果 实际产物可读、质量满足、范围完整、费用独立核对
独立本地 阻断非loopback请求、无远程身份,依赖准备后完成声明任务;不推导宿主模型也可离线
项目与内部状态 对话/TTY/机器模式/Web的目录选择与默认、外部编辑、崩溃、索引重建、数据库/文件一致快照
数据位置与留存 无隐式上传、结果取得中断、发布unknown、临时到期、有效引用、恢复与费用保留
渐进首次使用 明确目标直接进入可用结果;默认位置可见可改,不强迫选运行模式;远程能力/云存储/协作按需接入
原生选择 宿主实际能力、少量选项/默认/自由输入、拒绝/取消/不支持、无TTY和迟到响应;选择不扩大授权

性能指标

指标 定义
首次定位成功率 第一次定位即获得正确对象与操作的任务比例
首个可用结果时间 从接受目标到第一个满足约定用途的结果;不等同首个响应
任务完成时间 到约定业务结果及必要核验完成的时间
操作准确率 有效且作用于正确对象的操作占全部尝试的比例
失败与恢复 失败、无效参数、重复副作用、重试及人工介入分别计数
交互成本 模型回合、工具调用、HTTP请求、浏览器动作、输入/输出量分开计数
质量与成本 产物缺陷、范围完成度和实际费用分别报告

至少区分冷启动与已有连接,固定目标、数据、模型、宿主、网络和制品。比较串行、并行及批量时核对结果一致,记录原始样本与失败;报告中位数和尾部耗时,不能只选最快一轮。没有足够样本时说明局限,不制造统计结论。

每个声明入口分别给预算和结果:CLI启动/帮助/TTY、MCP就绪/发现/调用、本地视图首屏/连续交互/持久保存、远程身份/执行/取得。模型回合、工具调用、HTTP、进程/视图启动、传输字节及SQLite/文件I/O分别记录;并行阶段按关键路径统计。预算未达或未运行如实列出,不能将本仓库静态站构建通过写成本地生产器已达性能目标。

证据记录

证据应当记录时间、精确制品摘要、任务范围、环境、执行命令、预期/实际结果、失败和未执行项。源码在测试期间变化使证据不再对应原候选时,必须重新冻结验证或明确标为失效。

日志只保留必要的可观察操作与脱敏数据;不得记录凭据、会话信息或无关用户内容。不要求保存模型私有推理。

符合性声明

符合性按任务和环境声明,不按工具数量打分。采用方应当提供以下清单:

  1. 明确支持的核心任务与产品边界。
  2. 各任务的发现、定位、执行、观察与恢复合同。
  3. 对应测试和目标宿主证据。
  4. 未支持的可选增强及其降级路径。
  5. 当前发布版本与尚未验证的依赖。

要求编号及来源由机器索引生成;使用采用清单模板逐项关联正例、负例和精确制品。

可以声明“某版本在某宿主完成指定任务验证”;不能仅凭文档、截图、Schema、队列接收或安装成功声称完整符合。性能目标由采用方在测量前确定,并与正确性和质量一起验收。