§1 WHAT BAGCHECK MEASURES
"Will my asset make new highs?" conflates questions that must be kept apart. Bagcheck answers two, and refuses the third: reclaim outlook — how deep the drawdown is, what break-even requires, and the historical base rate for ever reclaiming the high — is the headline, drawdown-driven and brutal. Aliveness — whether the project still functions mechanically (development, liquidity, holders, supply, attention) — is the subordinate readout. ATH reclaim is answered only as a base rate, never a point prediction.
Aliveness is kept orthogonal to drawdown: being down 95% is not itself a health input — it selects which base rate applies. Among down-bad assets, the structural score separates the ones that still function from the ones that are rotting. Drawdown caps the displayed band, so an asset down 95% can never show FUNCTIONAL — when the cap bites, both reads are shown.
§2 ARCHETYPES — THE BUCKETS, THE REFUSALS
A factor set has to depend on the asset's kind or it produces category errors: a meme is not supposed to ship code; an L1 lives or dies on usage; a governance token is mostly supply overhang. Each archetype carries a factor-weight profile, rendered below exactly as configured. Classification stays fine (a wrong label is a category error); percentile binning maps thin archetypes onto fatter pools so a bin is signal, not noise.
- manual override (rare; rationale rendered verbatim in the report)
- stablecoin → REFUSED
- meme category tags
- wrapped / bridged → REFUSED
- AI / DePIN · gaming · CEX · infrastructure · RWA category tags
- L1 / chain · DeFi · governance category tags
- heuristics: giant supply + zero dev → meme; active dev, no tag → L1
- no decisive signal → Default (balanced)
§3 THE SIX FACTORS
Most death signals are correlated facets of one underlying thing — volume decay, OI decline, social decline, and address decline are all "attention is leaving" wearing four hats. Bagcheck scores six latent factors and combines the factors, not the raw metrics. The filter throughout: unfakeable, with lead-time — metrics that decay before price capitulates and that a project cannot cheaply manufacture.
A factor we cannot measure honestly is shown as PENDING (relevant, not wired) or SKIPPED (N/A for the type, e.g. dev health for a meme) — never assigned an invented number. A missing factor lowers confidence; it never improves the score.
§4 PEER BINS & FROZEN SNAPSHOTS
Liquidity, supply, conviction, and strength score as decile bins (Bin 1–10) against a frozen peer snapshot — the full top-500 universe, cut by archetype pool, frozen and versioned monthly on the same day the call batch freezes. Thresholds are archetype-relative because $2M/day of volume is healthy for a meme and a sign of abandonment for an L1.
§5 WHAT WE REFUSE TO SCORE
Some assets shouldn't be scored by this engine at all, and saying so is more honest than producing a number. This section is a feature, not an apology.
Bagcheck doesn't diagnose stablecoins. This asset is designed to hold a peg, not to reclaim a high — if it's off-peg the question is reserve backing and redemption, which this engine doesn't assess. We'd rather tell you that than fake a recovery number.
Bagcheck doesn't diagnose wrapped or bridged tokens. This asset tracks an underlying — its price is the underlying's price, and its own volume, supply, and holder stats describe the wrapper, not the asset. Diagnose the underlying instead; a wrapper 'down 90%' is just the underlying down 90% (or a depeg, which is a custody question).
§6 PROVISIONAL MEANS PROVISIONAL
The base-rate table — how often assets this deep reclaim their high — is the most brand-critical number in the product, and it is currently a placeholder, flagged as such in every readout. Shipping fake-precise base rates would be the exact hopium this exists to counter. Universe-relative conviction bins carry the same warning.
The first grading cycle replaces placeholders with measured rates — conditioned on the vital signs, which is the number nobody else will state. Until then every readout says so.
§7 WHAT WE WILL NOT DO
— no confident ATH or price predictions — base rates are distributions, never verdicts.
— no base rate presented as empirical before it is backtested.
— no number assigned to a factor we cannot honestly measure; a missing factor never inflates a score.
— no scoring where the frame doesn’t apply — stablecoins and wrappers are refused, and the refusal is on the record.
— no "stable" labels deep underwater — the structural readout tops out at FUNCTIONAL, is drawdown-capped, and stays subordinate to the reclaim outlook.
— no quiet test changes — the grading rule was pinned before the first batch froze; scoring changes ship with a version and stay on the record.
§8 DATA SOURCES & LIMITS
Market and price structure: CoinGecko. Development: CoinGecko dev stats, corroborated by org-level GitHub push recency (a false zero from one source is never trusted over a positive from the other). Holder structure: HolderScan, canonical-chain-first. Attention and recorded risk events: aixbt. Every readout cites the engine version and peer snapshot that produced it.
Coverage honesty: holder data covers contract tokens on supported chains — native-chain holder structure reads PENDING, not faked. Where a token's contract identity can't be verified against its canonical chain, an identity tripwire refuses the conviction read rather than score the wrong asset. Refusals, pending reads, and low-confidence verdicts are all rendered, never hidden: the gaps are part of the record.