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_approve · Coinsbuy Exchange — August 2026 Hot Wallet Drain
- Sequence
- #3
- Score
- 30 → 30 (0)
- Cluster
- mainnet-beta
- Slot
- 443561446
- Off-chain at
- 2026-09-02T00:37:41.186Z
- Anchored at
- —
- Block time
- —
Independent verification
- 1. Database (off-chain)
- 7GZ3HueYbcCbrh6LoKLQXzKWppNc3tEVafoqDgBru3hq
- 2. Recomputed (your browser)
- computing…
- 3. On-chain (Solana memo)
- fetching…
Canonical bytes hashed (1310 chars)
{"actor":"judge","artifact_identity":"8d107fca2fd519e8272e9247160009d2","band_override":null,"decided_at":"2026-09-02T00:37:40.915Z","decision":"review_approve","delist_requested":false,"disputed_pct":0.05,"investigation_id":"6f832839-464e-4a68-aa40-a4a3a3db2594","new_score":30,"page_slug":"coinsbuy-exchange-august-2026-hot-wallet-drain","prev_score":30,"reason":"Of 20 factual claims reviewed, 16 were fully confirmed by independent outlets, 2 were unverifiable absence-of-evidence claims that the page itself already hedges appropriately, and 2 showed only minor attribution imprecision rather than factual error — claim_findings[4] ('among the first to characterize') and claim_findings[9] (GoPlus vs. BlockWatchdog attribution of an attack-vector assessment). No claim was disputed, no citation showed link rot or staleness, and the reviewer's overall disputed_pct sits at the very bottom of the approval range. The identified coverage gaps (on-chain transaction hashes, Coinsbuy's prior incident history, a primary-source statement) are all medium or low priority and point to opportunities to expand the page, not reasons to question what is already published.","score_delta":0,"sequence_num":3,"submission_content_hash":null,"submission_id":null,"submission_kind":null,"submission_valence":null,"v":1}