Skip to content

Conversation

@shane-moore
Copy link

Changes per spec

  • process_slot modified (per_slot_processing)
  • process_epoch modified (per_epoch_processing)
    • process_builder_pending_payments added
    • get_builder_payment_quorum_threshold added

How this works

process_slot will now unset the next slot's BeaconState. execution_payload_availability, which contains a ring buffer indexed per slot. We clear the next slot's bit at every slot boundary as to start the slot off as a "no payload yet" state.

process_epoch will now run process_builder_pending_payments at the end. The sole focus of this new function is to loop over the state.builder_pending_payments left over from the previous epoch that did not get converted to state.builder_pending_withdrawals during the fast past conversion because they were associated with CL blocks that did not release their corresponding execution envelopes. So process_builder_pending_payments will check that if the accumulated weights for these state.builder_pending_payments from last epoch are higher than a quorum value. If so, they'll be converted to builder_pending_withdrawal with a withdrawable_epoch.

@ethDreamer

@eserilev eserilev added the gloas label Oct 24, 2025
@shane-moore shane-moore changed the title Epbs process epoch Gloas process epoch Oct 27, 2025
@shane-moore shane-moore changed the title Gloas process epoch gloas process epoch Oct 27, 2025
@shane-moore shane-moore changed the title gloas process epoch Gloas process epoch Oct 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants