v7.1.0 - 2025-12-10
This release includes several key features/fixes. If you are running v7.0.0 then you should update to v7.0.1 or later and remove the flag --disable-last-epoch-targets.
Release highlights:
- Backfill is now supported in Fulu. Backfill from checkpoint sync now supports data columns. Run with
--enable-backfillwhen using checkpoint sync. - A new node configuration to custody enough data columns to reconstruct blobs. Use flag
--semi-supernodeto custody at least 50% of the data columns. - Critical fixes in attestation processing.
A post mortem doc with full details on the mainnet attestation processing issue from December 4th is expected in the coming days.
Added
- add fulu support to light client processing. [PR]
- Record data column gossip KZG batch verification latency in both the pooled worker and fallback paths so the
beacon_kzg_verification_data_column_batch_millisecondshistogram reflects gossip traffic, annotated withpathlabels to distinguish the sources. [PR] - Implement Gloas state. [PR]
- Add initial configs for the state-diff feature. [PR]
- Add kv functions for the state-diff feature. [PR]
- Add supported version for fork versions. [PR]
- prometheus metric
gossip_attestation_verification_millisecondsto track attestation gossip topic validation latency. [PR] - Integrate state-diff into
State(). [PR] - Implement Gloas fork support in consensus-types/blocks with factory methods, getters, setters, and proto handling. [PR]
- Integrate state-diff into
HasState(). [PR] - Added
--semi-supernodeflag to custody half of a super node's datacolumn requirements but allowing for reconstruction for blob retrieval. [PR] - Data column backfill. [PR]
- Backfill metrics for columns: backfill_data_column_sidecar_downloaded, backfill_data_column_sidecar_downloaded_bytes, backfill_batch_columns_download_ms, backfill_batch_columns_verify_ms. [PR]
- prometheus summary
gossip_data_column_sidecar_arrival_millisecondsto track data column sidecar arrival latency since slot start. [PR]
Changed
- Improve readability in slashing import and remove duplicated code. [PR]
- Use dependent root instead of target when possible. [PR]
- Changed
--subscribe-all-data-subnetsflag to--supernodeand aliased--subscribe-all-data-subnetsfor existing users. [PR] - Use explicit slot component timing configs. [PR]
- Downgraded log level from INFO to DEBUG on PrepareBeaconProposer updated fee recipients. [PR]
- Change the logging behaviour of Updated fee recipients to only log count of validators at Debug level and all validator indices at Trace level. [PR]
- Stop emitting payload attribute events during late block handling when we are not proposing the next slot. [PR]
- Initialize the
ExecutionRequestsfield in gossip block map. [PR] - Avoid redundant WithHttpEndpoint when JWT is provided. [PR]
- Removed dead slot parameter from blobCacheEntry.filter. [PR]
- Added log prefix to the
genesispackage. [PR] - Added log prefix to the
paramspackage. [PR] WithGenesisValidatorsRoot: Use camelCase for log field param. [PR]- Move
Origin checkpoint found in dbfrom WARN to INFO, since it is the expected behaviour. [PR] - backfill metrics that changed name and/or histogram buckets: backfill_batch_time_verify -> backfill_batch_verify_ms, backfill_batch_time_waiting -> backfill_batch_waiting_ms, backfill_batch_time_roundtrip -> backfill_batch_roundtrip_ms, backfill_blocks_bytes_downloaded -> backfill_blocks_downloaded_bytes, backfill_batch_time_verify -> backfill_batch_verify_ms, backfill_batch_blocks_time_download -> backfill_batch_blocks_download_ms, backfill_batch_blobs_time_download -> backfill_batch_blobs_download_ms, backfill_blobs_bytes_downloaded -> backfill_blocks_downloaded_bytes. [PR]
- Move the "Not enough connected peers" (for a given subnet) from WARN to DEBUG. [PR]
blobsDataFromStoredDataColumns: Ask the use to use the--supernodeflag and shorten the error mesage. [PR]- Introduced flag
--ignore-unviable-attestations(replaces and deprecates--disable-last-epoch-targets) to drop attestations whose target state is not viable; default remains to process them unless explicitly enabled. [PR]
Removed
- Remove validator cross-client from end-to-end tests. [PR]
NUMBER_OF_COLUMNSconfiguration (not in the specification any more, replaced by a preset). [PR]MAX_CELLS_IN_EXTENDED_MATRIXconfiguration (not in the specification any more). [PR]
Fixed
- Nil check for block if it doesn't exist in the DB in fetchOriginSidecars. [PR]
- Fix proposals progress bar count #16020. [PR]
- Move
BlockGossipReceivedevent to the end of gossip validation. [PR] - Fix state diff repetitive anchor slot bug. [PR]
- Check the JWT secret length is exactly 256 bits (32 bytes) as per Engine API specification. [PR]
- http_error_count now matches the other cases by listing the endpoint name rather than the actual URL requested. This improves metrics cardinality. [PR]
- Fix array out of bounds in static analyzer. [PR]
- fixes E2E tests to be able to start from Electra genesis fork or future forks. [PR]
- Use head state to validate attestations for old blocks if they are compatible. [PR]