Invarians
← Blog
14 min read

What is nominal is not fixed: continuously calibrated context for AI agents on cross-chain flows

Continuously calibrated nominal windows for AI agents on cross-chain flows

Why nominal is not a number

Most automated systems acting on blockchain infrastructure rely on thresholds. A bot that bridges value when the gas price drops below X. A vault that rebalances when slippage exceeds Y. An agent that defers execution when the sequencer queue depth crosses Z.

Each of these thresholds embeds the same assumption: that the underlying distribution they reference is stable. That the chain behaves today the way it behaved yesterday and will behave tomorrow. That the "normal" against which the threshold makes sense is a fixed reference point.

This assumption is structurally wrong.

Ethereum post-Dencun (March 2024) is not the same chain as Ethereum pre-Dencun. EIP-4844 introduced blob space, redirected L2 batch posting, and reshaped the basefee distribution by an order of magnitude. The threshold a system used in February 2024 to decide "the chain is busy" was meaningless by April 2024.

The same is true for every chain. Solana post-Firedancer rollout will not match Solana pre-Firedancer. Polygon PoS post-zkEVM migration is not Polygon PoS as it stood in 2022. Arbitrum after Stylus, Base after Superchain integration, Optimism after each fault-proof window adjustment: each of these events shifts the structural baseline by which the chain operates.

And on top of these protocol-level shifts, a slower, more diffuse force is reshaping every chain at once. The rise of AI agent activity, intent solvers, MEV searchers, keeper networks, AA bundlers, RWA settlement bots, is changing demand patterns, transaction profiles, and bridge cadence in ways that were not predicted by the chain designs. The infrastructure is being deformed by the load it now carries.

The consequence is direct: every system that automates decisions on these chains, with hardcoded thresholds, is drifting silently. Their references no longer match the chains they reference. They will fire false positives when the chain is in fact normal, and false negatives when the chain is in fact stressed.

The nominal is not a number. It is a distribution. And the distribution moves.

This article is about what it takes to measure the moving distribution on a continuous basis, why this measurement matters specifically for AI agents acting on RWA and institutional flows, and what Invarians provides as a building block for that purpose.

Mapping the cross-chain ecosystem

Before discussing the measurement, the picture of the actual ecosystem needs to be set. Different chains, different layers, and different bridges all evolve at different rates and according to different structural drivers. Treating them uniformly produces wrong calibration on every one of them.

A working categorization, layer by layer:

L1 EVM with rollup ecosystem. Ethereum. The L1 nominal is now intricately coupled to L2 settlement activity. Block cadence, basefee distribution, blob space utilization all reflect the joint behavior of L1 native demand and L2 batch posting. Post-Dencun, this coupling is the defining feature of Ethereum's structural rhythm.

L1 native without rollup support. Solana, Polygon PoS, Avalanche C-Chain. Each of these is a settlement layer in itself, with its own consensus rhythm and its own demand pressure. Solana's slot-based production is structurally different from Ethereum's block-based production. Polygon PoS commits checkpoints to Ethereum but operates its own block rhythm independently. Avalanche has subnets but the C-Chain itself behaves as a standalone L1 for execution purposes. The nominal of these chains drifts according to their own evolution, not in lockstep with Ethereum.

L2 rollups (optimistic). Arbitrum, Base, Optimism. Each rollup has two coupled rhythms: its sequencer producing L2 blocks at high frequency (Arbitrum at 250ms, Base and Optimism at 2s), and its batch posting component publishing transaction data to L1 Ethereum at lower frequency. Both rhythms can drift independently. The sequencer can degrade without the batch posting changing. The batch posting can stall without the sequencer slowing. A rollup's nominal must therefore track both layers separately.

Native L2 to L1 bridges. Arbitrum's SequencerInbox, Base's BatchInbox, Optimism's DisputeGame. These are the structural connections through which a rollup's transaction data reaches finality on Ethereum. Their cadence is observable directly: how often does a batch get posted, what is the gap between consecutive postings, what is the latency between L2 block production and L1 batch confirmation.

A rollup self-reports its sequencer status. Invarians observes the finalization independently. Until L2 batch posting reaches L1, the rollup state is not finalized, regardless of what the rollup itself reports about its uptime.

Cross-chain message bridges (CCIP, CCTP). Chainlink CCIP carries arbitrary messages between chains, with Risk Management Network (RMN) verification. Circle CCTP carries USDC across chains, with Iris attestation. Both layers have their own structural cadences: time between commit and execute on a CCIP lane, attestation latency from Iris on a CCTP route. These cadences are independent of the underlying chain rhythms and add a third layer of structural drift to track. They are detailed further in the section on "Why this matters" below.

Layer-agnostic abstractions. LayerZero, deBridge, Wormhole, Across, Stargate. These are message-passing or solver-based protocols that abstract the underlying bridge mechanism behind a unified API. They typically do not expose their structural cadence to outside observers in the same way native bridges do. From an observation standpoint, they are surface layers, not measurement layers. Calibrating their nominal from outside is harder and at this stage Invarians does not do it. The structural observation work focuses on the layers below: native bridges, CCIP, CCTP, where the on-chain finalization signals are directly visible.

The point of this enumeration is simple. Each line of this stack has its own nominal, evolving at its own rate, sensitive to its own kind of pressure. A system that wants to act safely across multiple lines of this stack cannot use a single threshold for the whole picture. It needs a per-line, per-layer, per-bridge reference frame, calibrated continuously, against the actual distribution of that specific component.

This is the calibration surface that Invarians covers today.

What 5 years of Ethereum tell us about nominal drift

The thesis that nominal drifts is not a claim. It is observable. Over the last five years, Ethereum's structural distribution has been reshaped at least four times by major events with measurable consequences on its baseline.

EIP-1559 (August 2021). The introduction of basefee burning and the priority fee mechanism reshaped the entire economic structure of Ethereum transactions. Pre-1559, gas pricing was a first-price auction producing high variance. Post-1559, basefee follows a deterministic rule based on block fullness, with much lower variance under normal conditions. The "nominal" gas price distribution shifted in shape, not just in level.

The Merge (September 2022). The transition from proof of work to proof of stake reshaped block timing from a stochastic process with high variance to a deterministic 12-second slot cadence. Pre-Merge nominal block time variance was structurally different. Post-Merge, slot timing is so consistent that any deviation is a measurable signal. The nominal of the structural rhythm axis changed character.

Shanghai upgrade (April 2023). The activation of withdrawals shifted the demand profile by introducing a new transaction type at scale, plus the staking economy that emerged around it. Block fullness distributions, priority fee distributions, and validator queue dynamics all moved.

Dencun upgrade (March 2024). The introduction of EIP-4844 and blob space, by far the most consequential structural shift in Ethereum's recent history. Rollup batch posting moved from calldata to blob space, the basefee distribution dropped by an order of magnitude on average, and the L1 to L2 economic coupling was redefined. Any threshold-based system calibrated pre-March 2024 saw its assumptions invalidated within weeks. The nominal of post-Dencun Ethereum is structurally a different distribution.

Pectra upgrade (forthcoming). EIP-7702 will allow EOAs to act as contracts within a single transaction, opening AA-like flows to existing addresses. This is expected to reshape transaction profiles by enabling batched user operations from EOAs at scale. Nominal will move again.

For each of these events, a system using fixed thresholds would have silently misread the chain after the upgrade. A system using a rolling calibration of the nominal would have absorbed the shift, with the new distribution propagating into the reference window over the days following the event.

The same kind of structural shift will keep happening, on Ethereum and on every other chain.

How calibration works, and the regime grid

The calibration is a rolling 30-day baseline, updated hour by hour. The present state of a chain is qualified by its position in the empirical distribution of that window (percentile-based, with uniform weighting of past observations within the window). Uniform weighting on a fixed-length window is a deliberate choice: it avoids amplifying recency artifacts during low-volume hours and preserves comparability between successive windows when measuring long-term shift. Two complementary qualifications are produced:

The full reproduction of the calibration pipeline is open at the methodology repository, including thresholds, source data, and FPR/TPR validation per chain: github.com/agentnorthstar/calibration.

To compress the calibration into something an agent can consume in one step, Invarians publishes a four-state regime grid for L1 chains and L2 rollups, plus a two-state grid for bridges:

Regime Structure axis (τ) Demand axis (π) Typical frequency
S1D1 Nominal Nominal dominant baseline (~95% on Ethereum)
S1D2 Nominal Elevated DeFi season, ETF events
S2D1 Stressed Nominal Merge, Shanghai, validator outages
S2D2 Stressed Elevated compound stress, rare

The frequencies above are observed on Ethereum over a recent 30-day rolling window. Per-chain frequencies vary: Solana (currently in calibration) and Avalanche show different proportions due to different consensus rhythms and demand profiles. The per-chain calibrated frequencies are published in the methodology repository.

S2D2 has not been observed in production over the recent 30-day window, which is consistent with calibration expectations and reflects either the genuine rarity of compound stress or the conservative shape of the current calibration. Either reading is operationally informative for an agent: a transition into S2D2 would itself be a high-information event.

For bridges, the grid simplifies to two states:

State Meaning Frequency observed
BS1 Nominal posting cadence ~95-99%
BS2 Posting gap detected, stale beyond calibrated threshold ~1-5%

BS2 was first emitted in production on 2026-04-22 on Optimism, when the bridge crossed its calibrated threshold of 396 seconds while the rest of the stack was nominal. This is exactly the kind of structural signal that has no economic signature on L1 (no fee anomaly), and that a fee-only monitor cannot see.

The calibration produces three positional signals an agent can consume in a single API call:

On top of these three positional signals, divergence is qualified explicitly when the present state falls outside the calibrated window, in either statistical or event-based modes described above.

Why this matters for AI agents on cross-chain RWA flows

The category of system that benefits from this measurement is narrow but real. Three properties define it:

This describes AI agents acting on real-world asset flows and institutional settlement, more than it describes generic DeFi bots.

A treasury management agent rebalancing $50M between Aave on Ethereum, Aave on Arbitrum, and Compound on Base, makes a decision every few hours or days. The decision is high-stakes, and it needs an audit trail. The agent's owner, an institution, needs to be able to demonstrate, six months later, under what infrastructure conditions each rebalance was executed. "The agent acted because Invarians certified that ETH was in S1D1, ARB was in S1D2, and the bridge was in BS1, with calibration window ending at timestamp T" is the kind of evidence an auditor or a regulator can verify against public on-chain data.

A RWA settlement protocol moving tokenized assets across chains needs to prove the same thing. If a settlement is contested, the protocol needs to show that the cross-chain movement happened under infrastructure conditions consistent with its operational policy. A signed Invarians payload, anchored on-chain at the moment of the settlement, with the calibration window the payload was computed against, gives the protocol that proof.

A cross-chain agent triangulating multiple bridge providers, CCIP, LayerZero, deBridge, needs an independent observer. The bridge providers attest to their own status. They are the executors of the action and the reporters of the conditions, which is a structural conflict of interest. An institution that sends a hundred million dollars cross-chain does not want to rely on the bridge provider's own status report alone. Adding Invarians as an independent observer, structural-level rather than bridge-level, provides the second source needed for cross-source triangulation. Bridge says "all OK", Invarians says "all OK", concordance strengthens confidence. Discordance is a signal to investigate before acting.

CCIP and CCTP, two layers that deserve their own calibration

The cross-chain message layer is structurally different from native L2 to L1 bridges, and Invarians treats it accordingly.

Chainlink CCIP carries arbitrary messages between chains. Each lane (ETH to ARB, ETH to BASE, etc.) has a commit phase and an execute phase, with measurable latency between the two. The distribution of the commit-execute gap on a given lane is a structural signal: a lane in nominal cadence has a tight, stable gap distribution. A lane in stressed cadence shows the gap widening, often before any economic effect appears. On top of this cadence, the Risk Management Network (RMN) provides a binary signal: cursed or not cursed. RMN curse is rare but absolute, overriding any cadence reading. Invarians captures both: the structural distribution of commit-execute gap, and the RMN status when the lane is cursed.

Circle CCTP carries USDC across chains via burn-mint, with Iris attestation as the off-chain coordination layer. The structural cadence is the time between source-chain burn event and Iris attestation availability. A CCTP route in nominal mode has a tight attestation latency distribution. A route under stress shows latency widening, attestation timeouts, or Iris unavailability. None of this is visible to a fee monitor or a price oracle. It is visible directly from the on-chain burn events combined with the off-chain Iris API.

The point of calibrating these two layers separately is that their nominal distributions are not the same as the underlying chain rhythms. A chain can be in nominal while its CCTP route is in stress, or vice versa. An agent that triangulates correctly needs the chain calibration, the bridge calibration, and the cross-chain message layer calibration as three independent inputs.

In all of these cases, the value Invarians provides is not the detection of anomalies as they emerge. The chains are nominal most of the time, by design. The value is the certified reference frame at the moment of action. The agent acted under known, calibrated, signed conditions. That fact, recorded on-chain, has standalone value independent of whether an anomaly was detected.

This positions Invarians not as a detector of trouble, but as the certifier of what conditions actually were when the action happened.

What Invarians does not do

The honest scope, in two paragraphs:

Invarians does not predict, does not affirm criticality, and does not prescribe agent decisions. A divergence flagged by Invarians says: "the present state of this chain falls outside its recent calibrated window." It does not say "the chain is about to fail" or "you should not act now." Whether a given divergence is operationally critical depends entirely on the agent's policy, the value at stake, the time horizon of the action, and the agent's own risk tolerance. The same Invarians signal can mean "continue" for one agent and "defer" for another. Invarians provides the data layer. The agent owns the decision layer.

Invarians is therefore a building block for systems that already have their own policy, not a turnkey product for generic agents. Sophisticated operators in RWA, treasury management, and institutional settlement already have risk management logic, compliance constraints, and execution policies. They consume Invarians as one input to that logic, alongside prices, balances, and other data sources. This deliberate scoping is what keeps the data trustworthy: by not pretending to make the decision, Invarians stays the certifier of the input. That separation of layers is exactly what allows the audit trail to mean something.

What comes next

The measurement work continues to expand. Solana calibration is on the roadmap for July 2026, extending the cross-chain coverage from EVMs to the largest non-EVM L1. Cross-chain L1 to L1 nominal windows, certified across both chains and the bridge connecting them, follow as the natural output once Solana calibration validates. The Pattern Reference will accumulate documented historical events, building the event-based divergence library over time.

In parallel, the methodology continues to be published and made reproducible. The calibration backtests, the threshold derivation, and the cross-chain coverage methodology are open at github.com/agentnorthstar/calibration. Anyone with access to public on-chain data can reproduce the calibrated thresholds, run the same backtests, and contest the numbers if they disagree.

The decentralization of the calibration itself is the longer arc. Today, Invarians runs a centralized backend signing payloads with HMAC. The roadmap moves toward a Chainlink DON in Q4 2026 and an independent node network with on-chain baselines and stake-to-compute economics in 2027. The output of the system, certified nominal windows for AI agents, becomes increasingly trustless over time, while the calibration methodology itself remains open and auditable from day one.

A follow-up article will publish the empirical drift backtest on Ethereum from 2021 to 2026, walking through the four upgrade events quantitatively, from public data. Early access to the dataset and scripts is available by following the methodology repository.

In parallel, sequence modeling on the long-term shift signal is an open research direction. The hypothesis Invarians is exploring: once enough calibrated history accumulates, recurrent transition patterns between regimes (for instance specific cross-chain sequences that tend to precede stress propagation) may become identifiable. This is exploratory work, not a committed product feature, and it sits under "Invarians hypothesizes" rather than "Invarians certifies". Should this hypothesis bear out, predictive outputs would be released as a separate research surface under labs.invarians.com, distinct from the certified reference frame that remains the core Invarians product.

Throughout this trajectory, the framing stays the same. Nominal is not a number. The distribution moves. The agent acts. Invarians delivers the certified reference frame at the moment of action. The rest is the agent's policy.

Pilot integration
Invarians provides on-chain execution context for AI agents. If you are running treasury or settlement flows that need a certified, independent reference frame at the moment of action, the team is open to pilot integrations on Sepolia and structured proof-of-concepts at production scale.
Reach out →