BSAHI — every headline number, classified by how it was actually obtained. Produced: 2026-09-17 · Checked by tools/research/integrity_audit.py
| Layer | Definition | What it means for a reader |
|---|---|---|
| Observed | Read from a node, or from a frozen primary capture with a recorded date | Cite as measurement. Grade A/B. |
| Reconstructed | Derived by a stated procedure from anchors (interpolation, era means, attribution) | Cite as procedure, not as a measurement. Grade C/D. |
| Modelled | Assumptions dominate; the output is a scenario, not an observation | Cite as a scenario. Grade C. |
Nothing in this project may be presented as Observed if it is Reconstructed or Modelled. The matrix is the enforcement: if a number appears anywhere without a row here, that is a defect.
| # | Metric | Value / reading (as published) | Layer | Source | Date | Grade |
|---|---|---|---|---|---|---|
| 1 | SCCR (live) | 0.2789 · 139 blocks · 99.28% below 1× · N=32K · T=10yr · spec 2.1.0 | Observed | data/sccr.json ← mempool.space 24h fee endpoint (GH Actions) | 2026-09-16 | B |
| 2 | SCCR daily history | 36 daily readings | Observed | data/sccr_history.json | 2026-08-02 → 2026-09-16 | B |
| 3 | SCCR historical (era reconstruction) | era-level SCCR, 2010-2026 | Reconstructed | data/sccr_historical_series.json (daily aggregates → era legs) | frozen 2026-09 | B/C |
| 4 | Chain size (bytes to verify) | 789.45 GB (2026) | Observed | cumulative frozen avg-block-size (unit MB) | 2026 | B |
| 5 | UTXO / chain state | 0.5 GB (2013) → 11 GB (2025/26), era table | Reconstructed | anchors + interpolation (no continuous source) | — | D |
| 6 | UTXO / chain state (observed) | h671,462 · 72,234,156 UTXOs · 18,633,940 BTC · UTXO DB 4.39 GB | Observed | gettxoutsetinfo from a real Bitcoin Core node (utxo_state_measure.py) | captured 2026-09-17 | A |
| 7 | Mining difficulty | 127,450,789,715,844 | Observed | data/difficulty_series.json (frozen primary) | 2026-09-13 | A |
| 8 | Mempool congestion | 1,498 daily points, 2016-2026 | Observed | data/mempool_congestion_series.json (frozen primary) | 2026 | B* |
| 9 | Per-block samples | 3 blocks/era (2026: 2) | Observed (spot) | data/perblock_validation.json (esplora + blockchain.info) | 2026-09-16 | B (spot-check, not a survey) |
| 10 | Network hashrate | 956 TH/s·10⁶ (≈956 EH/s) | Observed | frozen hash-rate series (unit TH/s) | 2026 | B |
| 11 | Miners' revenue | 41.4M USD/day | Observed | frozen miners-revenue series (unit USD) | 2026 | B |
| 12 | Production cost ratio | reported across $0.03–$0.15/kWh | Modelled (observed legs + assumed price/efficiency) | data/production_cost_ratio.json | 2026-09-17 | C |
| 13 | Electricity price | $0.05/kWh (scenario $0.03–$0.15) | Modelled (assumption) | documented assumption | — | C |
| 14 | ASIC efficiency (network avg) | 25 J/TH (2026), era table | Modelled (estimate) | documented table | — | C |
| 15 | Node census (N) | ≥32,000 (lower bound) | Observed | getnodeaddresses census (data/node_census*.json) | 2026-08-02 | B |
| 16 | Pool attribution | 7/7 pools coherent ≤1.5σ; network-total diff 2.34% | Observed | data/pool_attribution_validation.json | 2026-09-15 | C/B |
| 17 | Mining concentration | HHI/Gini/N_eff per window | Observed | data/mining_concentration.json | 2026-09-15 | B |
| 18 | BIP-110 signaling | lock-in h963,648 (2026-08-23 00:48:47 UTC); snapshot h966,270 | Observed | data/bip110.json (GH Actions) + blockstream.info | 2026-09-09 | A |
| 19 | Fee history / block interval | 95-point intraday series | Observed | data/fee_history.json, data/block_interval.json | 2026-09-17 | B |
| 20 | Verification Cost Index | trend (headline): sync time flat, value-relative cost ~17× cheaper | Modelled | data/verify_cost_index.json | 2026-09-17 | C |
| 21 | VCI chain leg | total bytes to verify | Observed | frozen avg-block-size | 2026 | B |
| 22 | VCI state leg | reconstructed UTXO table | Reconstructed | (falls back to row 5) | — | D |
| 23 | VCI throughput | assumed commodity archive-sync | Modelled | documented table | — | C |
| 24 | Node operator labour | $25/h, labour share | Modelled | documented assumption | — | D |
| 25 | Cost-to-flood leverage | L ≈ 3.0× (dust 0.9×) | Modelled | research/cost-to-flood.md | 2026-08-10 | C |
| 26 | Bandwidth bound | 52.6 GB/yr | Modelled | data/bandwidth_bound.json | 2026-08-04 | C |
| 27 | Pruning externality | download+verify unavoidable | Modelled | research/pruning_externality_analysis.md | 2026-08-10 | C |
tools/research/integrity_audit.py re-checks, on every run:
hashrate_ehs == hashrate_ths/1e6; power TH/s × J/TH = W; GB is decimal 1e9).layer field (ops/health and a few research files); the matrix row is the interim classification.Before publishing any number, find its row. If the layer is Observed, cite it with its date. If it is Reconstructed or Modelled, cite the procedure and the grade — never the level as if it were measured.
data/integrity_audit.json — deterministic, frozen-input instrument; re-runnable offline.