This EIP removes the legacy deposits and eth1_data fields from the BeaconBlockBody structure after EIP-6110 has been fully finalized. These fields become obsolete once all validators have transitioned to the new in-protocol deposit processing mechanism introduced in EIP-6110.
Motivation
EIP-6110 introduced in-protocol deposit processing by moving validator deposits to the execution layer as part of the EIP-7685 request framework. This change eliminated the need for the consensus layer's proposer voting mechanism for deposits. However, during the transition period, both the legacy deposit mechanism (using deposits and eth1_data fields) and the new mechanism coexist to ensure smooth migration.
Once EIP-6110 has been fully finalized and the transition period is complete (when state.eth1_deposit_index == state.deposit_requests_start_index), the legacy deposit fields become permanently unused and can be safely removed. This cleanup provides several benefits:
Simplified validation: Removes deprecated validation logic and code paths
Improved maintainability: Eliminates technical debt from the transition period
Specification
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 and RFC 8174.
Consensus Layer
Activation Conditions
This EIP SHALL only be activated when both of the following conditions are met:
EIP-6110 has been fully finalized: state.eth1_deposit_index == state.deposit_requests_start_index
EIP-7732 is in effect
BeaconBlockBody Modifications
The BeaconBlockBody container is modified to remove the following fields: