-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
op-node: Add option to only use finalized blocks as l1origin #209
Conversation
1119ab8
to
b2769e6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks much better :)
This PR is stale because it has been open 14 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
b2769e6
to
05d3900
Compare
977cd0f
to
e8aef1f
Compare
e8aef1f
to
79df0d4
Compare
79df0d4
to
63a8c3b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should check the default value. Other than that, LGTM
op-node/rollup/driver/driver.go
Outdated
verifConfDepth := confdepth.NewConfDepth(driverCfg.VerifierConfDepth, statusTracker.L1Head, l1) | ||
|
||
var verifL1 derive.L1Fetcher | ||
if driverCfg.UseFinalized { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i believe we are mixing 2 differents things and that confuses me.
-
Make sure when creating a new block, you don't depend on L1 blocks that are not final (l1 origin). This is an alternative to
SequencerConfDepth
-
Make sure that when deriving the 'safe' chain we don't derive information from L1 blocks that are not final. But, OP has already a chain pointer for that, right? There's unsafe (not on l1), safe (on eth, but not final), finalize (on eth and final there)
So i don't think we should be mixing those. If we do, the "safe" chain will be 15 (+25 from batcher) minutes delayed from the unsafe chain.
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I discussed this with Karl a bit more and we agree with Mariano here.
This should only change the sequencer's l1 origin selection. The derivation should use the existing mechanism, l2 blocks get marked as "safe" or "final" when their origin changes its state. My initial idea to avoid reorgs there too will break expectations of users, who couldn't select to see and work on "unsafe" blocks if they trust the sequencer.
958ed66
to
bb5a3fc
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The latest version looks like a nice small change.
bb5a3fc
to
c25bd9c
Compare
Resolves #200
Adds the
--sequencer.use-finalized
option to op-node, no only use finalized blocks as l1 origin in the sequencer.