{
  "verifier": "yay-layer",
  "site": "https://yaylayer.com",
  "about": "Canonical verifier-capability registry. Each entry is the fingerprint YayLayer computes over the live provers, effect nets, checks and policy kinds for that capability version. An attestation's capabilityFingerprint must match the entry for its declared version, or it is claiming a capability the verifier does not have.",
  "capabilities": {
    "1.0.0": {
      "fingerprint": "1579c1ec83344596b4e3de93162ac7062d9846e0bd9793c7969b1fe3064e1aa1",
      "published": "2026-08-29",
      "provers": ["php", "pure-call", "python", "render", "ruby"],
      "effectNets": ["js", "python", "ruby", "php", "solidity", "rust", "csharp"],
      "checks": ["branch-coverage", "ensures-prover", "inertness", "jsx-render-prover", "literal-seeding", "mutation-grading"],
      "notes": "JS/TS/JSX + Python/Ruby/PHP behaviorally proven; Solidity/Rust/C# first-class static effect nets."
    },
    "1.1.0": {
      "fingerprint": "1d2a74604dcffc789bf7de6ee98f9368fee68241ea7aafcb87c57c858167388c",
      "published": "2026-08-30",
      "provers": ["php", "pure-call", "python", "render", "ruby"],
      "effectNets": ["js", "python", "ruby", "php", "solidity", "rust", "csharp"],
      "checks": ["branch-coverage", "ensures-prover", "inertness", "jsx-render-prover", "literal-seeding", "mutation-grading", "predicate-provenance"],
      "policyKinds": ["coverage-full", "ignore-source", "inert-level", "non-delegable", "predicate-declared", "required-signer"],
      "notes": "Adds undeclared-input predicate provenance (a branch keying off a parameter the spec's in: never declares) + the predicate-declared policy kind. MINOR: a new check, so a previously-green Cell may now be flagged Yellow, but no existing verdict's meaning changed."
    },
    "1.2.0": {
      "fingerprint": "f29468bffd24b0f93529bd1daa6b1f98e96dce9df1b55993d44b4055c9599d75",
      "published": "2026-09-01",
      "provers": ["php", "pure-call", "python", "render", "ruby"],
      "effectNets": ["js", "python", "ruby", "php", "solidity", "rust", "csharp"],
      "checks": ["branch-coverage", "ensures-prover", "inertness", "jsx-render-prover", "literal-seeding", "mutation-grading", "predicate-provenance"],
      "policyKinds": ["coverage-full", "ignore-source", "inert-level", "non-delegable", "predicate-declared", "required-signer", "reverify-latest"],
      "notes": "Adds the reverify-latest policy kind: the reverification posture (yay reverify posture off|guarded|strict) can require preserved history to be re-verified under the current capability, scopeable per-Cell. MINOR: a new policy kind the verifier understands; no existing verdict's meaning changed."
    }
  }
}
