Consolidate ApplyDeposit
for Altair and Electra
#14535
Open
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.
The following code was completely duplicated:
ProcessDeposits
(moved to block package)ProcessDeposit
(moved to block package)ApplyDeposit
(moved to block package)This PR consolidates
ApplyDeposit
between Altair and Electra to eliminate duplicated code. TheApplyDeposit
function processes a deposit in the beacon chain by checking if a validator exists based on their public key. If the validator exists and the beacon state version is before Electra, it increases their balance. If the validator doesn't exist, it validates the deposit signature (unless all signatures have already been verified) and adds the validator to the registry if valid. For Electra and later versions, it processes deposits by appending them to the pending deposits list, without directly increasing balances.