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.

Sequence
#3
Score
5050 (0)
Cluster
mainnet-beta
Slot
443517783
Off-chain at
2026-08-25T22:35:40.598Z
Anchored at
Block time

Independent verification

1. Database (off-chain)
51no5L5Y86Uf427DgJfERLfc7v6s6gWpHoNb7tu5zX7S
2. Recomputed (your browser)
computing…
3. On-chain (Solana memo)
fetching…
Canonical bytes hashed (2115 chars)
{"actor":"judge","decided_at":"2026-08-25T22:35:40.191Z","decision":"review_approve","investigation_id":"af4b83b2-f0cf-4a10-835e-9210b2b08166","new_score":50,"page_slug":"0xdf8c3a7ffbdc144f462687120e4ae4c4e5e55abe","prev_score":50,"reason":"The reviewer's claim_findings array contains 12 entries (the review's own summary block undercounts by one, but the array itself is complete): 10 confirmed, 1 partially_supported, 1 unverifiable, 0 disputed. Per the disputed_pct formula (disputed + unverifiable) / total, that is 1/12, about 8.3%, which falls in the approve band regardless of whether the summary's stated total of 11 or the array's actual total of 12 is used. Every core factual claim -- zero balance, zero transaction count, EOA status, no OFAC match, no ChainAbuse reports, no SEC/DOJ hits -- was independently re-verified by the reviewer via direct RPC calls, the live OFAC list, and SEC EDGAR full-text search, and all held (claim_findings[0], [2], [4], [6], [7]). Most importantly, the page's attribution section was checked specifically for false or premature attribution to a named party, and none exists: claim_findings[8] confirms the page correctly states no named exchange, protocol, fund, or individual is linked to this address, and independent search corroborated that no such attribution exists anywhere publicly. That is the single highest-stakes risk category for a bare-address page, and it is clean. The two non-confirmed items are minor and non-substantive: claim_findings[3] flags an approximate '33+ chains' figure versus sources describing '30+', a low-materiality supporting detail; claim_findings[9] on the absence of an ENS name is unverifiable because the reviewer's lookup tool returned an inconclusive empty response, which reads as a limitation of the review's tooling rather than a defect in the page's claim. No high-priority coverage gaps were reported. Given all this, the page holds up and does not require revision or delisting.","score_delta":0,"sequence_num":3,"submission_content_hash":null,"submission_id":null,"submission_kind":null,"submission_valence":null,"v":1}