Started . 1 proposed action.
“I want my money back for order 1201, the headphones are not what I expected.”
“Five refund requests in the last week.”
“Customer is unhappy with the headphones. Refund $30.”
The receipt holds every step of this run, its fingerprint, and the outside timekeepers' proofs, so anyone can see if a step was changed or removed, and by when each step happened.
It proves these steps were recorded in this order, and that none was changed or removed afterwards. It doesn't prove the AI's reasoning was right, who a person really is, or what happened outside this record.
The free checker runs in your browser and sends nothing to us. Drop the receipt in: it shows each step with the time the outside timekeeper confirmed, and one verdict.
| # | Fact | Tag | Who | Time | Hash | Prev |
|---|---|---|---|---|---|---|
| 1 | request.received | claimed | Chris Vale | 02:12:17Z | 3414ca770c8e… | 000000000000… |
| 2 | customer.flagged | observed | fraud check (toy) | 02:12:18Z | d535432825b6… | 3414ca770c8e… |
| 3 | action.proposed | claimed | Support agent | 02:12:18Z | 1b57c952e8b8… | d535432825b6… |
| 4 | action.blocked | observed | Your rules | 02:12:18Z | a234574d59d8… | 1b57c952e8b8… |
{
"v": "proto-2",
"runId": "run-fa2v2uw8wr",
"seq": 1,
"prev": "0000000000000000000000000000000000000000000000000000000000000000",
"how": {
"build": "attesto-flight-recorder@proto-2.1",
"rules": "rules-v1#6ad3916fe682caed",
"traceId": "a4bbc708fcec685d"
},
"type": "request.received",
"at": "2026-10-17T02:12:17.511Z",
"who": {
"kind": "customer",
"id": "cust-chris",
"name": "Chris Vale"
},
"tag": "claimed",
"source": "customer message",
"data": {
"textHash": "451ab3d1d0287ed7eabd3935dd92d53a7bec373a026008f9ade81503d127084e"
},
"hash": "3414ca770c8ecae5c6a2e1375476d6806f81a6fdcf5f017ca9fcc05b8f393c40"
}{
"v": "proto-2",
"runId": "run-fa2v2uw8wr",
"seq": 2,
"prev": "3414ca770c8ecae5c6a2e1375476d6806f81a6fdcf5f017ca9fcc05b8f393c40",
"how": {
"build": "attesto-flight-recorder@proto-2.1",
"rules": "rules-v1#6ad3916fe682caed",
"traceId": "a4bbc708fcec685d"
},
"type": "customer.flagged",
"at": "2026-10-17T02:12:18.145Z",
"who": {
"kind": "system",
"id": "fraud check (toy)",
"name": "fraud check (toy)"
},
"tag": "observed",
"source": "fraud check (toy)",
"data": {
"flagged": true,
"reasonHash": "2d2790deb19841d28257ec7a687f936ccfa7b96cff8d2eb3c950b69fec3106fb"
},
"hash": "d535432825b6a61deb7178d21a36f9b88f192043b9c30c42a1f25bcf3364c897"
}{
"v": "proto-2",
"runId": "run-fa2v2uw8wr",
"seq": 3,
"prev": "d535432825b6a61deb7178d21a36f9b88f192043b9c30c42a1f25bcf3364c897",
"how": {
"build": "attesto-flight-recorder@proto-2.1",
"rules": "rules-v1#6ad3916fe682caed",
"traceId": "a4bbc708fcec685d",
"agent": "Support agent@toy-0.1"
},
"type": "action.proposed",
"at": "2026-10-17T02:12:18.331Z",
"who": {
"kind": "agent",
"id": "agent:toy-support",
"name": "Support agent",
"version": "toy-0.1"
},
"tag": "claimed",
"source": "agent proposal",
"data": {
"proposalId": "p-kkdwyjjx77",
"action": {
"kind": "refund",
"orderId": "1201",
"amountCents": 3000,
"currency": "USD"
},
"reasonHash": "410e499155382e51ef9bae3e4f75a34741b31a99e41f912280dc56aac8807c8e"
},
"hash": "1b57c952e8b872023671629b78eecbf097f140197ac2567c01efecc50f8db77d"
}{
"v": "proto-2",
"runId": "run-fa2v2uw8wr",
"seq": 4,
"prev": "1b57c952e8b872023671629b78eecbf097f140197ac2567c01efecc50f8db77d",
"how": {
"build": "attesto-flight-recorder@proto-2.1",
"rules": "rules-v1#6ad3916fe682caed",
"traceId": "a4bbc708fcec685d",
"agent": "Support agent@toy-0.1"
},
"at": "2026-10-17T02:12:18.331Z",
"who": {
"kind": "rules",
"id": "rules",
"name": "Your rules"
},
"tag": "observed",
"source": "decide()",
"type": "action.blocked",
"data": {
"proposalId": "p-kkdwyjjx77",
"rule": {
"id": "flagged-customer",
"name": "Block if the customer is flagged"
},
"checked": [
{
"ruleId": "flagged-customer",
"matched": true
}
]
},
"hash": "a234574d59d8fd6adf4b58511e8a865f4a3b854eaa323d02529170c548a65ad8"
}