Skip to content

glamsterdam-devnet-8 - #9881

Draft
eserilev wants to merge 20 commits into
sigp:unstablefrom
eserilev:glamsterdam-devnet-8
Draft

glamsterdam-devnet-8#9881
eserilev wants to merge 20 commits into
sigp:unstablefrom
eserilev:glamsterdam-devnet-8

Conversation

@eserilev

Copy link
Copy Markdown
Member

Description

Integration branch for glamsterdam devnet-8.

This branch contains the following PRs, merged on top of unstable:

Additional Info

The gloas fork EF vectors from alpha.13 fail on this branch. #9876 changes the upgraded bid on purpose. The next vector release covers the new behavior.

🤖 Generated with Claude Code

https://claude.ai/code/session_01U2gMg7BbHDQ596rGNxMCqZ

ethDreamer and others added 17 commits August 18, 2026 12:40
…Gloas builder API 1/5)

First PR of the Gloas builder API stack (builder-specs sigp#165 / beacon-APIs sigp#630):

- consensus/types: DOMAIN_REQUEST_AUTH application domain and `get_request_auth_domain()`
- common/builder_types: new crate with the shared Builder API wire types
- common/eth2: POST produceBlockV4 methods, builder-preferences methods,
  `Eth-Builder-Url` header plumbing, and `ProduceBlockV4Metadata::builder_url`

All changes are additive: the legacy GET v4 block-production methods are kept
alongside the new POST variants until the validator client migrates later in
this stack, then removed in the final PR.

Change-Id: I1df19d460b74b0e7387426e79a2e8edc764da837
… API 2/5)

Second PR of the Gloas builder API stack (builder-specs sigp#165):

- builder_client: relocate the legacy MEV-boost client to
  `PreGloasBuilderHttpClient` and add the Gloas Builder API HTTP client
  (request-auth, bid requests, preference submission, signed-block forwarding)
  plus the stateless `Builders` service used by block production
- execution_layer: adopt the relocated pre-Gloas client and drop dead error
  variants

The new client is not yet wired into the beacon chain; that lands in the next
PR of this stack.

Change-Id: I5bcab56ff499b183f26cc90697bc7c7f2baddfe7
…(Gloas builder API 3/5)

Third PR of the Gloas builder API stack:

- beacon_chain: direct builder bid verification (spawned on the blocking
  executor), gossip-bid refinements, wei-domain bid selection
  (`BidCandidate`/`BidSource`), and Gloas block production that assembles
  local, gossip, and direct-builder candidates
- network: process payload-bid and proposer-preference gossip, including the
  new `PayloadBidError` variants
- client: construct the `Builders` service when the Gloas fork is scheduled
  and wire it into the beacon chain

The HTTP API still serves `GET` produceBlockV4 at this point; the `POST`
conversion and the `Eth-Builder-Url` round-trip land in the next PR.

Change-Id: Ieccaee5db81bf871c19cef1b79fc48283be9dd51
…builder API 4/5)

Fourth PR of the Gloas builder API stack (beacon-APIs sigp#630):

- convert `/eth/v4/validator/blocks/{slot}` to POST with an optional
  `BuilderConfig` body (min_bid, builder_boost_factor, direct builders)
- add `POST /eth/v1/validator/builder_preferences` for forwarding signed
  builder preferences
- set `Eth-Builder-Url` on produceBlockV4 responses when a direct-builder bid
  wins, accept it on `POST /eth/v2/beacon/blocks`, and forward the signed
  block to that builder

The validator client still uses the legacy GET methods at this point; it
migrates in the final PR of this stack.

Change-Id: I0ad30b8f36ad9b588ea1a0398220f92c9597bb95
…API 5/5)

Final PR of the Gloas builder API stack:

- sign builder request-auth and preferences (REQUEST_AUTH signing domain,
  web3signer message type)
- add the builder configuration store (`builder_definitions.yml`) and book
  documentation
- add the builder-preferences service and switch block production to
  `POST` produceBlockV4 with a `BuilderConfig` body, threading the
  `Eth-Builder-Url` header through block publication
- remove the now-unused legacy `GET` produceBlockV4 client methods

Change-Id: Iaeeaf6205a024e4fb9fd11aae6ac6a75978a8320
… stack, PRs 9803-9807 + 9864) into glamsterdam-devnet-8

# Conflicts:
#	beacon_node/beacon_chain/src/block_production/gloas.rs
#	beacon_node/beacon_chain/src/payload_bid_verification/gossip_verified_bid.rs
#	beacon_node/beacon_chain/src/payload_bid_verification/mod.rs
#	beacon_node/beacon_chain/src/payload_bid_verification/payload_bid_cache.rs
#	beacon_node/beacon_chain/src/payload_bid_verification/tests.rs
@eserilev
eserilev force-pushed the glamsterdam-devnet-8 branch from f064e9e to 06b6fec Compare August 19, 2026 18:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants