Skip to content

Conversation

@michaelsproul
Copy link
Member

Proposed Changes

This PR breaks out the consensus changes from:

And merges in:

The goal is to get up to date with the latest spec (v1.7.0-alpha.1) and get the EF tests passing. We do not need the BeaconChain envelope processing changes for this, so they will stay in #8279.

@michaelsproul michaelsproul mentioned this pull request Jan 19, 2026
87 tasks
let builder = state.get_validator(builder_index as usize)?;

// For self-builds, amount must be zero regardless of withdrawal credential prefix
if builder_index == block.proposer_index() {
Copy link

@shane-moore shane-moore Jan 19, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this self-building check has been updated to if builder_index == BUILDER_INDEX_SELF_BUILD
https://ethereum.github.io/consensus-specs/specs/gloas/beacon-chain/#new-process_execution_payload_bid

additionally, looks like a few more mods have happened to this function in the spec as well since we've made the in-protocol builder a new staked actor

all the beacon chain spec page's implementations we've made supported up til v1.6.1, so probably good idea to go through the spec PR's from then til v1.7.0-alpha.1 as to be sure we're compliant

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah we are working through this now, planning to go through every function

@michaelsproul michaelsproul added the work-in-progress PR is a work-in-progress label Jan 19, 2026
@michaelsproul michaelsproul added the consensus An issue/PR that touches consensus code, such as state_processing or block verification. label Jan 19, 2026
@michaelsproul michaelsproul mentioned this pull request Jan 20, 2026
12 tasks
michaelsproul and others added 10 commits January 20, 2026 14:22
- Fix DOMAIN_BEACON_BUILDER value (0x1B -> 0x0B per spec)
- Add DOMAIN_PROPOSER_PREFERENCES (0x0D)
- Add min_builder_withdrawability_delay config (4096 epochs)
- Add MaxBuildersPerWithdrawalsSweep to EthSpec trait
- Add gloas_only/gloas_and_later handlers for EF tests
- Add SSZ static tests for all new Gloas types
- Add fork choice constants to consts.rs (PayloadStatus, timeliness indices)
- Add payload_timely_threshold() helper to EthSpec
- Exclude Gloas from fork_choice tests until implementation is complete
- Add PayloadAttestation operation test handler for EF tests
* Added gloas exclusion to `FinalityHandler`

* Fix Gloas EF test failures and add test exclusions

- Fix execution_payload_availability initialization in fork upgrade
to set all bits to true per spec (was all zeros)
- Fix minimal spec gloas_fork_version: [0x07,0x00,0x00,0x01] (was 0x00)
- Fix payload attestation signature domain to use get_domain instead
of compute_domain with genesis fork version
- Add proposer slashing handler to clear builder_pending_payment per
EIP-7732 spec
- Add Gloas test exclusions for unimplemented functionality:
- sanity_blocks, sanity_slots, random, transition, finality handlers
- deposit_request operation (requires builder deposit functionality)
- Python exclusions for check_all_files_accessed.py

* fmt
mergify bot pushed a commit that referenced this pull request Jan 21, 2026
Pulling out consensus type changes from #8677.

This PR covers all type changes for spec 1.7.0-alpha.1 (except for `DataColumnSidecar` changes, which is covered in @eserilev's PR  #8682)


  


Co-Authored-By: Jimmy Chen <jchen.tc@gmail.com>

Co-Authored-By: Michael Sproul <michael@sigmaprime.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

consensus An issue/PR that touches consensus code, such as state_processing or block verification. gloas work-in-progress PR is a work-in-progress

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants