Tony D’Addeo pfp
Tony D’Addeo
@deodad
questions about OP Stack re-orgs: - can unsafe blocks be re-orged by the sequencer? - if so, how often are unsafe blocks re-orged? - in practice how many confirmations before block become safe? - is there a way to view historical re-orgs? - (bonus) what's the best way to detect a re-oreg?
5 replies
3 recasts
23 reactions

Roberto Bayardo 🎩 pfp
Roberto Bayardo 🎩
@bayardo.eth
Yes, unsafe blocks can potentially be reorged, but most deployments of OP Stack (e.g. Base's) try REALLY REALLY hard to avoid this in order to allow a tx receipt to be treated as an effective tx confirmation. So reorgs are extremely unlikely. I don't think Base has ever had one.
2 replies
0 recast
7 reactions

zain pfp
zain
@zain
Related to safe, you can see the data in seconds here by chain: https://dune.com/oplabspbc/op-stack-chains-l1-activity#submission-frequency
2 replies
0 recast
1 reaction

zain pfp
zain
@zain
One thing to add which seems to be missed in below discussion: L2s (unsafe and safe) data can still be reorged due to L1 reorgs. L2s outsource their consensus to L1, so until L1 is finalized, you cant have nonzero L2 finality. (sidebar this is why CCTP waits 16min for L2 cross chain sends)
1 reply
0 recast
2 reactions

shazow pfp
shazow
@shazow.eth
[Deleted my original cast as I'm thinking through it] My original intuition was that we shouldn't have to worry about reorgs with a single sequencer (ie. non-based rollups), but then I remembered that the L2 might have access to L1 state which would force it to re-interpret outcome based on reorgs. Thanks for asking this question, looking forward to reading more replies.
0 reply
0 recast
1 reaction

soyboy pfp
soyboy
@soyboy
I’ll skip the first couple because Roberto did a good job answering them. The number of confirmations before a block becomes safe depends on how often the OP Stack chain posts batch transactions of L2 state. Once your L2 txs are posted to Ethereum, they’re considered safe and once the L1 block with that tx data is finalized on L1 you can consider it finalized and will not ever be reorged. Here’s a pretty good doc on the topic https://docs.optimism.io/stack/transactions/transaction-finality
0 reply
0 recast
0 reaction