01 · Systems Notebook

Interoperability & Chain Abstraction

Coordinating state changes across execution environments under constraints of trust, latency, and UX.

Cross-ChainChain AbstractionERC-7683Trust Boundaries

When a user tries to move USDC from Arbitrum to Base to buy an NFT, they're not thinking about bridges or relayers or finality windows. They just want the thing. This note is about the gap between what users want and what the infrastructure actually does, and how to design across that gap without lying to people about what's happening underneath.

Interoperability is not moving tokens between chains. It is coordinating state changes across execution environments, each with its own finality model, cost structure, and trust assumptions. Chain abstraction hides this complexity. The moment you hide carelessly, you reintroduce the trust assumptions you were trying to eliminate.

Across Protocol
Across ProtocolLive · Mar 2026

Intent-based bridge holding ~30% market share. Users express outcomes, solvers compete to fulfill them. The cleanest live implementation of what this note argues for.

Mental models

Chains as domains

Users state goals, not destinations

Each chain is a security context with its own finality, cost model, and liveness assumptions. Nobody should ever have to pick a domain. They state what they want and the system figures out where it happens.

Three-phase model

Execution → Verification → Settlement

Execution is fast. Verification is careful. Settlement is final. Collapsing all three into one spinner is a lie. The UI must show the phase, not hide it behind "processing..."

Primitive separation

Routing ≠ messaging ≠ bridging

Messaging: "Chain A says X happened." Bridging: moving value via lock/mint. Routing: choosing the path. Most products conflate all three. They shouldn't. Routing is a decision. The other two are plumbing.

Trust is additive

Weakest link dominates

Every hop adds a trust assumption. Ultra-light nodes, oracle networks, guardian sets. You cannot un-add trust debt. This is the constraint that should shape every routing decision, and most UIs don't show it at all.

Where the volume is

Five protocols control the market. Consolidation is accelerating. Delphi Digital expects 60% of current interop protocols to collapse by 2027. If you're designing for cross-chain, you're designing for these five.

LayerZero
$150B · 61% stables
Wormhole
$70B · NTT standard
Across
$28.6B · 30% bridge
CCIP
$7.77B · 11K banks
deBridge
$2.35B · most profitable

The infrastructure is winning. The UX hasn't caught up.

Trust vs speed

Every protocol trades trust for speed differently. The weakest link in a multi-hop flow dominates the entire chain's security. Most users have no idea which trust model they're using. That's a design failure, not a feature.

Higher trust, slower
Lower trust, faster
CCIP
Oracle networks
Wormhole
Guardian sets
LayerZero
Ultra-light nodes
Across
Optimistic + solvers

Message lifecycle

Every cross-chain action passes through four phases. Users should never have to name them, but the UI must make each transition feel like progress, not uncertainty.

Submitted
Signature accepted, source tx pending
Executing
Source-chain action confirmed
Verifying
Proof or finality check in progress
Finalized
Destination complete, fully settled

When things break

Five failure types, five recovery paths, five things users actually see. The gap between what the system knows and what the user reads is where trust dies.

Failure typeWhat happenedRecovery path
Lost messageSource event exists, destination never executesRetry relay → alt relayer → timeout refund
Partial executionSwap succeeded, bridge failedCheckpoint → compensate → resume
Delayed verificationOptimistic context, finality not reachedPhase UI: "usable soon" vs "final later"
Sequencer stallInclusion halted, tx stuck in mempoolForced inclusion → fallback route
Spoofed messageMissing validation (CrossCurve $3M, Feb 2026)Protocol-level audit, not UX recovery
What the user actually sees
Lost message"Your transfer is delayed. We're re-routing. No action needed yet."
Partial execution"Step 1 complete. Step 2 failed. Your funds are safe."
Delayed verification"Usable now with a small cap. Final in ~20 min."
Sequencer stall"Your transaction is stuck. Options: wait, retry, or cancel."
Spoofed message"This transaction was blocked. Your funds were not moved."

Design checklist

The line between helpful and noisy. Everything above the line earns trust. Everything below it creates confusion.

Show

Total time range, not internal hop count
Total fees, all-in
Trust tier: Standard / Secure / Optimistic
Current phase and transition events
Explicit action required: claim, retry, cancel

Hide

Internal hop details and relay selection
Verification mechanics and proof types
Bridge contract addresses
Solver competition and routing logic
Which relayer was selected and why

What I'm prototyping

Cross-chain execution mockups

Can users tell the difference between "included," "verified," and "finalized"? Testing phase-based progress indicators against single-spinner controls.

Multi-hop execution previews

Can users trust a route they didn't choose? Testing route cards with phases, assumptions, and trust tier labels.

Cross-chain execution mockup: multi-hop timeline with phase-based progress