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 · Resupply
- Sequence
- #3
- Score
- 32 → 27 (-5)
- Cluster
- mainnet-beta
- Slot
- 462182883
- Off-chain at
- 2026-10-27T19:06:19.718Z
- Anchored at
- 2026-10-27T19:06:37.000Z
- Block time
- 2026-10-27T19:06:37.000Z
Independent verification
- 1. Database (off-chain)
- BrwY92XK8EddixdPW8hpbc71ZmUPanaFtghZX3EWU6Fq
- 2. Recomputed (your browser)
- computing…
- 3. On-chain (Solana memo)
- fetching…
Canonical bytes hashed (2006 chars)
{"actor":"judge","artifact_identity":"f2e33233413f2e6d4298f4af63575825","band_override":null,"blocked_count":1,"decided_at":"2026-10-27T19:06:19.446Z","decision":"review_revise","delist_requested":false,"disputed_pct":0,"investigation_id":"64e2472a-e552-4647-93d9-1fca1269192c","judge_def_hash":"8800307026131ea9d5da939d32b9a1f1884b2b84a5de33c8e87931d36f38d0f8","new_score":27,"page_slug":"resupply","prev_score":32,"reason":"The core narrative holds: the June 2025 exploit, the $9.3-9.8 million loss range, the audit-scope dispute, the 6 million reUSD burn and the August 2025 repayment were all supported (claim_findings[0], [5], [3], [2]). The claim-level dispute rate is 0%, but a third-party profile reports a possible further attack in June 2026 that the page does not mention (omission_findings[0], coverage_gaps[0] high priority), and it could not be corroborated either way. The page also contains leftover wording from merged drafts ('one page ... the other') and a compressed Yearn loan sequence (claim_findings[1], [2]). A small penalty and a minor-issues banner apply until the 2026 status is checked and the wording is fixed.","reviewer_def_hash":"bc11388ce4bc4deea1b064fea362663ae06e3f4f687f99604769044d6ffba770","score_delta":-5,"scored_claims":6,"sequence_num":3,"severity_override":{"applied":true,"band":"minor","from_band":"approve","reason":"The claim percentage is 0% (6 countable findings, none disputed or unverifiable; the one source_blocked finding is excluded), which would normally approve. However the review reports a material omission (a possible second attack in June 2026, single-source and uncorroborated) and a high-priority coverage gap on current protocol status. Neither is resolved, so the page cannot be approved as complete. Escalated only to the minor band because the second incident is unconfirmed and the reviewer found no contradiction with the page."},"submission_content_hash":null,"submission_id":null,"submission_kind":null,"submission_valence":null,"v":1}