Skip to main content
AVOID.NET
← avoid.net

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

  1. 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.
  2. 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.
  3. 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 · ResupplyFi
View on Solana ↗
Sequence
#3
Score
3227 (-5)
Cluster
mainnet-beta
Slot
443521253
Off-chain at
2026-08-26T14:08:45.518Z
Anchored at
Block time

Independent verification

1. Database (off-chain)
3iLW5yDvnN5yhzC8hfqGs6A9RrGwCXTbXPycnwQ6WXyN
2. Recomputed (your browser)
computing…
3. On-chain (Solana memo)
fetching…
Canonical bytes hashed (1871 chars)
{"actor":"judge","decided_at":"2026-08-26T14:08:44.977Z","decision":"review_revise","investigation_id":"4bb58024-57a7-40e3-a513-fb70b841b377","new_score":27,"page_slug":"resupplyfi","prev_score":32,"reason":"The page's core narrative -- the exploit mechanism, loss figures, and recovery/bad-debt repayment -- checks out in unusual detail and reconciles arithmetically against its own citations (claim_findings[29], [30], [31]), and only 3 of 49 claims are disputed or unverifiable (6.1%), which sits well inside the approve range on claim accuracy alone. The page is nonetheless being sent back for revision because of a specific, high-priority coverage gap: it omits a March 2026 Singapore court order in a defamation/harassment dispute involving Wang Yishi, a person the page already quotes by name criticizing the recovery plan (coverage_gaps, high priority) -- an omission about someone already featured on the page, not merely a missing topic area. Secondary issues support a light rather than zero penalty: a timeline entry misdates a Tornado Cash laundering tranche by roughly three months (claim_findings[46]), two timeline dates show invented day-level precision not supported by their own cited sources (claim_findings[45], [47]), the summary states a $4,000 flash-loan figure from a low-credibility outlet without reconciling a conflicting $200,000 figure from a higher-credibility source (claim_findings[10]), and the citation list has entries cited in the body but missing from the source list and vice versa, including one case where a quote's actual origin outlet is absent from its section's own citation list. None of these touch the page's central factual claims about the exploit or the loss/recovery amounts.","score_delta":-5,"sequence_num":3,"submission_content_hash":null,"submission_id":null,"submission_kind":null,"submission_valence":null,"v":1}