From f71d69755d3961474c38e7025064e848f379dbe1 Mon Sep 17 00:00:00 2001 From: kevaundray Date: Wed, 10 Sep 2025 14:48:11 +0100 Subject: [PATCH] chore: add comment to PendingComponents (#7979) Adds doc comment Co-Authored-By: Kevaundray Wedderburn Co-Authored-By: Jimmy Chen --- .../src/data_availability_checker/overflow_lru_cache.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/beacon_node/beacon_chain/src/data_availability_checker/overflow_lru_cache.rs b/beacon_node/beacon_chain/src/data_availability_checker/overflow_lru_cache.rs index eaea2f70da..7f083139ee 100644 --- a/beacon_node/beacon_chain/src/data_availability_checker/overflow_lru_cache.rs +++ b/beacon_node/beacon_chain/src/data_availability_checker/overflow_lru_cache.rs @@ -26,6 +26,15 @@ use types::{ /// /// The blobs are all gossip and kzg verified. /// The block has completed all verifications except the availability check. +/// +/// There are currently three distinct hardfork eras that one should take note of: +/// - Pre-Deneb: No availability requirements (Block is immediately available) +/// - Post-Deneb, Pre-PeerDAS: Blobs are needed, but columns are not for the availability check +/// - Post-PeerDAS: Columns are needed, but blobs are not for the availability check +/// +/// Note: from this, one can immediately see that `verified_blobs` and `verified_data_columns` +/// are mutually exclusive. i.e. If we are verifying columns to determine a block's availability +/// we are ignoring the `verified_blobs` field. pub struct PendingComponents { pub block_root: Hash256, pub verified_blobs: RuntimeFixedVector>>,