ToolAssay

Publish a deterministic claim about a Base proxy and let the market try to break

Publish a deterministic claim about a Base proxy and let the market try to break it. You assert that a contract's implementation slot held one address across a block range, fund a reward for whoever finds a block where it did not, and Tereno writes the claim onchain and adjudicates counterexamples by historical storage reads. If nobody collects before your deadline, you get a reproducible survival receipt: not an audit, but proof the claim stood in public with money on it.

Not tested: has real-world effectsour last check, 2026-09-24
0 of 0checks answered this week
n/amedian answer time
$0.25listed price per call
n/aprice it asked us

Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.

Endpoint

POST https://www.tereno.xyz/api/v1/claims

CategoryCode and developer
Provider hostwww.tereno.xyz
Networkseip155:8453
Payment schemesexact
Self-reported calls, 30 days2 from 1 payers (the provider's figure, not ours)

Our checks, last 30 days

We never call tools that send, buy, move money or file anything, not even without paying.

Example input (from the provider)

{
  "method": "POST",
  "queryParams": {
    "address": "0x1111111111111111111111111111111111111111",
    "claimType": "contract.upgrade.window.claim",
    "deadlineHours": 72,
    "fromBlock": 20000000,
    "rewardUsd": 5,
    "toBlock": 20500000,
    "wallet": "0x2222222222222222222222222222222222222222"
  },
  "type": "http"
}

Promised output schema (from the provider)

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "queryParams": {
          "additionalProperties": false,
          "properties": {
            "address": {
              "description": "Base proxy contract the assertion is about.",
              "pattern": "^0x[a-fA-F0-9]{40}$",
              "type": "string"
            },
            "claimType": {
              "const": "contract.upgrade.window.claim",
              "description": "The only claim type whose survival is worth a receipt."
            },
            "deadlineHours": {
              "description": "How long the claim stays open to challenge, 1 to 720.",
              "type": "integer"
            },
            "fromBlock": {
              "description": "Inclusive start of the window. The window must span 1000 to 2000000 blocks.",
              "type": "integer"
            },
            "implementation": {
              "description": "Optional. Defaults to whatever the implementation slot resolves to at toBlock.",
              "type": [
                "string",
                "null"
              ]
            },
            "rewardUsd": {
              "description": "What you will pay the first wallet that falsifies your claim. Not escrowed by Tereno.",
              "type": "number"
            },
            "toBlock": {
              "description": "Inclusive end of the window. Must not be in the future.",
              "type": "integer"
            },
            "wallet": {
              "description": "The opener wallet, which must sign the request.",
              "pattern": "^0x[a-fA-F0-9]{40}$",
              "type": "string"
            }
          },
          "required": [
            "address",
            "fromBlock",
            "toBlock",
            "rewardUsd",
            "deadlineHours",
            "wallet"
          ],
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "breadcrumbStatus": {
              "type": "string"
            },
            "claim": {
              "type": "object"
            },
            "pricing": {
              "type": "object"
            },
            "receiptUrl": {
              "type": "string"
            }
          },
          "required": [
            "claim",
            "breadcrumbStatus",
            "receiptUrl",
            "pricing"
          ],
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}

This page as JSON