Verify a decision
Every moderation decision on AVOID.NET is anchored to the Solana blockchain. You don't have to trust us — you can verify cryptographically that we committed to a verdict at a specific moment and have not rewritten it.
How verification works
- We commit. When a moderator accepts/rejects a submission, we serialize the decision into deterministic UTF-8 bytes (
payload_canonical_string), hash it with SHA-256, encode the digest as base58, and write it to Solana inside an SPL Memo v2 transaction. - We store the bytes. The exact bytes we hashed are stored alongside the decision in our database. Anyone can read them and recompute the hash in any language.
- You compare three values. Database hash, your independently-recomputed hash, and the hash inside the on-chain memo. If all three match, the decision is authentic and timestamped.
The on-chain memo format is
AVOID.NET|v1|h:<b58-sha256>|d:<id>|t:<iso>Find a signature on any investigation page's decision log, or run python -m src.verify_decision --signature <sig> for a CLI check.
Decision
review_revise · DuelBits
- Sequence
- #3
- Score
- 32 → 20 (-12)
- Cluster
- mainnet-beta
- Slot
- 443520484
- Off-chain at
- 2026-08-26T11:19:56.528Z
- Anchored at
- —
- Block time
- —
Independent verification
- 1. Database (off-chain)
- DTZz2hNRzgckEToJbKtEXK1wiRVmYnnxd5GUYFwTDUyf
- 2. Recomputed (your browser)
- computing…
- 3. On-chain (Solana memo)
- fetching…
Canonical bytes hashed (1901 chars)
{"actor":"judge","decided_at":"2026-08-26T11:19:56.310Z","decision":"review_revise","investigation_id":"6eb30c9d-a37f-4690-ad1c-c7b0998cad2e","new_score":20,"page_slug":"duelbits","prev_score":32,"reason":"Verified disputed_pct is (disputed + unverifiable) / total = 1/13 = 7.7%, which on its own falls in the approve range. However, the review flagged a high-priority coverage gap — all five content sections on this page have no heading or body text at all, one of them still carrying a 'critical' severity label with nothing behind it — and the spec treats a high-priority coverage gap as grounds to move to review_revise even when the dispute rate is low. Within that band, the single disputed claim is serious in kind, not just count: the timeline says DuelBits acknowledged the 2024 hack and announced new security measures, but every source the page itself cites for that incident, plus every source the reviewer checked, states DuelBits made no public statement at all (claim_findings[10]). Three additional findings were downgraded to partially_supported rather than confirmed: the page names a 'Curaçao Gaming Authority' that did not exist at the time of DuelBits' 2020 launch, when its own cited source shows an old-regime license number instead (claim_findings[7]); the page states the hack's cause was 'confirmed'/'detected' as a private-key compromise where CertiK's own alert calls it only 'possible' (claim_findings[9]); and the Twitch ban announcement date is off by one day (claim_findings[8]). None of this rises to a 30%+ dispute rate, so the page is revised rather than denied, but the fabricated-sounding corporate-response claim and the empty, severity-rated sections both need correction before the page should be considered settled.","score_delta":-12,"sequence_num":3,"submission_content_hash":null,"submission_id":null,"submission_kind":null,"submission_valence":null,"v":1}