Valid execution-onlyAgent 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 settlementRail 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 scopeAgent 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"]
}
]
}