Transaction finality¶
Throughout the transaction lifecycle, transactions progress through three states of finality:
-
Trusted: The transaction has been submitted and executed on the L2. The user receives the result of the transaction and can continue to interact with the L2 chain.
-
Virtual: The transaction has been batched and sequenced, meaning the batch containing the transaction has been sent to Ethereum. However, the ZK-proof to verify the validity of the transaction has not yet been posted and verified on Ethereum.
-
Consolidated: The transaction has been aggregated, meaning a ZK-proof has been generated, posted, and verified on Ethereum to prove the validity of the transaction. The transaction is now considered final at the L1 level, enabling the user to withdraw their funds from the L2 chain back to Ethereum.