Changelog
Features
- better self-rate-limit handling (#9335) (@wemeetagain)
- implement EIP-8061 increase exit and consolidation churn (#9305) (@ensi321)
- add dependent root to proposer preferences (#9303) (@nflaig)
- bump spec test version to v1.7.0-alpha.6 (#9304) (@ensi321)
- wire in PTC duties (#9287) (@wemeetagain)
- include payload attestations when producing block (#9283) (@wemeetagain)
- wire up proposer_preferences gossip topic (#9275) (@nflaig)
- add unknown payload envelope sync flow (#9241) (@wemeetagain)
- range sync for gloas (#9269) (@twoeths)
- update sync notifier for gloas (#9272) (@nflaig)
- support nightly spec tests (#9221) (@brech1)
- wire parent execution requests in block production (#9265) (@nflaig)
- cache the last 2 PayloadEnvelopeInputs (#9260) (@twoeths)
- defer payload processing to next block (#9257) (@ensi321)
- implement EIP-7843 and alpha.5 containers (#9254) (@ensi321)
- merge BAL into ePBS (#9226) (@ensi321)
- add cached PTC window to the state (#9211) (@nflaig)
- trigger processExecutionPayload() once (#9223) (@twoeths)
- unskip gloas fork choice spec tests (#9222) (@ensi321)
- ignore index-1 attestation when payload is missing (#9213) (@ensi321)
- add endpoint to craft attester slashings from blocks (#9198) (@markolazic01)
- add endpoint to retrieve signed execution payload envelope (#9186) (@nflaig)
- add execution payload bid event (#9185) (@nflaig)
- fork-aware IBeaconStateView type narrowing (#9105) (@lodekeeper)
- reqresp: track peer rate-limit backoff in SelfRateLimiter (#9034) (@wemeetagain)
Bug Fixes
- checkpoint sync for skipped slot (#9329) (@twoeths)
- prevent seed state cache poisoning in loadState clone (#9246) (@lodekeeper)
- include latest payload bid in gloas genesis block (#9336) (@nflaig)
- only trigger gloas blobs tracker in gossip (#9322) (@wemeetagain)
- prune PayloadEnvelopeInput on the same branch (#9317) (@twoeths)
- range sync mismarks partial batches as fully downloaded (#9311) (@twoeths)
- gloas checkpoint sync (#9293) (@twoeths)
- remove gloas genesis workarounds (#9308) (@nflaig)
- allow known PayloadEnvelopeInput (#9307) (@twoeths)
- queue payload envelopes in network processor (#9300) (@wemeetagain)
- drop voluntary exits invalidated by parent execution requests (#9292) (@nflaig)
- correct DA status for payload (#9278) (@twoeths)
- call fcu in importExecutionPayload (#9285) (@wemeetagain)
- avoid metrics crash on payload envelope publish (#9279) (@lodekeeper)
- clone block header during payload envelope verification (#9277) (@nflaig)
- properly handle starting from gloas at genesis (#9273) (@nflaig)
- emit
payload_attributesfor local proposals by default (#9258) (@eth2353) - revert anchor block PTC vote override (#9264) (@lodekeeper)
- add check on bid gossip for blob kzg commitment len (#9261) (@nflaig)
- drop payloadStatus from Checkpoint (#9259) (@twoeths)
- gate loadOtherState validators/balances preload behind opt-in (#9245) (@twoeths)
- use fork choice for parent payload status in block production (#9209) (@nflaig)
- correct proposer boost logic and getParentNodeIndex for gloas (#9165) (@twoeths)
- reject same-slot full attestation votes for gloas (#9205) (@nflaig)
- check if pending deposit exists before applying to builder (#9180) (@nflaig)
- validate MIN_EPOCHS for blob/data column by range/root requests (#9173) (@nflaig)
- initialize anchor block PTC votes to all-true (#9188) (@lodekeeper)
- ignore beacon block if parent payload unknown (#9178) (@nflaig)
- use expected withdrawals from state when parent is empty (#9189) (@nflaig)
- skip light client processing for gloas blocks (#9191) (@nflaig)
- only allow attestations for known payload statuses (#9177) (@nflaig)
- cli: skip backtick code spans in docs sanitizer (#9334) (@lodekeeper)
Refactoring
- revert dual-state from regen, block production, and metrics (#9218) (@ensi321)
- revert dual-state cache architecture from ePBS (#9215) (@ensi321)
- use consistent names for state after payload is applied (#9175) (@nflaig)
- align bid filtering with consensus spec (#9182) (@nflaig)
Continuous Integration
- drop redundant pnpm bootstrap on arm64 publish (#9345) (@lodekeeper)
Tests
- fix unknownBlockSync e2e assertions for gloas (#9276) (@nflaig)
- add bellatrix and capella gossip validation spec tests (#9192) (@nflaig)
Maintenance
- index proposer preferences by slot first (#9312) (@markolazic01)
- more logs for range sync (#9302) (@twoeths)
- remove isParentBlockFull (#9280) (@nflaig)
- remove epoch_boundary sanity handler (#9270) (@nflaig)
- fail nightly spec tests workflow if any tests failed (#9271) (@nflaig)
- add workflow to run nightly spec tests (#9268) (@nflaig)
- bump kurtosis-assertoor action to v1.0.1 to fix nightly sim (#9266) (@lodekeeper)
- merge v1.42.0 back to unstable (#9210) (@matthewkeil)
- review import execution payload (#9174) (@nflaig)
- deps: bump fastify from 5.8.3 to 5.8.5 (#9250) (@dependabot[bot])
- deps: bump docker/login-action from 4.0.0 to 4.1.0 in the actions group (#9195) (@dependabot[bot])
Documentation
- clarify --serveHistoricalState and --chain.pruneHistory help text (#9328) (@lodekeeper)
- update RELEASE.md (#9172) (@matthewkeil)
- add spec comment for envelope signature validation (#9184) (@nflaig)