zkSync-Community-Hub / zksync-developers

Project for Discussions with the ZKsync Community.
369 stars 233 forks source link

[General] On bridging from Ethereum-L1 to zkSync Era network, handling reorgs #650

Open bxpana opened 3 months ago

bxpana commented 3 months ago

Discussed in https://github.com/zkSync-Community-Hub/zksync-developers/discussions/616

Originally posted by **SyedAsadKazmi** July 4, 2024 It's mentioned in the [Instant Confirmations](https://docs.zksync.io/zk-stack/concepts/finality#instant-confirmations) section of **ZKsync Finality** docs: > This feature enables a seamless user experience, although more cautious users may opt to wait for the transaction to reach full finality or pass any intermediate steps before fully trusting the transaction's completion. So, my question is: On bridging, a user receives funds immediately on L2 (without having the finality being achieved on L1), now suppose the user moves or uses those funds immediately since the funds are allowed to be moved, and during the ~24 hours of time (i.e., required to achieve full finality), one can make a ton of transactions, and that too from various wallets/keys. But, what if the finality for the **initial bridging transaction** would never be achieved on L1 and the transaction gets rolled back, then how zkSync will cover up those funds or rollback all the subsequent transactions in that case?