diff --git a/bin/ream/assets/lean/sample_spec.yml b/bin/ream/assets/lean/sample_spec.yml index 36f64dc91..173221934 100644 --- a/bin/ream/assets/lean/sample_spec.yml +++ b/bin/ream/assets/lean/sample_spec.yml @@ -1,3 +1,4 @@ SECONDS_PER_SLOT: 12 GENESIS_TIME: 0 +JUSTIFICATION_LOOKBACK_SLOTS: 3 NUM_VALIDATORS: 4 diff --git a/crates/common/network_spec/src/networks/lean.rs b/crates/common/network_spec/src/networks/lean.rs index 28c9d6d86..dfed7d4a7 100644 --- a/crates/common/network_spec/src/networks/lean.rs +++ b/crates/common/network_spec/src/networks/lean.rs @@ -12,6 +12,7 @@ pub static LEAN_NETWORK_SPEC: OnceLock> = OnceLock::new(); #[serde(rename_all = "UPPERCASE")] pub struct LeanNetworkSpec { pub genesis_time: u64, + pub justification_lookback_slots: u64, pub seconds_per_slot: u64, pub num_validators: u64, } @@ -27,6 +28,7 @@ impl LeanNetworkSpec { Arc::new(Self { genesis_time: current_timestamp + 3, + justification_lookback_slots: 3, seconds_per_slot: 4, num_validators: 4, }) diff --git a/crates/networking/p2p/src/gossipsub/lean/configurations.rs b/crates/networking/p2p/src/gossipsub/lean/configurations.rs index daa79a3ee..05284c3e2 100644 --- a/crates/networking/p2p/src/gossipsub/lean/configurations.rs +++ b/crates/networking/p2p/src/gossipsub/lean/configurations.rs @@ -1,7 +1,6 @@ use std::time::Duration; use libp2p::gossipsub::{Config, ConfigBuilder, MessageId, ValidationMode}; -use ream_consensus_misc::constants::beacon::SLOTS_PER_EPOCH; use ream_network_spec::networks::lean_network_spec; use sha2::{Digest, Sha256}; @@ -31,7 +30,9 @@ impl Default for LeanGossipsubConfig { .history_gossip(3) .max_messages_per_rpc(Some(500)) .duplicate_cache_time(Duration::from_secs( - SLOTS_PER_EPOCH * lean_network_spec().seconds_per_slot * 2, + lean_network_spec().justification_lookback_slots + * lean_network_spec().seconds_per_slot + * 2, )) .validate_messages() .validation_mode(ValidationMode::Anonymous)