Proof Center · Finality

What “settled” means, per network.

Finality is where money goes missing when a product flattens every chain into one “confirmed”. StoneReason never does. Each answer reports settlement in the chain's own vocabulary, and says whether depth even means anything there. NETWORK_KNOWN != PRODUCT_SUPPORTED.

NetworkFamily Final conditionModel Protocol finalSettles at depth
Arbitrum OneEVML1_CONFIRMEDDERIVED_FROM_L1yesnot by depth
Avalanche C-ChainEVMACCEPTEDPROTOCOL_CONDITIONyesnot by depth
BaseEVML1_FINALIZEDDERIVED_FROM_L1yesnot by depth
BNB Smart ChainEVMFINALIZEDPROTOCOL_CONDITIONyesnot by depth
CeloEVML1_FINALIZEDDERIVED_FROM_L1yesnot by depth
EthereumEVMFINALIZEDPROTOCOL_CONDITIONyesnot by depth
Polygon PoSEVMFINALIZEDPROTOCOL_CONDITIONyesnot by depth
StellarNATIVECLOSEDPROTOCOL_CONDITIONyesnot by depth
TONNATIVEMASTERCHAIN_COMMITTEDPROTOCOL_CONDITIONyesnot by depth
TRONNATIVESOLIDIFIEDPROTOCOL_CONDITIONyesnot by depth
XRP LedgerNATIVEVALIDATEDPROTOCOL_CONDITIONyesnot by depth

Generated from the deployment. The final condition is the chain's own code; the model is how it settles.

The TRON differentiator

Finalized on the solidified head, not a block count.

TRON settles when a supermajority of its twenty-seven super representatives has built on a block — a threshold, not a depth. StoneReason reads that solidified head from the chain and finalizes against it, rather than counting confirmations that do not mean settlement here.

  • BLOCK_COUNT != TRON_PROTOCOL_FINALITY — a count is not the condition.
  • SOLIDITY_RECEIPT_ABSENT != FAILED — not yet solid is not failed.
  • TIME_ELAPSED != FINALIZED — waiting is not settling.

Proven at release 6201f617 with payment pay_e4fd7788..., native finality SOLIDIFIED.

finalitySOLIDIFIED
"transaction_height": 64_912_impl,
"solidified_head":    64_935_impl,
"native_finality":    "ESTABLISHED",
"mechanism":          "TRON_SOLIDIFIED_HEAD",
"distance_is_meaningful": false

The four settlement models, in words you can act on

Every served network reports one of these. The label is not decoration; it changes what you should do before releasing goods.

Protocol Condition

A block either meets the protocol's finality condition or it does not; waiting longer does not make a block that has met it more final. Depth is not meaningful.

Derived From L1

A rollup. Its sequencer confirms immediately, but that is a promise by the sequencer; the block becomes irreversible only when its batch finalizes on Ethereum, where the guarantee actually lives.

Probabilistic

Probabilistic: a block gets harder to reverse as more are built on it, and never impossible. Any depth you choose is a risk decision, not a guarantee.

Not Applicable

This chain makes no protocol-finality claim, and neither does any answer about it. A depth is named instead.