SCCR sensitivity, confidence intervals, and a stress test

BSAHI — SCCR hardening (P2) Produced: 2026-09-17 · Instrument: tools/research/sccr_sensitivity.py

Headline

The current reading is SCCR 0.2883 (2026-09-17, 140 blocks, N=32,000, T=10, C=$925). Across the assumption grid the index spans 0.028 – 3.413 (median 0.288), and stays below 1.0 in 22 of 27 combinations (81.5%) — it crosses only at the corner most favourable to coverage (high N, long T, high C).

The node count N dominates the uncertainty (10.0× across the tested range), so the honest statement is "SCCR is below 1× across essentially all plausible assumptions, dominated by uncertainty in N".

Why the sensitivity is exact, not simulated

The SCCR is analytic in its assumptions:

R_blocks = 365.25 × 24 × 6               (blocks/year)
L_net    = N × T × C / R_blocks           (USD/block)
SCCR     = fee_USD_per_block / L_net

So SCCR is inverse-linear in N, T and C, and linear in the fee. The bands are exact for the stated ranges; no Monte-Carlo approximation is needed for the grid. (A bootstrap is used only for the distribution CI below, where it is the right tool.)

1. Assumption grid (N × T × C)

N (nodes)T (yr)C (USD)L_net (USD/block)SCCRvs 1×
10,0005$5004753.413above
10,0005$9258791.845above
10,0005$15001,4261.138above
10,00010$5009511.707above
10,00010$9251,7590.922below
10,00010$15002,8520.569below
10,00020$5001,9010.853below
10,00020$9253,5170.461below
10,00020$15005,7040.284below
32,0005$5001,5211.067above
32,0005$9252,8140.577below
32,0005$15004,5630.355below
32,00010$5003,0420.533below
32,00010$9255,6280.288below
32,00010$15009,1260.178below
32,00020$5006,0840.267below
32,00020$92511,2560.144below
32,00020$150018,2520.089below
100,0005$5004,7530.341below
100,0005$9258,7930.184below
100,0005$150014,2600.114below
100,00010$5009,5060.171below
100,00010$92517,5870.092below
100,00010$150028,5190.057below
100,00020$50019,0130.085below
100,00020$92535,1740.046below
100,00020$150057,0390.028below

2. Distribution and confidence interval

From the frozen reproduction capture — 155 real blocks (not a model):

statisticvalue
mean0.2406
median0.1933
IQR0.1158 – 0.2954
P5–P950.0687 – 0.5831
min–max0.0490 – 1.0757
bootstrap 95% CI for the mean0.2131 – 0.2707

legitimate CI for the mean of a real 155-block sample; NOT a claim about the population of all blocks. (bootstrap n=10000, seed 20260917).

3. Stress test — which assumption dominates

assumptionrange testedSCCR at lowSCCR at highspread
N10,000–100,0000.9220.09210.0×
T5–200.5770.1444.0×
C500–1,5000.5330.1783.0×

Verdict: SCCR is below 1.0 in 22/27 combinations; it crosses only at the most favourable-for-coverage corner (high N, long T, high C).

Reproduction (copy-paste)

# the full sensitivity + CI + stress test, deterministic
python3 tools/research/sccr_sensitivity.py
# the per-block reproduction that feeds the distribution (JS = Python = C)
bash research/reproduce/cross_check.sh

The script reads data/sccr.json (the dated reading) and the frozen kit output, so both the grid and the CI are reproducible from the repository alone.

What this does and does not claim

Data source: data/sccr_sensitivity.json — deterministic, frozen-input instrument; re-runnable offline.

← All research · ← Back to Learn