Add gas limit schedule (EIP-8261) - #5533
Merged
Merged
Conversation
barnabasbusa
commented
Aug 11, 2026
barnabasbusa
commented
Aug 11, 2026
barnabasbusa
commented
Aug 11, 2026
Rename the config section to Scheduling, drop the config comments, and define GAS_LIMIT_SCHEDULE in specs/gloas/beacon-chain.md as a list-of-records with a get_scheduled_gas_limit helper, mirroring the Fulu BLOB_SCHEDULE pattern. Claude-Session: https://claude.ai/code/session_017jVHwwK1C3h1caJFyabeVm
terencechain
approved these changes
Aug 11, 2026
eserilev
approved these changes
Aug 12, 2026
2 tasks
jtraglia
approved these changes
Aug 12, 2026
nflaig
reviewed
Aug 12, 2026
nflaig
approved these changes
Aug 13, 2026
matthewkeil
approved these changes
Aug 13, 2026
nflaig
added a commit
to ChainSafe/lodestar
that referenced
this pull request
Aug 13, 2026
Implements [EIP-8261](https://eips.ethereum.org/EIPS/eip-8261) as an advisory epoch-based gas limit schedule - add `GAS_LIMIT_SCHEDULE` config parsing, serialization, validation and epoch lookup - evaluate the schedule per duty from Gloas for builder registrations and proposer preferences - honor explicit operator preferences and warn when they exceed the active recommendation - keep the current 60M default before Gloas, before the first schedule entry or when the field is absent - leave built-in schedules empty until network configs define canonical entries - keep block validity and fork digests unchanged, the current EIP introduces no consensus rules See ethereum/consensus-specs#5533
2 tasks
gitToki
pushed a commit
to gitToki/prysm
that referenced
this pull request
Sep 9, 2026
- Bump consensus spec tests from v1.7.0-alpha.12 to v1.7.0-beta.0, through alpha.13 and alpha.14 - alpha.13: Look up payload availability at the parent block's slot ([consensus-specs#5473](ethereum/consensus-specs#5473)) - alpha.13: Enable equivocation tracking by default, gated on the early cutoff window, required by the `should_apply_proposer_boost` fork-choice tests ([consensus-specs#5441](ethereum/consensus-specs#5441)) - alpha.13: Source KZG spec test vectors from ethereum/cryptography-specs ([consensus-specs#5398](ethereum/consensus-specs#5398)) - alpha.14: Explicitly set bid fields, including the slot, when upgrading to Gloas ([consensus-specs#5550](ethereum/consensus-specs#5550), [consensus-specs#5553](ethereum/consensus-specs#5553)) - alpha.14: Disallow proposer reorgs at epoch boundaries before Fulu ([consensus-specs#5547](ethereum/consensus-specs#5547)) - alpha.14: Refresh ethspecify references, add exceptions for named SSZ collections ([consensus-specs#5528](ethereum/consensus-specs#5528)), executable gossip validation functions ([consensus-specs#5294](ethereum/consensus-specs#5294)), and the gas limit schedule ([consensus-specs#5533](ethereum/consensus-specs#5533)) - beta.0: Reject bids whose block hash equals the parent block hash, in state transition and gossip ([consensus-specs#5594](ethereum/consensus-specs#5594), cherry-picked from OffchainLabs#17443) - beta.0: Read the parent slot from the latest block header when applying the parent payload ([consensus-specs#5554](ethereum/consensus-specs#5554)) - beta.0: Rename the PTC SSZ types to `PayloadTimelinessCommittee*` in ethspecify references ([consensus-specs#5558](ethereum/consensus-specs#5558)) - The beta.0 `minimal.tar.gz` is not published yet, so the WORKSPACE minimal hash still points at alpha.14 and will be updated once the asset lands --------- Co-authored-by: Potuz <potuz@prysmaticlabs.com> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
mergify Bot
pushed a commit
to sigp/lighthouse
that referenced
this pull request
Sep 25, 2026
## Issue Addressed ethereum/consensus-specs#5533
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds the optional
GAS_LIMIT_SCHEDULEfield from EIP-8261 to the standard configs and defines it in the Gloas spec.EIP-8261 (Informational) recommends an optional CL configuration field giving, per fork epoch, the default gas limit for unconfigured validators and the recommended maximum:
Changes
configs/mainnet.yaml/configs/minimal.yaml: addGAS_LIMIT_SCHEDULE: []under the (renamed) Scheduling section.specs/gloas/beacon-chain.md: define the schedule as alist-of-recordsconfiguration (mirroring Fulu'sBLOB_SCHEDULE) plus aget_scheduled_gas_limit(epoch)helper returning the active scheduled gas limit, orNonewhen the schedule is empty or the epoch predates every entry.The field is advisory: it introduces no new validity rules, clients that do not support it ignore it, and an empty schedule is a no-op for clients that do.
make lintpasses; the generated pyspec picks up the new configuration variable and helper.https://claude.ai/code/session_017jVHwwK1C3h1caJFyabeVm