TypeScript 61.9%
HTML 37.2%
SQL 0.7%
1# ADR 0002 — Data honesty rules enforced in code23Date: 2026-09-07 · Status: accepted45- No fabricated data, ever (§192). Seeds contain taxonomy and index *definitions* only. Sales, listings,6 prices, populations and market caps come from connectors with provenance (`source_url`, `raw_record_id`,7 `parser_version`, `connector_version`).8- Price-guide values (Scryfall/TCG APIs, guide pages) are stored as `price_observations`, shown as9 "guide" numbers and weighted below transactions in RIV. They never populate `sales`.10- A valuation is published only with `sample_size`, `confidence`, `low/high` and `computed_at`. Below11 the evidence threshold the UI renders "Data unavailable" (`<Unavailable/>`).12- Indices publish nothing until `minConstituents` priced constituents exist; coverage is stored per day.13- Outliers are flagged (`status='flagged'|'excluded'`, `flags[]`, `audit_log`) — never deleted.14- Crawl time ≠ sale time: connectors must parse the source's own date; the fixture suite checks it.15- Historical FX is applied at the sale date; the display currency is a view-time conversion.16