diff --git a/anchor/common/ssv_types/src/cluster.rs b/anchor/common/ssv_types/src/cluster.rs index 5205d44e..5679f5a9 100644 --- a/anchor/common/ssv_types/src/cluster.rs +++ b/anchor/common/ssv_types/src/cluster.rs @@ -1,9 +1,9 @@ +use crate::committee::CommitteeId; use crate::OperatorId; use derive_more::{Deref, From}; use indexmap::IndexSet; use ssz_derive::{Decode, Encode}; use types::{Address, Graffiti, PublicKeyBytes}; -use crate::committee::CommitteeId; /// Unique identifier for a cluster #[derive(Clone, Copy, Debug, Default, Eq, PartialEq, Hash, From, Deref)] @@ -39,7 +39,11 @@ impl Cluster { } pub fn committee_id(&self) -> CommitteeId { - self.cluster_members.iter().cloned().collect::>().into() + self.cluster_members + .iter() + .cloned() + .collect::>() + .into() } } diff --git a/anchor/common/ssv_types/src/committee.rs b/anchor/common/ssv_types/src/committee.rs index 2f98e16d..8ce3f0d7 100644 --- a/anchor/common/ssv_types/src/committee.rs +++ b/anchor/common/ssv_types/src/committee.rs @@ -1,6 +1,6 @@ +use crate::OperatorId; use alloy::primitives::keccak256; use derive_more::{Deref, From}; -use crate::OperatorId; const COMMITTEE_ID_LEN: usize = 32; diff --git a/anchor/common/ssv_types/src/msgid.rs b/anchor/common/ssv_types/src/msgid.rs index 5a33c950..b57f0e30 100644 --- a/anchor/common/ssv_types/src/msgid.rs +++ b/anchor/common/ssv_types/src/msgid.rs @@ -1,6 +1,6 @@ -use derive_more::From; use crate::committee::CommitteeId; use crate::domain_type::DomainType; +use derive_more::From; use ssz::{Decode, DecodeError, Encode}; use types::PublicKeyBytes; @@ -54,8 +54,12 @@ impl MessageId { id[0..4].copy_from_slice(&domain.0); id[4..8].copy_from_slice(&<[u8; 4]>::from(role)); match duty_executor { - DutyExecutor::Committee(committee_id) => id[24..].copy_from_slice(committee_id.as_slice()), - DutyExecutor::Validator(public_key) => id[8..].copy_from_slice(public_key.as_serialized()), + DutyExecutor::Committee(committee_id) => { + id[24..].copy_from_slice(committee_id.as_slice()) + } + DutyExecutor::Validator(public_key) => { + id[8..].copy_from_slice(public_key.as_serialized()) + } } MessageId(id) @@ -76,11 +80,11 @@ impl MessageId { pub fn duty_executor(&self) -> Option { // which kind of executor we need to get depends on the role match self.role()? { - Role::Committee => { - self.0[24..].try_into().ok().map(DutyExecutor::Committee) - } + Role::Committee => self.0[24..].try_into().ok().map(DutyExecutor::Committee), Role::Aggregator | Role::Proposer | Role::SyncCommittee => { - PublicKeyBytes::deserialize(&self.0[8..]).ok().map(DutyExecutor::Validator) + PublicKeyBytes::deserialize(&self.0[8..]) + .ok() + .map(DutyExecutor::Validator) } } } diff --git a/anchor/common/ssv_types/src/partial_sig.rs b/anchor/common/ssv_types/src/partial_sig.rs index c9aa40e5..aaa09ee3 100644 --- a/anchor/common/ssv_types/src/partial_sig.rs +++ b/anchor/common/ssv_types/src/partial_sig.rs @@ -1,7 +1,7 @@ +use crate::{OperatorId, ValidatorIndex}; use ssz::{Decode, DecodeError, Encode}; use ssz_derive::{Decode, Encode}; use types::{Hash256, Signature, Slot}; -use crate::{OperatorId, ValidatorIndex}; #[derive(Clone, Copy, Debug)] pub enum PartialSignatureKind { diff --git a/anchor/network/Cargo.toml b/anchor/network/Cargo.toml index 0f10efc1..612e567d 100644 --- a/anchor/network/Cargo.toml +++ b/anchor/network/Cargo.toml @@ -26,13 +26,13 @@ libp2p = { version = "0.54", default-features = false, features = [ "request-response", ] } lighthouse_network = { workspace = true } +qbft_manager = { workspace = true } quick-protobuf = "0.8.1" serde = { workspace = true } serde_json = "1.0.137" -ssv_types = { workspace = true } -qbft_manager = { workspace = true } signature_collector = { workspace = true } slot_clock = { workspace = true } +ssv_types = { workspace = true } ssz_types = "0.8" subnet_tracker = { workspace = true } task_executor = { workspace = true } diff --git a/anchor/qbft_manager/src/tests.rs b/anchor/qbft_manager/src/tests.rs index f8f7e95e..c982b77c 100644 --- a/anchor/qbft_manager/src/tests.rs +++ b/anchor/qbft_manager/src/tests.rs @@ -6,7 +6,7 @@ use processor::Senders; use slot_clock::{ManualSlotClock, SlotClock}; use ssv_types::consensus::{BeaconVote, QbftMessage, QbftMessageType}; use ssv_types::message::SignedSSVMessage; -use ssv_types::{Cluster, committee::CommitteeId, OperatorId, ClusterId}; +use ssv_types::{committee::CommitteeId, Cluster, ClusterId, OperatorId}; use ssz::Decode; use std::collections::HashMap; use std::sync::LazyLock; diff --git a/anchor/subnet_tracker/src/lib.rs b/anchor/subnet_tracker/src/lib.rs index 62ab4ff4..4e8b5594 100644 --- a/anchor/subnet_tracker/src/lib.rs +++ b/anchor/subnet_tracker/src/lib.rs @@ -2,6 +2,7 @@ use alloy::primitives::ruint::aliases::U256; use database::{NetworkState, UniqueIndex}; use log::warn; use serde::{Deserialize, Serialize}; +use ssv_types::committee::CommitteeId; use ssv_types::Cluster; use std::collections::HashSet; use std::ops::Deref; @@ -10,7 +11,6 @@ use task_executor::TaskExecutor; use tokio::sync::{mpsc, watch}; use tokio::time::sleep; use tracing::debug; -use ssv_types::committee::CommitteeId; #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)] #[serde(transparent)] @@ -121,11 +121,7 @@ async fn subnet_tracker( } fn get_committee_id(cluster: &Cluster) -> U256 { - let operator_ids = cluster - .cluster_members - .iter() - .cloned() - .collect::>(); + let operator_ids = cluster.cluster_members.iter().cloned().collect::>(); let id = CommitteeId::from(operator_ids); U256::from_be_bytes(*id) }