diff --git a/rs/consensus/certification/src/certifier.rs b/rs/consensus/certification/src/certifier.rs index 69886d36567c..3c47e72215d7 100644 --- a/rs/consensus/certification/src/certifier.rs +++ b/rs/consensus/certification/src/certifier.rs @@ -705,7 +705,6 @@ mod tests { use ic_test_utilities_logger::with_test_replica_logger; use ic_test_utilities_registry::SubnetRecordBuilder; use ic_test_utilities_types::ids::{node_test_id, subnet_test_id}; - use ic_types::backwards_compatibility::BackwardsCompatible; use ic_types::consensus::{BlockPayload, HashedBlock, Payload, dkg::SplittingArgs}; use ic_types::{ CryptoHashOfPartialState, Height, @@ -1675,7 +1674,7 @@ mod tests { let mut proposal = pool.make_next_block(); let block = proposal.content.as_mut(); let mut payload = block.payload.as_ref().as_summary().clone(); - payload.dkg.subnet_splitting_status = BackwardsCompatible::new_for_test_only(Some(status)); + payload.dkg.subnet_splitting_status = status; block.payload = Payload::new( ic_types::crypto::crypto_hash, BlockPayload::Summary(payload), diff --git a/rs/consensus/src/consensus/status.rs b/rs/consensus/src/consensus/status.rs index 08f47ebb0cc3..08bf501a174c 100644 --- a/rs/consensus/src/consensus/status.rs +++ b/rs/consensus/src/consensus/status.rs @@ -170,7 +170,6 @@ mod tests { use ic_test_utilities_types::ids::node_test_id; use ic_types::{ ReplicaVersion, - backwards_compatibility::BackwardsCompatible, consensus::{BlockPayload, Payload, dkg::SplittingArgs}, crypto::crypto_hash, }; @@ -326,11 +325,12 @@ mod tests { ); let mut last_summary_block = PoolReader::new(&pool).get_highest_finalized_summary_block(); - let mut payload = last_summary_block.payload.as_ref().as_summary().clone(); - payload.dkg.subnet_splitting_status = - BackwardsCompatible::new_for_test_only(test_case.subnet_splitting_status); - last_summary_block.payload = - Payload::new(crypto_hash, BlockPayload::Summary(payload)); + if let Some(subnet_splitting_status) = test_case.subnet_splitting_status { + let mut payload = last_summary_block.payload.as_ref().as_summary().clone(); + payload.dkg.subnet_splitting_status = subnet_splitting_status; + last_summary_block.payload = + Payload::new(crypto_hash, BlockPayload::Summary(payload)); + } let status = get_status( test_case.current_height, diff --git a/rs/types/types/src/consensus/dkg.rs b/rs/types/types/src/consensus/dkg.rs index be5154df33ee..9d9b614f9709 100644 --- a/rs/types/types/src/consensus/dkg.rs +++ b/rs/types/types/src/consensus/dkg.rs @@ -4,7 +4,6 @@ use super::*; use crate::{ ReplicaVersion, artifact::PbArtifact, - backwards_compatibility::BackwardsCompatible, crypto::threshold_sig::ni_dkg::{ NiDkgDealing, NiDkgId, NiDkgTag, NiDkgTargetId, NiDkgTranscript, config::NiDkgConfig, @@ -279,7 +278,7 @@ pub struct DkgSummary { /// The number of intervals a DKG for the given remote target was attempted. pub remote_dkg_attempts: BTreeMap, /// Status of the subnet splitting. - pub subnet_splitting_status: BackwardsCompatible, + pub subnet_splitting_status: SubnetSplittingStatus, } impl DkgSummary { @@ -307,7 +306,7 @@ impl DkgSummary { next_interval_length, height, remote_dkg_attempts, - subnet_splitting_status: BackwardsCompatible::new(SubnetSplittingStatus::NotScheduled), + subnet_splitting_status: SubnetSplittingStatus::NotScheduled, } } @@ -393,9 +392,6 @@ impl DkgSummary { pub fn subnet_splitting_status(&self) -> SubnetSplittingStatus { self.subnet_splitting_status - .as_ref() - .copied() - .unwrap_or_default() } } @@ -467,10 +463,9 @@ impl From<&DkgSummary> for pb::Summary { summary.transcripts_for_remote_subnets.as_slice(), ), remote_dkg_attempts: build_remote_dkg_attempts_vec(&summary.remote_dkg_attempts), - subnet_splitting_status: summary - .subnet_splitting_status - .as_ref() - .map(pb::summary::SubnetSplittingStatus::from), + subnet_splitting_status: Some(pb::summary::SubnetSplittingStatus::from( + summary.subnet_splitting_status, + )), } } } @@ -551,8 +546,8 @@ fn build_transcript_result( } } -impl From<&SubnetSplittingStatus> for pb::summary::SubnetSplittingStatus { - fn from(status: &SubnetSplittingStatus) -> Self { +impl From for pb::summary::SubnetSplittingStatus { + fn from(status: SubnetSplittingStatus) -> Self { match status { SubnetSplittingStatus::NotScheduled => { pb::summary::SubnetSplittingStatus::NotScheduled(()) @@ -629,8 +624,9 @@ impl TryFrom for DkgSummary { ) .map_err(ProxyDecodeError::Other)?, remote_dkg_attempts: build_remote_dkg_attempts_map(&summary.remote_dkg_attempts), - subnet_splitting_status: BackwardsCompatible::try_from_proto( + subnet_splitting_status: try_from_option_field( summary.subnet_splitting_status, + "Summary::subnet_splitting_status", )?, }) }