SPB Git forge

spb/rareindex

Public
54commits 1branches 0releases
7.1 MBsize
maindefault branch
10 days agolast push
TypeScript 61.9% HTML 37.2% SQL 0.7%
1.1 KB

# ADR 0002 — Data honesty rules enforced in code

Date: 2026-09-07 · Status: accepted

  • No fabricated data, ever (§192). Seeds contain taxonomy and index definitions only. Sales, listings, prices, populations and market caps come from connectors with provenance (source_url, raw_record_id, parser_version, connector_version).
  • Price-guide values (Scryfall/TCG APIs, guide pages) are stored as price_observations, shown as "guide" numbers and weighted below transactions in RIV. They never populate sales.
  • A valuation is published only with sample_size, confidence, low/high and computed_at. Below the evidence threshold the UI renders "Data unavailable" (<Unavailable/>).
  • Indices publish nothing until minConstituents priced constituents exist; coverage is stored per day.
  • Outliers are flagged (status='flagged'|'excluded', flags[], audit_log) — never deleted.
  • Crawl time ≠ sale time: connectors must parse the source's own date; the fixture suite checks it.
  • Historical FX is applied at the sale date; the display currency is a view-time conversion.