Sub-Finality In Action
Polymer Labs has contributed a rollup improvement proposal, RIP-7789 to talk about the importance of L1 origin and part it play for rollup communications. Read more about RIP-7789.
This is practical example with Base and Optimism on Ethereum mainnet. Both have a gap between their L1 origins:
- Optimism: L1 origin at block 11.
- Base: L1 origin at block 16.
Minimum Finality Gap
= (Delta of L1Origins
- 1) x Ethereum Block Time
Implecations
- Rollup Knowledge: Optimism references Ethereum up to 11 blocks deep, while Base references up to 16 blocks. This mean the Optimism lacks the knowledge of Ethereum beyond the 11th block and for Base this is even larger i.e the first 16 Ethereum blocks.
-
State Sharing from Base to Optimism: Since Optimism's L1 origin is ahead of Base's, Optimism can verify Base's fork by checking that Base's L1 origin exists in its Ethereum history.
-
State Sharing from Optimism to Base: Base cannot verify Optimism's state immediately because it lacks knowledge of Ethereum blocks beyond its L1 origin at block 16.
Minimum Finality Gap: To share Optimism's state with Base, we need to wait until Base's L1 origin advances past block 4. This introduces a minimum finality gap calculated as: For this example, the gap is (16 - 11 - 1) × 12 seconds = 48 seconds
.
Developers should consider these finality gaps when designing application-specific rollups that interact closely with others.
Sample of a mainnet transaction:
- Latency Base to Optimism: 10-15 secs
- Latency Optimism to Base: 50-60 secs