-
Notifications
You must be signed in to change notification settings - Fork 974
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
Simplify validator activation flow #3983
base: dev
Are you sure you want to change the base?
Conversation
Now |
See the discussion about this PR on discord here: I agree with @mcdee's idea:
|
Why not just completely remove If it breaks, it shouldn't break more than just unsetting it, right? |
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 idea looks good for me
Co-authored-by: Pop Chunhapanya <[email protected]>
Updated the proposed change with preserving the assignment of |
LGTM. |
The following problem emerged during a deeper analysis of this change:
Considering that Eth1 bridge deposits are lagging behind by ~11 hrs, it is fine for them to bypass the finality check because effectively they should be finalized many hours prior Electra. The Considering the above, I see three options:
|
It sounds like 2) is the better option (I'm assuming that 3) would revert to 2) after the next hard fork anyway). |
There will be no Eth1 bridge deposits soon after Electra activation. So for the next hard fork we can safely take take the approach proposed in this PR |
Option (2) has a flaw as anyone can submit a deposit request top-up with that signature and bypass finalization. Although, it shouldn’t be exploited in any adversarial way I would postpone this change to the next upgrade, i.e. option (3), another reason for that is that we want to finalize the spec for Electra asap |
Deposit queue finalization proposed in #3818 allows for the following simplification in the validator activation flow:
activation_eligibility_epoch
which is currently used by the protocol to finalize new validators before activating them — this is now done by finalizing the deposit queueactivation_eligibility_epoch
for backwards compatibilityIn future upgrades
activation_eligibility_epoch
can be deprecated and re-purposed for any other usage e.g. custom EB ceiling etcToDo