Execution receipt demo

Private settlement, public accountability. These examples show how clas.execution.receipt.v1 scopes signatures so execution and settlement are independently attested.

Verify in VerifyAgent paste flow Read docs

Execution and settlement are independently attested.
The ENS capability name is the durable proof identity.
Payment addresses can rotate, hide, or settle privately.

Valid execution-only

Agent signs execution

The agent/runtime signs only execution fields. No settlement claim is present.

{
  "schema": "clas.execution.receipt.v1",
  "receipt_id": "rcpt_exec_only_01JZ8Q7",
  "verb": "clas.agent.execute",
  "agent": "research-agent.example.eth",
  "action": { "name": "summarize", "input_hash": "sha256:8f12...a441" },
  "proofs": [
    {
      "type": "execution",
      "signer": "research-agent.example.eth",
      "covers": ["receipt_id", "verb", "agent", "action"]
    }
  ]
}
Valid private settlement

Rail signs settlement

The same receipt has execution proof from the agent and settlement proof from the rail/payer. Public data stays opaque.

{
  "schema": "clas.execution.receipt.v1",
  "receipt_id": "rcpt_private_settle_01JZ8Q8",
  "verb": "clas.agent.execute",
  "agent": "research-agent.example.eth",
  "action": { "name": "summarize", "input_hash": "sha256:8f12...a441" },
  "settlement": {
    "status": "settled",
    "payment_ref": "settle_ref_G7m_private",
    "payee_commitment": "sha256:c0ff...e129"
  },
  "proofs": [
    {
      "type": "execution",
      "covers": ["receipt_id", "verb", "agent", "action"]
    },
    {
      "type": "settlement",
      "covers": ["receipt_id", "settlement"]
    }
  ]
}
Invalid scope

Agent covers settlement

This is invalid because an agent execution signer attempts to cover settlement. Settlement must be attested by the rail, payer, or settlement authority.

{
  "schema": "clas.execution.receipt.v1",
  "receipt_id": "rcpt_invalid_agent_settle",
  "verb": "clas.agent.execute",
  "agent": "research-agent.example.eth",
  "settlement": {
    "status": "settled",
    "payment_ref": "0xabcd...raw_tx_hash"
  },
  "proofs": [
    {
      "type": "execution",
      "signer": "research-agent.example.eth",
      "covers": ["receipt_id", "verb", "agent", "action", "settlement"]
    }
  ]
}
Privacy checklist

Before publishing a receipt

  • Do not publish settlement.stealth_address.
  • Do not publish a raw 0x... payment transaction hash as payment_ref.
  • Use an opaque settlement reference and a sha256: payee commitment.
  • Verify private payment linkage through selective disclosure.