FOUNDATIONS
How Invarians measures blockchain infrastructure state — architecture, measurement method, calibration, and two output primitives.
Blockchain infrastructure is not one system. It is three structurally distinct layers — each with different operating constraints, different failure modes, and different measurement requirements. Invarians measures each layer independently.
→ four regimes (SxDx)
→ regime S1Dx (τ non-discriminant)
→ two states (BS1 / BS2)
Since the Dencun upgrade (March 2024), L2 rollups post batch data to Ethereum via blobs — a separate fee market that does not flow through L1 basefee. An L2 sequencer incident or batch posting gap now produces no economic signature on L1. Fee monitors watching L1 are structurally blind to it. Invarians measures L2 infrastructure state directly — from rollup block data and from L1-anchored batch signals.
For L1 chains, infrastructure state is the product of two independent axes: a structural axis and a demand axis. The separation is critical — structural stress and demand pressure can occur independently, simultaneously, or in opposition. Reading both independently is what makes S2D1 detectable.
rhythm_ratio — normalized departure from calibrated historical cadence.
Threshold S2: rhythm_ratio ≥ chain-specific calibrated value.
Dimensions:
sigma_ratio · size_ratio · tx_ratio
There is no cross-chain normalization. Every threshold is derived from each chain's own multi-year historical distribution. What constitutes an anomaly on Ethereum is calibrated from Ethereum data. What constitutes an anomaly on Solana is calibrated from Solana data.
The combination of the two axes produces four certified regimes. The classification is discrete and unambiguous — each measurement window maps to exactly one regime. Four certified regimes: S1D1 · S1D2 · S2D1 · S2D2.
S2D1 is the regime with the highest diagnostic value. It captures infrastructure events — validator behavior anomalies, timing disruptions, network-layer issues — that produce no fee signature. A fee monitor would report S1D1 during an S2D1 period. This is the core of the two-axis approach: the structural and demand layers must be read independently to detect it.
On L2 rollups, the structural axis (τ) is architecturally constant — the sequencer produces blocks at fixed cadence. Only the demand axis varies. L2 rollups are currently classified as S1D1 or S1D2. Full regime coverage (S2D1 · S2D2) requires alternative structural instruments under development (Phase D — April 2026).
The bridge layer operates on different time scales and with different signal characteristics from L1 and L2. Its state is binary and fast-moving — it reflects the current operational condition of the cross-chain transfer path, not a structural regime.
backlog: within baseline
backlog: above threshold
L1/L2 regimes (SxDx) reflect structural conditions — inertial, slow-moving, derived from multi-year calibration. Bridge state (BS1/BS2) reflects operational throughput — fast-moving, binary, measured in seconds to minutes. The distinction is architectural. Mixing them would distort both signals.
Bridge signal collection (Phase 2A) active since March 2026. Threshold calibration and full BS1/BS2 classification (Phase 2C) — Q3 2026. Current default: BS1 nominal.
Beyond discrete regime classification, the instrument exposes a continuous divergence signal. This captures cross-layer dynamics that the four-regime classification does not encode — direction and magnitude of infrastructure movement between layers.
Infrastructure layers can move in the same direction, in opposite directions, or independently. The divergence scalar encodes this relationship as a single continuous value — available in the API response as divergence_index.
Regime classification remains the primary output. Divergence provides supplementary resolution for systems that require it — trend detection, early signal, or continuous monitoring.
Every threshold is derived empirically. No assumption is introduced by design.
/verify endpoint.| Chain | τ structural | π demand | Regime coverage |
|---|---|---|---|
| Ethereum | Calibrated — backtest 2020–2024 | Calibrated — FPR 0.99% | S1D1 · S1D2 · S2D1 · S2D2 |
| Polygon | Calibrated — backtest 2020–2023 | Calibrated — FPR 1.20% | S1D1 · S1D2 · S2D1 · S2D2 |
| Solana | Calibrated — partial (τ FPR 1.77%) | Pending — tx_count unavailable in dataset | S1D1 · S2D1 (S1D2 · S2D2 pending) |
| Avalanche | Empirical estimate — no BigQuery backtest | Empirical estimate — confidence LOW | Operational — confidence LOW |
| L2 Rollups — distinct measurement framework | |||
| Base | τ non-discriminant (sequencer constant cadence) | 7-day calibration March 2026 — σ threshold 1.10 | S1D1 · S1D2 (S2D1 · S2D2 pending Phase D) |
| Optimism | τ non-discriminant (sequencer constant cadence) | 7-day calibration March 2026 — σ threshold 1.06 | S1D1 · S1D2 (S2D1 · S2D2 pending Phase D) |
| Arbitrum | τ compressed (P99/P50 = 1.086) | π broken — gasLimit ≈ 2⁵⁰ (gas_complexity_ratio Phase B) | Recalibration pending |
Validated on real incidents. Not synthetic data. Invarians has been calibrated and backtested against documented historical events — each one verified against independent sources.
ETF speculation congestion — +12.2h advance over fee monitors
Invarians detected structural demand elevation 12.2 hours before gas P80 confirmed it. L1 structural regime (S1D2) was measurable from finalized block data alone — no mempool, no prediction.
Sequencer incident — 37-minute batch posting gap invisible on L1
Arbitrum batch posting stopped from 16:47 to 17:24 UTC. During the entire incident, L1 ETH showed S1D1 — structurally normal. Fee monitors: no signal. Invarians: BS2 bridge state, L2 regime S1D2 (×1649 block ratio).
The measurement chain — architecture, structure, demand, calibration — produces two distinct outputs. Not one.
/verify endpoint.
This is what the infrastructure is at a given moment. A cryptographic proof the agent can store in its decision log.
Not prescriptive. The agent reads the pattern and applies its own policy.
Invarians certifies what the infrastructure is. It does not prescribe what the agent should do. Execution policy — thresholds, risk tolerance, fallback logic — belongs to the agent. The two primitives provide the factual basis for that policy. The decision does not.
/verify.