Filter out BlsToExecutionChange messages for 0x02 validators #6464
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue Addressed
N/A
Proposed Changes
Thanks @pk910 for finding the issue on electra devnet-3.
When producing a block, we get all the messages from our op pool filtering only for messages that have validators which already have an
eth1_withdrawal_credential
.With electra, we can have the following sequence of events:
SignedBlsToExecutionMessage
b
for validatorv
and add it to our op poolb
in its block and the validator goes from 0x00 to 0x01DepositRequest/ConsolidationRequest
that changes the withdrawal credential forv
from 0x01 to 0x02b
because its still in our op pool and the prefix is not 0x00 (its 0x02)This PR checks that the prefix is not 0x01 and 0x02 before getting it from the op pool. We also need to change the pruning routine to do the same.
TODO