Releases: Arkova-io/Chaindump
Release list
v1.0.0 — Honest scoring: say only what we can back up
Chaindump publishes claims about real projects. This release is about not publishing ones we can't back up.
Every item below was found by review, verified against live data, and is deployed on https://chaindump.xyz. Tests went 107 → 314.
The board was ranked on broken inputs
Chains are ranked on a composite of DEX volume, TVL and fees. Two of those three were read from DefiLlama's aggregate feed, which is wrong in both directions:
- It over-counts.
/overview/dexsspans 33 categories — derivatives, prediction markets, NFT marketplaces, Telegram bots, even Physical TCG — and we summed all of it as "DEX volume". Injective was overstated 16× (one derivatives protocol was 91% of its figure)./overview/feesspans 86 categories: Provenance's fees were 145× over, Canton 66,253× — publishing a 309,007% fee yield. - It silently reads zero. The TVL feed and the DEX/fee feeds spell chains differently ("Hyperliquid L1" vs "hyperliquid"). 302 of 458 chains had no match and scored a measured zero on a 50%-weight axis.
Hyperliquid L1 does $265M/day of DEX volume and $3.8M/day in fees. We recorded $0 for both. It, Avalanche and OP Mainnet were absent from our top 50 entirely.
Fixed by fetching each chain's authoritative per-chain figures and rescoring on them. Simulated against live feeds before deploying. Every board row now carries volumeSource/feeSource, and the payload discloses coverage.
We called a collapsed chain "thriving"
Berachain: $49M TVL against a $3.31B peak — down 98.5%. BERA is -98.7% from an ATH set on its own launch day; its market cap exceeds the TVL it secures. By our own DEAD_DRAWDOWN_PCT = 90 rule that chain is dead — the classifier returned thriving for any board chain before decline was ever evaluated.
Both readings are true, so neither label is honest. New zombie tier: "top 50 · collapsed from peak" — genuinely active today, and has still lost nearly everything. 15 of 50 board chains are in this state.
The same rule failed the other way too: a stale badge could have called Linea (rank ~50, -98.4%) "collapsed" while it sat on the live board.
248 rows of cited research had zero readers
chain_facts held researched, cited analysis — Osmosis and Scroll carry full 10-dimension dossiers — and nothing in the codebase read the table. Every dossier the desk ever wrote was invisible.
Berachain's profile now renders the desk view with 9 resolving citations, evidence, bear/bull (with a disclaimer every time), and official links. Funding rounds render as sentences instead of raw JSON blobs ("$200M — strategic round — led by a16z crypto (2022-03-15)"), across all three shapes the desk writes.
Claims that were simply false
- An alias denied a chain's rank.
/chain/Binancepublished "Outside the top-50 activity board" for BSC, rank #4;/chain/Ethereum L1denied the rank of the #1 chain — while/chain/BSCsaid "Rank #4". Two indexed URLs, opposite claims, same chain. - "No market data is available for this chain" was a false universal negative — Polkadot has a multi-billion-dollar market cap. Klaytn proved it: it's Kaia renamed, so one URL said "no data" while the other published its TVL.
- "$0" where the truth was "we don't know" — 42 tail chains, including XRPL, which trades $2.6M/day. Now "—".
- 12 researched chains 404'd on their own profile. Deliberately not fixed with an alias table — Manta Pacific → "Manta" or "Manta Atlantic"? A wrong guess puts another chain's metrics on a researched page, which is worse than a 404. They resolve on
norm(), or serve the research with metrics honestly absent. - Fee-per-user read "$0" where users pay $0.0035 (Celo). Fee yield read 0 where it's 0.0023% (Provenance).
- The same chain listed twice — Binance at #4 and BSC at #37, DefiLlama double-lists both under chainId 56.
We nearly branded a bank
A new rule flags TVL that can't be independently verified — built for Anubis ($200M, 100% in one unaudited Uniswap-V2 fork, arrived fully formed at $182M on day one, in contracts merely named DAI/USDT).
Review found it fires on 59 chains, not the 9 claimed, and that its premise — "no bridge, so value can't be corroborated" — is false for RWA chains, where assets are originated on-chain. Provenance — $1.5B, operated by Figure, a real US financial institution — sat 2.07 points from being branded automatically on a public, indexable page. Anything above $500M now waits for a human. The threshold that decides it was untested: mutating it 99→50 failed zero tests.
The verdict now has exactly one source — the computed rule, which retracts itself. The desk's hand-written prose had no expiry, so when the rule flips, a stale accusation would have survived it.
Honesty surfaces
stale/staleReason by age (the old flag only fired in a case that never happened), degraded when enrichment collapses, per-field provenance, coverage, null-not-zero everywhere, and caveats that ride on social cards and JSON-LD — an in-page warning can't travel.
Also
Agent API / x402 tab hidden (routes still serve). All 8 sidebar views share one layout. Two P0 XSS holes closed (esc() without safeUrl() passes javascript: straight through). Every chain now carries tags — Robinhood Chain reads "up and coming" at 16 days old.
What this release does NOT contain
- 300 dead/dying/stuck profiles. We have 80.
- 50 explained board chains. ~27 have a desk synthesis.
- A full investor map. 45 of 131 chains.
- 7/30/90-day unique wallets. Not obtainable from any free source, and daily uniques cannot be summed into a 90-day unique. Blocked, not skipped.
- CodeRabbit review is offline — prepaid credits exhausted.
The pattern worth naming
Most of these bugs were introduced the same day, by me, and my tests passed the whole time. Tautological assertions (expect(x).toContain(x)), a warning wired to a branch nothing reads, code reading database fields that exist in zero of 130 rows, and a mutation harness that reported three no-op mutations as green. The /code-review, /debug, /tla-precheck, /simplify and /tech-debt gates caught every one — including cases where a fix opened two new holes.
🤖 Generated with Claude Code