For AI agents: the complete documentation index is available at https://a3s-lab.github.io/Test/v0.16.2/llms.txt, the full documentation bundle is available at https://a3s-lab.github.io/Test/v0.16.2/llms-full.txt, and this page is available as Markdown at https://a3s-lab.github.io/Test/v0.16.2/guide/contracts.md.
历史版本

本页记录 v0.16.2。请切换到当前版本查看最新指引。

从 PRD 与设计稿生成页面契约

A3S Test 可以从 PRD 和设计稿生成带来源的候选树,再由人工确认后发布为 Surface Contract。运行时把这份契约与浏览器可访问树、Test Kit 页面上下文对照,就能更快找到产品要求、设计表达和真实实现之间的差异。

三种数据必须分开

数据它能证明什么它不能证明什么
PRD产品意图、文案要求、用户结果、业务约束当前 DOM 已经实现这些要求
设计稿区域、层级、几何、视觉关系和来源图像摘要浏览器角色、可访问名称或真实交互状态
页面上下文当前修订的语义结构、状态、组件、定位器和几何产品意图本身正确

只有评审后的选择才能进入阻断式 Surface Contract。模型输出、未解决冲突和低置信度候选保持建议状态。

生成候选

ACL 配置声明来源、预算和部署方 provider:

contract_generation "checkout" {
    max_cost_microusd = 50000

    context {
        mode = "operate"
        audience = ["customer"]
        primary_outcome = "place_order"
    }

    provider {
        name = "deployment-gateway"
        model = "interface-contract-model"
        endpoint = "https://inference.example.test/v1/contracts"
        authorization_env = "A3S_TEST_PROVIDER_AUTHORIZATION_CONTRACTS"
    }

    source "requirements" {
        kind = "prd"
        path = "./checkout.md"
        uri = "./checkout.md"
    }

    source "desktop-design" {
        kind = "design"
        path = "./checkout.png"
        uri = "./checkout.png"
        media_type = "image/png"
        width = 1440
        height = 900
    }
}
export A3S_TEST_PROVIDER_AUTHORIZATION_CONTRACTS='Bearer ...'
a3s-test contract generate \
  --config tests/contracts/checkout.generate.acl \
  --output tests/contracts/checkout.draft.json

草稿只包含候选、冲突、开放决策、provider 用量和来源摘要,没有可执行权限。

人工评审并发布

contract_review {
    reviewer = "product-owner@example.test"

    candidate "requirements:desktop:place-order" {
        action = "approve"
    }

    conflict "conflict:0123456789abcdef" {
        select = "requirements:desktop:place-order"
        rationale = "Approved product terminology"
    }
}
a3s-test contract review \
  --draft tests/contracts/checkout.draft.json \
  --review tests/contracts/checkout.review.acl \
  --output tests/contracts/checkout.acl \
  --audit tests/contracts/checkout.reviewed.json

评审阶段会重新计算来源摘要、检查引用字节范围、拒绝未解决冲突或产品问题,并在本地重新生成规范 ACL。工作流校验和用于发现意外或未评审修改,不是数字签名。

与真实页面对账

套件通过 verify_contract 引用评审结果:

verify_contract "checkout-ready" {
    contract = "./contracts/checkout.acl"
    variant = "desktop"
    state = "ready"
}

对账优先使用 test ID、组件身份、角色与可访问名称,最后才退化到角色。缺失或截断的 Test Kit 上下文属于不确定结果并关闭失败。阻断差异决定套件结果,建议差异只进入报告。

可选视觉定位与设计审计

视觉定位 provider 接收绑定观察和 SHA-256 的 PNG,返回点或矩形候选。A3S Test 会重新哈希、做几何准入并与当前 Test Kit 节点命中测试。唯一命中可以转换为当前语义目标,歧义或未映射结果保持图像绑定建议。它从不自动点击。

设计审计 provider 同时接收截图和完整页面上下文,可针对层级、构图、间距、排版、色彩、一致性、交互清晰度、内容清晰度和响应式构图提出建议。建议没有 verdict、动作或修复权限,只有人工评审后才能进入 Repair Ledger。