From 1cba182679980d05648dea2d7f52555b73c99117 Mon Sep 17 00:00:00 2001 From: conache Date: Tue, 4 Aug 2026 11:31:03 +0300 Subject: [PATCH 1/2] Use ProgressiveTransactions type for the IL transactions field --- .../types/src/execution/inclusion_list.rs | 21 +++++++------------ .../src/execution/signed_inclusion_list.rs | 16 +++++--------- 2 files changed, 12 insertions(+), 25 deletions(-) diff --git a/consensus/types/src/execution/inclusion_list.rs b/consensus/types/src/execution/inclusion_list.rs index ead408c6ba0..2318e1382ff 100644 --- a/consensus/types/src/execution/inclusion_list.rs +++ b/consensus/types/src/execution/inclusion_list.rs @@ -1,4 +1,4 @@ -use crate::{EthSpec, ForkName, Hash256, SignedRoot, Slot, Transactions}; +use crate::{ForkName, Hash256, ProgressiveTransactions, SignedRoot, Slot}; use context_deserialize::context_deserialize; use educe::Educe; use serde::{Deserialize, Serialize}; @@ -6,30 +6,23 @@ use ssz_derive::{Decode, Encode}; use tree_hash_derive::TreeHash; #[derive(Default, Debug, Clone, Serialize, Encode, Decode, Deserialize, TreeHash, Educe)] -#[cfg_attr( - feature = "arbitrary", - derive(arbitrary::Arbitrary), - arbitrary(bound = "E: EthSpec") -)] +#[cfg_attr(feature = "arbitrary", derive(arbitrary::Arbitrary))] #[educe(PartialEq, Hash)] -#[serde(bound = "E: EthSpec")] #[context_deserialize(ForkName)] -pub struct InclusionList { +pub struct InclusionList { pub slot: Slot, #[serde(with = "serde_utils::quoted_u64")] pub validator_index: u64, pub inclusion_list_committee_root: Hash256, - // TODO(heze): switch to using `ProgressiveList` once the support for EIP-7916 is added. - #[serde(with = "ssz_types::serde_utils::list_of_hex_var_list")] - pub transactions: Transactions, + #[serde(with = "ssz_types::serde_utils::prog_list_of_hex_prog_var_list")] + pub transactions: ProgressiveTransactions, } -impl SignedRoot for InclusionList {} +impl SignedRoot for InclusionList {} #[cfg(test)] mod tests { use super::*; - use crate::MainnetEthSpec; - ssz_and_tree_hash_tests!(InclusionList); + ssz_and_tree_hash_tests!(InclusionList); } diff --git a/consensus/types/src/execution/signed_inclusion_list.rs b/consensus/types/src/execution/signed_inclusion_list.rs index 14786ceb0a0..a0cb246f8d9 100644 --- a/consensus/types/src/execution/signed_inclusion_list.rs +++ b/consensus/types/src/execution/signed_inclusion_list.rs @@ -1,5 +1,5 @@ +use crate::ForkName; use crate::execution::InclusionList; -use crate::{EthSpec, ForkName}; use bls::Signature; use context_deserialize::context_deserialize; use educe::Educe; @@ -8,23 +8,17 @@ use ssz_derive::{Decode, Encode}; use tree_hash_derive::TreeHash; #[derive(TreeHash, Debug, Clone, Encode, Decode, Serialize, Deserialize, Educe)] -#[cfg_attr( - feature = "arbitrary", - derive(arbitrary::Arbitrary), - arbitrary(bound = "E: EthSpec") -)] +#[cfg_attr(feature = "arbitrary", derive(arbitrary::Arbitrary))] #[educe(PartialEq, Hash)] -#[serde(bound = "E: EthSpec")] #[context_deserialize(ForkName)] -pub struct SignedInclusionList { - pub message: InclusionList, +pub struct SignedInclusionList { + pub message: InclusionList, pub signature: Signature, } #[cfg(test)] mod tests { use super::*; - use crate::MainnetEthSpec; - ssz_and_tree_hash_tests!(SignedInclusionList); + ssz_and_tree_hash_tests!(SignedInclusionList); } From f5b57319918e5dce9423705a788305913f22f253 Mon Sep 17 00:00:00 2001 From: conache Date: Tue, 11 Aug 2026 14:33:41 +0300 Subject: [PATCH 2/2] Fix type declarations --- .../src/per_block_processing/signature_sets.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/consensus/state_processing/src/per_block_processing/signature_sets.rs b/consensus/state_processing/src/per_block_processing/signature_sets.rs index 5340efd87fb..f084e259f06 100644 --- a/consensus/state_processing/src/per_block_processing/signature_sets.rs +++ b/consensus/state_processing/src/per_block_processing/signature_sets.rs @@ -484,7 +484,7 @@ where pub fn inclusion_list_signature_set<'a, E, F>( state: &'a BeaconState, get_pubkey: F, - signed_inclusion_list: &'a SignedInclusionList, + signed_inclusion_list: &'a SignedInclusionList, spec: &'a ChainSpec, ) -> Result> where @@ -877,7 +877,7 @@ mod inclusion_list_signature_tests { let spec = harness.spec.clone(); let validator_index = 3usize; - let message = InclusionList:: { + let message = InclusionList { slot: state.slot(), validator_index: validator_index as u64, dependent_root: Hash256::ZERO, @@ -913,7 +913,7 @@ mod inclusion_list_signature_tests { let claimed_index = 3usize; let signer_index = 4usize; - let message = InclusionList:: { + let message = InclusionList { slot: state.slot(), validator_index: claimed_index as u64, dependent_root: Hash256::ZERO,