{
  "service": "TxGuard",
  "available": true,
  "generated_at": "2026-08-04T16:05:32.693Z",
  "service_version": "0.1.0",
  "policy_version": "2026-08-03",
  "data_versions": {
    "denylist": "2026-08-03.1",
    "abi_packs": "2026-08-03.1",
    "signature_index": "2026-08-03.1",
    "policy": "2026-08-03",
    "chain": "eip155:8453",
    "max_unwrap_depth": "4"
  },
  "corpus_size": 64,
  "methodology": "Every case runs the same preflight function a paying caller reaches, with no HTTP and no payment layer, against an injected fake JSON-RPC transport carrying canned responses — so the suite is fully offline and a network outage cannot turn into a green build. Tiers run 1 (plain transfers and exact approvals) to 5 (adversarial: the full x402 authorization check table, quote substitution on each field, consumed and low-entropy nonces, and a deliberately opaque proxy). Tier 2 exists specifically to measure false positives: ordinary transactions that must not be flagged. Tier 3 measures the opposite failure, cases where `unknown` is the correct answer and any confident verdict is wrong. False positives and false negatives are counted and reported separately, never averaged into one accuracy figure.",
  "metrics": {
    "pass_rate": 1,
    "passed": 64,
    "failed": 0,
    "tier_1_pass_rate": 1,
    "tier_1_cases": 6,
    "tier_2_pass_rate": 1,
    "tier_2_cases": 9,
    "tier_3_pass_rate": 1,
    "tier_3_cases": 8,
    "tier_4_pass_rate": 1,
    "tier_4_cases": 22,
    "tier_5_pass_rate": 1,
    "tier_5_cases": 19
  },
  "false_positives": 0,
  "false_negatives": 0,
  "latency_ms_p50": 0.171,
  "latency_ms_p95": 2.068,
  "limitations": [
    "The corpus is self-authored. It is not an independent benchmark and no third party has verified it.",
    "A clean preflight is not a guarantee that a transaction is safe, correct, or profitable. It reports what the calldata says, what the chain says now, and where the two are silent.",
    "Signature resolution is only as good as its rungs: 57 selectors from bundled standard ABIs and 48 from the curated offline index. An unverified contract using a non-standard selector resolves to nothing, and the answer is `unknown` by design.",
    "The bundled denylist (2026-08-03.1) seeds only burn and null addresses, which are matters of arithmetic. Attributed scam entries come from ScamSniffer scam-database and MetaMask eth-phishing-detect and Well-known burn and null addresses through a scheduled refresh, so coverage is exactly as current as the shipped version.",
    "Simulation describes head state at the moment of the call. Reordering, an intervening state change, or a proxy upgrade between simulation and inclusion can all change the outcome — which is why an upgradeable proxy is reported as a risk rather than as metadata.",
    "Latency figures are in-process timings from the eval run against a fake transport. They exclude network, TLS, payment verification, and real RPC latency, and are not a substitute for the published SLA."
  ],
  "disclaimer": "These figures are evidence from a versioned corpus, not a guarantee. Corpus composition and size are stated so the numbers can be interpreted and reproduced."
}