Wall of ShameSubmit

Reference

How scoring works

The formula is published because an unexplained number attached to an accusation is just an accusation.

Per receipt

weight = severity × credibility × evidence

  • severity — 1 → 1.0, 2 → 2.0, 3 → 3.5
  • credibility — credible 1.0, unverified 0.45, contested 0.20, debunked 0.0
  • evidence — 0.6 base, +0.2 on-chain reference, +0.2 media, +0.15 a verified transaction, capped at 1.15

A receipt is worth what its evidence supports. Receipts are not voted on — accounts are.

Per account

rating = (bad actor − disagree) × 0.3

Anyone signed in can rate an account without filing anything. One vote each, changeable, and you cannot rate yourself. Ten people agreeing an account is a bad actor is worth about one severe, fully-evidenced receipt — evidence counts for more per unit, but a crowd that will not write receipts can still move a score.

The score

shame_score = round(100 × (1 − e^(−max(0, evidence + rating) / 12)))

Bounded, saturating, and unfarmable. Diminishing returns are the correct shape for reputational damage — the first documented rug tells you far more than the twentieth.

Calibration

These are the numbers the curve was tuned against.

CaseScore
One severe, credible, fully-evidenced receipt≈29
Five of those≈81
Ten≈96
One unverified minor claim, nothing attached≈2
Ten people rating an account a bad actor≈22

Bands

The band changes how a score is drawn, and that is the whole point: drama is a property of the data, not of the row template. A wall of LOW profiles renders almost silent.

BandRange
TERMINAL85 – 100
SEVERE65 – 84
HEAVY40 – 64
FLAGGED20 – 39
LOW0 – 19

No time decay

Deliberate. A rug from two years ago still happened, and a score that quietly forgets is a score that rewards waiting. Recency is surfaced separately as “last documented” so you can tell an active pattern from a historical one.

Every profile page shows its own ledger: each receipt, its multipliers, its weight, and the arithmetic that turns the sum into the number. What this is.