@@ -39,7 +39,17 @@ defmodule Types.BeaconState do
39
39
:latest_execution_payload_header ,
40
40
:next_withdrawal_index ,
41
41
:next_withdrawal_validator_index ,
42
- :historical_summaries
42
+ :historical_summaries ,
43
+ # New Electra fields
44
+ :deposit_requests_start_index ,
45
+ :deposit_balance_to_consume ,
46
+ :exit_balance_to_consume ,
47
+ :earliest_exit_epoch ,
48
+ :consolidation_balance_to_consume ,
49
+ :earliest_consolidation_epoch ,
50
+ :pending_deposits ,
51
+ :pending_partial_withdrawals ,
52
+ :pending_consolidations
43
53
]
44
54
45
55
@ enforce_keys fields
@@ -105,7 +115,25 @@ defmodule Types.BeaconState do
105
115
# Deep history valid from Capella onwards
106
116
# [New in Capella]
107
117
# HISTORICAL_ROOTS_LIMIT
108
- historical_summaries: list ( Types.HistoricalSummary . t ( ) )
118
+ historical_summaries: list ( Types.HistoricalSummary . t ( ) ) ,
119
+ # [New in Electra:EIP6110]
120
+ deposit_requests_start_index: Types . uint64 ( ) ,
121
+ # [New in Electra:EIP7251]
122
+ deposit_balance_to_consume: Types . gwei ( ) ,
123
+ # [New in Electra:EIP7251]
124
+ exit_balance_to_consume: Types . gwei ( ) ,
125
+ # [New in Electra:EIP7251]
126
+ earliest_exit_epoch: Types . epoch ( ) ,
127
+ # [New in Electra:EIP7251]
128
+ consolidation_balance_to_consume: Types . gwei ( ) ,
129
+ # [New in Electra:EIP7251]
130
+ earliest_consolidation_epoch: Types . epoch ( ) ,
131
+ # [New in Electra:EIP7251]
132
+ pending_deposits: list ( Types.PendingDeposit . t ( ) ) ,
133
+ # [New in Electra:EIP7251]
134
+ pending_partial_withdrawals: list ( Types.PendingPartialWithdrawal . t ( ) ) ,
135
+ # [New in Electra:EIP7251]
136
+ pending_consolidations: list ( Types.PendingConsolidation . t ( ) )
109
137
}
110
138
111
139
@ impl LambdaEthereumConsensus.Container
@@ -145,7 +173,19 @@ defmodule Types.BeaconState do
145
173
{ :next_withdrawal_index , TypeAliases . withdrawal_index ( ) } ,
146
174
{ :next_withdrawal_validator_index , TypeAliases . validator_index ( ) } ,
147
175
{ :historical_summaries ,
148
- { :list , Types.HistoricalSummary , ChainSpec . get ( "HISTORICAL_ROOTS_LIMIT" ) } }
176
+ { :list , Types.HistoricalSummary , ChainSpec . get ( "HISTORICAL_ROOTS_LIMIT" ) } } ,
177
+ # New Electra fields
178
+ { :deposit_requests_start_index , TypeAliases . uint64 ( ) } ,
179
+ { :deposit_balance_to_consume , TypeAliases . gwei ( ) } ,
180
+ { :exit_balance_to_consume , TypeAliases . gwei ( ) } ,
181
+ { :earliest_exit_epoch , TypeAliases . epoch ( ) } ,
182
+ { :consolidation_balance_to_consume , TypeAliases . gwei ( ) } ,
183
+ { :earliest_consolidation_epoch , TypeAliases . epoch ( ) } ,
184
+ { :pending_deposits , { :list , Types.PendingDeposit , ChainSpec . get ( "PENDING_DEPOSITS_LIMIT" ) } } ,
185
+ { :pending_partial_withdrawals ,
186
+ { :list , Types.PendingPartialWithdrawal , ChainSpec . get ( "PENDING_PARTIAL_WITHDRAWALS_LIMIT" ) } } ,
187
+ { :pending_consolidations ,
188
+ { :list , Types.PendingConsolidation , ChainSpec . get ( "PENDING_CONSOLIDATIONS_LIMIT" ) } }
149
189
]
150
190
end
151
191
0 commit comments