Verano SquareFight receipt
Nº000460

Contest · city day 995006 ·

Downtown

Dock Runners held it

Defender
Dock Runners winner22 in district · spend 60 · score 79.13 · burn yes
Attacker
The Social Club89 in district · crew of 89 · spend 90 · score 109.95 · odds 73%

Orders that night

War-chest burns on-chain

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 d59e801d65f9…41772aff:

curl -s https://verano-square.fly.dev/api/turf/receipts/c995006-downtown | 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/c995006-downtown/canonical | sha256sum

  1. Chain. The document includes prev_hash. It must equal the previous receipt's hash (b995005-k5-defend), so no earlier receipt can change without breaking every one after it.
  2. 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==995006)|.contests[]|select(.d=="Downtown")'
  3. 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 2,074 bytes that were hashed
{"facts":{"burns":[{"amount":"1000","at":1791012590569,"block":78909005,"burnt":"1000","by":"k6","day":995006,"first":false,"from":"0x806e5A29a76425f066C41BF5a49FB182B032dBF7","hash":"0xda9b98d57f7395d84451e62c0276f5a32784cd3632f422923c7c81d0be7f903a","id":"crew:d995006:k6:defend","link":"https://robinhoodchain.blockscout.com/tx/0xda9b98d57f7395d84451e62c0276f5a32784cd3632f422923c7c81d0be7f903a","n":null,"settledAt":1791012657040,"status":"settled","to":"0x000000000000000000000000000000000000dead","wallet":"crew","what":"Dock Runners: the defence of Downtown, city day 995006"},{"amount":"1000","at":1791012590765,"block":78909081,"burnt":"1000","by":"k12","day":995006,"first":false,"from":"0x806e5A29a76425f066C41BF5a49FB182B032dBF7","hash":"0x53cb57e94b629ba28d85566e760c25a32a32fb1995549ea0f29fc4d5f2f6ce3e","id":"crew:d995006:k12:claim","link":"https://robinhoodchain.blockscout.com/tx/0x53cb57e94b629ba28d85566e760c25a32a32fb1995549ea0f29fc4d5f2f6ce3e","n":null,"settledAt":1791012664117,"status":"settled","to":"0x000000000000000000000000000000000000dead","wallet":"crew","what":"The Social Club: a claim on Downtown, city day 995006"}],"chain":{"burnAddress":"0x000000000000000000000000000000000000dead","chainId":4663,"explorer":"https://robinhoodchain.blockscout.com","token":"0x9f4BA41F91a59A34e17eE8C9EB3A51363B11aBD5"},"contest":{"att":[{"chance":0.73,"crew":89,"id":"k12","members":89,"s":109.95,"spend":90}],"d":"Downtown","def":{"burn":true,"id":"k6","members":22,"s":79.13,"spend":60},"holder":"k6","winner":"k6"},"night":{"at":1791012590849,"day":995006},"orders":{"k12":{"claim":"Downtown","claimBurn":"crew:d995006:k12:claim","claimSpend":90},"k6":{"defend":"Downtown","defendBurn":"crew:d995006:k6:defend","defendSpend":60}}},"fetched_at":"2026-10-03T07:32:53.287Z","id":"c995006-downtown","key":"contest:995006:Downtown","kind":"contest","prev_hash":"6b6e2fbef988adb7df0a82ef65fc07d5f5fe31dd3dc7656ba8a8720d6cdc739b","rev":1,"seq":460,"source":"https://www.grift.world/api/crews","source_path":"nights[day=995006].contests[d=\"Downtown\"]","v":1}