{
  "schema_version": "1.0.0",
  "project_id": "historical-exchange-index",
  "site_name": "Historical Exchange Index",
  "registry_family": "badjoke-lab-ledger-series",
  "registry_type": "historical_crypto_exchange_registry",
  "canonical_origin": "https://hei.badjoke-lab.com",
  "release_channel": "production",
  "build": {
    "commit": "e60a290f1ea07ee8fe0b5cbe890bf0d992df0718",
    "branch": "main",
    "generated_at": "2026-08-31T15:33:14.732Z",
    "verification_marker": "hei_machine_readable_layer_v1"
  },
  "data": {
    "data_schema_version": "hei_entity_event_evidence_v1",
    "generated_at": "2026-08-31T15:33:14.732Z",
    "records_last_reviewed_at": "2026-08-30",
    "canonical_only": true,
    "record_counts": {
      "primary_records": 1068,
      "events": 1097,
      "evidence": 4023
    },
    "record_count_breakdown": {
      "exchanges": 1068,
      "active_side": 837,
      "dead_side": 231,
      "status": {
        "dead": 190,
        "active": 703,
        "limited": 73,
        "inactive": 61,
        "acquired": 15,
        "rebranded": 25,
        "merged": 1
      },
      "type": {
        "cex": 541,
        "dex": 496,
        "hybrid": 31
      }
    }
  },
  "routes": {
    "home": "/",
    "dead": "/dead/",
    "active": "/active/",
    "exchange_detail": "/exchange/{slug}/",
    "explorer": "/explore/",
    "compare": "/compare/",
    "stats": "/stats/",
    "quality": "/quality/",
    "updates": "/updates/",
    "incidents": "/incidents/",
    "monthly": "/monthly/",
    "methodology": "/methodology/",
    "about": "/about/",
    "donate": "/donate/"
  },
  "public_files": {
    "version": "/version.json",
    "manifest": "/data/manifest.json",
    "entities": "/data/entities.json",
    "events": "/data/events.json",
    "evidence": "/data/evidence.json",
    "updates_json_feed": "/feeds/updates.json",
    "updates_rss_feed": "/feeds/updates.xml",
    "llms": "/llms.txt",
    "ai": "/ai.txt"
  },
  "record_level": {
    "index": "/data/exchanges/index.json",
    "record_url_template": "/data/exchanges/{slug}.json",
    "record_count": 1068,
    "canonical_only": true
  },
  "stats": {
    "snapshot": "/stats.json",
    "history": "/stats-history.json",
    "canonical_only": true,
    "source": "reviewed_entity_event_evidence_aggregation"
  }
}
