Verify it yourself

Proof

Two independent guarantees: every call is committed on-chain before its outcome exists, and the whole graded record is rooted daily so grades can't be quietly edited afterwards. Neither requires trusting this site.

1 · Verify a single call

Every prediction row on the scoreboard links (⛓) to a Solana memo transaction from Workshop's proof wallet:

399dibFLexVFhqq1nJUW5pbkZTRBg9zfScEQfh3HX36Q

The memo is workshop:pred:<id>:<sha256>, where the hash commits the exact call text and creation time:

sha256( prediction_text + "|" + created_at + "|" + prediction_id )
  1. Open any call's /claim/<id> page and its explorer link.
  2. Recompute the hash from the shown text/timestamp/id; compare to the memo.
  3. Check the transaction's block time is earlier than the call's resolution.

2 · Verify the whole record

Once a day the entire public record — every call with its grade, including annulled ones — is serialized canonically, hashed, and the root committed on-chain as workshop:root:v2:<day>:<rows>:<sha256>:<prev12>, where prev12 chains each day to the previous root. The exact bytes each root hashed are stored and served back at /record.json?day=YYYY-MM-DD (kept ~90 days; the roots themselves are permanent on-chain), so verification compares three independent copies — the served snapshot, the published root, and the chain memo:

DAY=2026-07-05
curl -s "https://workshopmind.com/record.json?day=$DAY" | python3 -c "
import json,sys,hashlib
d = json.load(sys.stdin)
h = hashlib.sha256(d['canonical'].encode()).hexdigest()
print('recomputed :', h)
print('published  :', d['root'], '(match:', h == d['root'], ')')
print('now compare against the memo in the Solana tx below for', d['day'])
print('tx:', d['tx_signature'])"

The memo on-chain is the copy this site cannot edit. If any historical grade were changed, that day's stored snapshot would no longer hash to its on-chain root — and the prev12 chain means a rewritten day breaks every memo after it. Bare /record.json serves the LIVE record (it matches the next root at publish time, not past memos).

DayRootRowsSnapshotSolana tx
2026-10-189443b7259b6277328c11be0957db0f01dfbf3abfefbc66654135e7bf044a830d
prev 65ac0bcf17dc
7979bytes5VNMNRndo3gQCdnDQm…
2026-10-1765ac0bcf17dc3ecb9be9b3e67a17d03bb34289f473920d90eebf568bf12aa09e
prev 3e658e549719
7978bytes56JvabMoHm5Jqstw7o…
2026-10-163e658e5497197c0fbc286413db72f2f31eaa57620a1015034c5a17554684aea8
prev a1a1c3995faa
7977bytessc81WYkcSjMF6tViTr…
2026-10-15a1a1c3995faa54bfa8bcbcfba49d0ab9551805184da9dc729ba3fa0127c07220
prev 607c7a043d03
7976bytes5J2RZq9QGvXMQ5HtQd…
2026-10-14607c7a043d03c277ce7150e1b7e21d31460976ce2a93c1ec40d513d3b1ec02d4
prev 607c7a043d03
7975bytes5LVyg4pgBks24VuMym…
2026-10-13607c7a043d03c277ce7150e1b7e21d31460976ce2a93c1ec40d513d3b1ec02d4
prev 474f86ca6cd2
7975bytes4tc67VKFeVEU75Q3dA…
2026-10-12474f86ca6cd25cf2870d7119937d1a868e24100af511b7f909446f0b48eb5c8d
prev 5567a5d67365
7974bytes55JtF6qmGF3Dv3QbmY…
2026-10-115567a5d67365dc70aa4c3d49adeefa6c96ae8319ae506739cc72c9143873c031
prev b6dbd87ce8c0
7973bytesdweizvuSDfcXmAT453…
2026-10-10b6dbd87ce8c02475561a41fdb697426fe04b48320560dbf1a2174b96cdcf91ba
prev f9463587283a
7972bytes4SzGaezMdgq1pRiyQY…
2026-10-09f9463587283a282da745f6429560f508f98e1258e498b95e60187fe77e503300
prev a279bc6b305a
7971bytesGTCKKUXYWuHGJ25EpC…
2026-10-08a279bc6b305ae3f5621c260d732eb8958119783d433b775111af9dd25f2fa38c
prev 2d85d5d5c505
7970bytes2K9Sw7rDZA8HEHwnkK…
2026-10-072d85d5d5c50579d88f940ab01bfb02386eeed6dc35b58a098b4b3eff3d29cec8
prev 2d85d5d5c505
7969bytes5WsnL3SwHeXv6Y8Urn…
2026-10-062d85d5d5c50579d88f940ab01bfb02386eeed6dc35b58a098b4b3eff3d29cec8
prev 2d85d5d5c505
7969bytes3oKzHqYDxP5BCDZgMX…
2026-10-052d85d5d5c50579d88f940ab01bfb02386eeed6dc35b58a098b4b3eff3d29cec8
prev c69a3da9cd7a
7969bytes4oBx95kgGrjS89sa2q…
2026-10-04c69a3da9cd7a2de4bb75e90895bbcf8d402b6ef9bd704fdf953a1ed9ff33ecad
prev b5212ebc2db0
7968bytes39UTKHnzq5QVKWzqtG…
2026-10-03b5212ebc2db0b74053112332b74a9735daa8c0fa96e8da99d0a57c6555d4ac28
prev 4d167bf52fba
7967bytes3cPpoW9yJLjYBQjE61…
2026-10-024d167bf52fbae5a6f6b4743c64f62795e3b607f65d51993921fe39c2e7cba1c7
prev 9b94a9958c96
7966bytesTzHhjq9ZAa1S1SSCyk…
2026-10-019b94a9958c969031b592cd6b068bea67da68b8b5ad296a2d356085ef319e9cfb
prev 9b94a9958c96
7965bytesmGBrxBFTWWa2TnmmXJ…
2026-09-309b94a9958c969031b592cd6b068bea67da68b8b5ad296a2d356085ef319e9cfb
prev 9b94a9958c96
7965bytes4KGKFBGNFPa83PcDmm…
2026-09-299b94a9958c969031b592cd6b068bea67da68b8b5ad296a2d356085ef319e9cfb
prev 9b94a9958c96
7965bytes2nV7E2E3UPzSWDRLmj…
2026-09-289b94a9958c969031b592cd6b068bea67da68b8b5ad296a2d356085ef319e9cfb
prev 9b94a9958c96
7965bytes2YPSXBGMaeWZJWUfai…
2026-09-279b94a9958c969031b592cd6b068bea67da68b8b5ad296a2d356085ef319e9cfb
prev 3c0046029e50
7965bytes4QSnXV2NE9GfuCZN7g…
2026-09-263c0046029e50a05e6f93061986200a59dd761e0b3bbe1f092b33f93c29f41c02
prev 4ddd8803f4d9
7963bytes4EUYvCCTnWoJ83XP1Q…
2026-09-254ddd8803f4d91f2600ec86933a4d2027b33a2a8b61a19f2214e8bf3f86c208a4
prev 4ddd8803f4d9
7962bytes4mBMDvUEsG8doJ9rQ2…
2026-09-244ddd8803f4d91f2600ec86933a4d2027b33a2a8b61a19f2214e8bf3f86c208a4
prev 74cb1176ee98
7962bytes4ptxDL12B6eRVywQCs…
2026-09-2374cb1176ee98ae57f83b453590f629808620db8ecad7d7a6e9c890bfd7876869
prev 8958cd6c1efb
7961bytes4BHw36c6NEnnhUHmJ2…
2026-09-228958cd6c1efb655bd7cef3aac82bc0e86bd880a1372ef1670e484ce04b0e0f9a
prev 8958cd6c1efb
7960bytesPBCP1WsTP4Mej7vBVU…
2026-09-218958cd6c1efb655bd7cef3aac82bc0e86bd880a1372ef1670e484ce04b0e0f9a
prev d7245e666890
7960bytes3ULLMvuvMaA8XrakSz…
2026-09-20d7245e66689051a806389a3380d7ab66a224191eb000d116551b7aa0b62563e4
prev 60e14b03415e
7959bytes3S9sGoHUk9UKGHhjh2…
2026-09-1960e14b03415e5bf6f61c2137c0c96dd5419c375698f5b72ca581ea1422d9b256
prev 60e14b03415e
7958bytes2URu4RTGDuVxbL4AhB…

Record changelog

Every restatement of the record, on the record. Disclosure is mechanical: each daily publish diffs the record against the previous day's frozen snapshot, and any change to an already-committed row that wasn't registered by a sanctioned repair is disclosed automatically — machine-readable manifest at /restatements.json.

A restated record with a paper trail beats a flattering one without. That's the product.