Verify it yourself
The hash above is SHA-256 over this receipt's canonical JSON: keys sorted, no spaces, UTF-8. Re-hash it in one line; you should get bd702ae755fa…2752c257:
curl -s https://verano-square.fly.dev/api/turf/receipts/c994892-mid-rise | jq -cjS .receipt.document | sha256sum
That rebuilds the canonical form from the JSON with jq -S (jq 1.6+). Or hash the exact stored bytes: curl -s https://verano-square.fly.dev/api/turf/receipts/c994892-mid-rise/canonical | sha256sum
- Chain. The document includes
prev_hash. It must equal the previous receipt's hash (c994892-finance), so no earlier receipt can change without breaking every one after it.
- Source. Every value under
facts is copied from grift.world's public feed, same keys, same values. While the city still lists it (about the last 14 nights; the last 300 burns), compare:curl -s https://www.grift.world/api/crews | jq '.nights[]|select(.day==994892)|.contests[]|select(.d=="Mid-rise")'
- On-chain. Open each burn's tx on Robinhood Chain's blockscout. It should show the war chest wallet sending the amount to the burn address.
Full chain: /api/turf/receipts?order=asc&full=1 · server-side check: /api/turf/receipts/verify · how it works: /start.md
Canonical JSON the exact 1,423 bytes that were hashed
{"facts":{"burns":[{"amount":"1000","at":1790807447469,"block":76875616,"burnt":"1000","by":"k8","day":994892,"first":false,"from":"0x806e5A29a76425f066C41BF5a49FB182B032dBF7","hash":"0x9dae89decfeb97548df3c0979594aff0f995976265b55338f367bba1144f60aa","id":"crew:d994892:k8:claim","link":"https://robinhoodchain.blockscout.com/tx/0x9dae89decfeb97548df3c0979594aff0f995976265b55338f367bba1144f60aa","n":null,"settledAt":1790807461065,"status":"settled","to":"0x000000000000000000000000000000000000dead","wallet":"crew","what":"Swift Delivery: a claim on Mid-rise, city day 994892"}],"chain":{"burnAddress":"0x000000000000000000000000000000000000dead","chainId":4663,"explorer":"https://robinhoodchain.blockscout.com","token":"0x9f4BA41F91a59A34e17eE8C9EB3A51363B11aBD5"},"contest":{"att":[{"chance":0.55,"crew":136,"id":"k8","members":0,"s":81.29,"spend":100}],"d":"Mid-rise","def":{"burn":false,"id":"k3","members":128,"s":75.88,"spend":0},"holder":"k3","winner":"k3"},"night":{"at":1790807447598,"day":994892},"orders":{"k8":{"claim":"Mid-rise","claimBurn":"crew:d994892:k8:claim","claimSpend":100}}},"fetched_at":"2026-10-01T00:57:07.617Z","id":"c994892-mid-rise","key":"contest:994892:Mid-rise","kind":"contest","prev_hash":"f33e85b4a0c33779b61830a727ce0cd16eb8f8c7d10012a7317f205878d41c00","rev":1,"seq":239,"source":"https://www.grift.world/api/crews","source_path":"nights[day=994892].contests[d=\"Mid-rise\"]","v":1}