Skip to content

Grpc stateless gloas#16943

Merged
james-prysm merged 70 commits into
developfrom
grpc-stateless-gloas
Jun 29, 2026
Merged

Grpc stateless gloas#16943
james-prysm merged 70 commits into
developfrom
grpc-stateless-gloas

Conversation

@james-prysm

@james-prysm james-prysm commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

What type of PR is this?
Feature

What does this PR do? Why is it needed?

introduces the -- stateless flag for grpc and updates grpc to match rest in terms of blinded envelope use for stateful path which is the default.

test configs

# Controlled counterfactual (inverse of gloas-config-nostateless.yml): identical config but with
# --stateless on EVERY validator. If slot 64 reliably fails with
# "could not get post capella payload header: attempted to wrap nil object" here while the
# all-non-stateless run crossed cleanly, --stateless is causal. If it also crosses cleanly, the
# earlier miss was coincidental (parent-state/proposer draw), not the flag.
participants:
  - el_type: ethrex
    el_image: ethpandaops/ethrex:glamsterdam-devnet-4
    el_extra_params:
      - --http.api=eth,net,web3,admin
    cl_type: prysm
    cl_image: gcr.io/offchainlabs/prysm/beacon-chain:latest
    vc_image: gcr.io/offchainlabs/prysm/validator:latest
    supernode: true
    count: 2
    cl_extra_params:
      - --subscribe-all-subnets
      - --verbosity=debug
    vc_extra_params:
      - --verbosity=debug

  - el_type: ethrex
    el_image: ethpandaops/ethrex:glamsterdam-devnet-4
    el_extra_params:
      - --http.api=eth,net,web3,admin
    cl_type: prysm
    cl_image: gcr.io/offchainlabs/prysm/beacon-chain:latest
    vc_image: gcr.io/offchainlabs/prysm/validator:latest
    validator_count: 63
    cl_extra_params:
      - --verbosity=debug
    vc_extra_params:
      - --stateless
      - --verbosity=debug

network_params:
  fulu_fork_epoch: 0
  gloas_fork_epoch: 2
  seconds_per_slot: 6
  genesis_delay: 40

additional_services:
  - dora
  - spamoor

spamoor_params:
  spammers:
    - scenario: eoatx
      config:
        throughput: 10
    - scenario: blobs
      config:
        throughput: 2

global_log_level: debug

Which issues(s) does this PR fix?

Fixes #

Other notes for review

Acknowledgements

  • I have read CONTRIBUTING.md.
  • I have included a uniquely named changelog fragment file.
  • I have added a description with sufficient context for reviewers to understand this PR.
  • I have tested that my changes work as expected and I added a testing plan to the PR description (if applicable).

@syjn99 syjn99 self-requested a review June 23, 2026 05:39
Comment thread beacon-chain/rpc/prysm/v1alpha1/validator/BUILD.bazel Outdated
Comment thread proto/prysm/v1alpha1/gloas.go Outdated
Comment thread beacon-chain/rpc/eth/validator/handlers_block_gloas.go
Comment thread proto/prysm/v1alpha1/beacon_block.proto Outdated
james-prysm and others added 6 commits June 26, 2026 07:16
Resolve conflict in proposer.go from #17040 (split Gloas/pre-Gloas block
production). Move the stateless self-build logic (eagerPayloadStateRoot
threading, envelope capture, inline GloasContents bundling) into the new
buildBlockGloas path, and reconcile storeExecutionPayloadEnvelope's
(envelope, error) signature with its call site.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@syjn99 syjn99 self-requested a review June 29, 2026 14:15
syjn99
syjn99 previously approved these changes Jun 29, 2026

@syjn99 syjn99 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Already had a couple of review rounds, and last commits are more like cosmetic one so LGTM

@james-prysm james-prysm enabled auto-merge June 29, 2026 15:59
nalepae
nalepae previously approved these changes Jun 29, 2026
@james-prysm james-prysm added this pull request to the merge queue Jun 29, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jun 29, 2026
@james-prysm james-prysm enabled auto-merge June 29, 2026 19:24
@james-prysm james-prysm added this pull request to the merge queue Jun 29, 2026
Merged via the queue into develop with commit 251c0cb Jun 29, 2026
24 checks passed
@james-prysm james-prysm deleted the grpc-stateless-gloas branch June 29, 2026 22:09
@github-project-automation github-project-automation Bot moved this from Unassigned to Done in Gloas Jun 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants