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 · Ripple USD (RLUSD)
- Sequence
- #3
- Score
- 74 → 62 (-12)
- Cluster
- mainnet-beta
- Slot
- 443523803
- Off-chain at
- 2026-08-27T05:07:42.788Z
- Anchored at
- —
- Block time
- —
Independent verification
- 1. Database (off-chain)
- 8u8FcfDsmp2rZPThBLQUFESf7jX6hQmpSoQVTbZQDAxo
- 2. Recomputed (your browser)
- computing…
- 3. On-chain (Solana memo)
- fetching…
Canonical bytes hashed (1621 chars)
{"actor":"judge","decided_at":"2026-08-27T05:07:42.523Z","decision":"review_revise","investigation_id":"b27480f7-c442-4be5-b018-f74d8851d9c2","new_score":62,"page_slug":"ripple-usd-rlusd","prev_score":74,"reason":"The review confirmed most of the page's core facts — issuer structure, the separation of the NYDFS state trust charter from the later federal OCC approval, the distinction between Deloitte's monthly reserve attestations and a full audit, and the legal split between XRP's institutional and public sales — against primary sources. However, the page materially misstates how the SEC litigation ended: it says Ripple 'paid a $50 million settlement,' but court records show a judge rejected that reduced settlement twice, so the original $125 million penalty and a permanent injunction against unregistered institutional XRP sales remained the actual final judgment (claim_findings[16]). Because this error understates a penalty and omits a standing injunction on a site meant to flag risk, it is weighted as a serious single-item defect even though only 3 of 23 checked claims were disputed or unverifiable overall (about 13%, disputed+unverifiable / total). Two smaller issues were also found: a timeline date for a corporate acquisition off by ten days (claim_findings[21]), and one reserve snapshot that could not be independently reproduced, likely because the source page has since rolled the figure forward rather than because it was wrong (claim_findings[8]).","score_delta":-12,"sequence_num":3,"submission_content_hash":null,"submission_id":null,"submission_kind":null,"submission_valence":null,"v":1}