From ad4d1dbbb2e225730e2e38dede9f429ccef72905 Mon Sep 17 00:00:00 2001 From: DJO <790521+Alenar@users.noreply.github.com> Date: Wed, 18 Sep 2024 17:16:47 +0200 Subject: [PATCH] refactor+style: Implement changes asked in PR reviews * Simpify some code docs. * Enhance `delete_buffered_single_signature` tests * Make some naming more clear --- .../delete_buffered_single_signature.rs | 26 ++++++++--- .../buffered_single_signature_record.rs | 11 +++++ .../buffered_single_signature_repository.rs | 25 ++++------- .../http_server/routes/signatures_routes.rs | 16 +++---- mithril-aggregator/src/multi_signer.rs | 8 ++-- .../services/certifier/buffered_certifier.rs | 44 +++++++++---------- .../services/certifier/certifier_service.rs | 8 ++-- .../src/services/certifier/interface.rs | 6 +-- .../tools/single_signature_authenticator.rs | 27 ++++++++---- ...te_certificate_with_buffered_signatures.rs | 3 -- .../test_extensions/aggregator_observer.rs | 4 -- .../src/entities/single_signatures.rs | 2 +- openapi.yaml | 2 +- 13 files changed, 101 insertions(+), 81 deletions(-) diff --git a/mithril-aggregator/src/database/query/buffered_single_signature/delete_buffered_single_signature.rs b/mithril-aggregator/src/database/query/buffered_single_signature/delete_buffered_single_signature.rs index ba095ad7b59..6344ea03d22 100644 --- a/mithril-aggregator/src/database/query/buffered_single_signature/delete_buffered_single_signature.rs +++ b/mithril-aggregator/src/database/query/buffered_single_signature/delete_buffered_single_signature.rs @@ -56,6 +56,7 @@ mod tests { use mithril_persistence::sqlite::ConnectionExtensions; use crate::database::query::GetBufferedSingleSignatureQuery; + use crate::database::record::strip_buffered_sigs_date; use crate::database::test_helper::{insert_buffered_single_signatures, main_db_connection}; use super::*; @@ -82,10 +83,17 @@ mod tests { .unwrap(); assert_eq!(2, cursor.count()); - let cursor = connection - .fetch(GetBufferedSingleSignatureQuery::all()) + let remaining_records: Vec = connection + .fetch_collect(GetBufferedSingleSignatureQuery::all()) .unwrap(); - assert_eq!(3, cursor.count()); + assert_eq!( + strip_buffered_sigs_date(&BufferedSingleSignatureRecord::fakes(&[ + ("party_2", CardanoTransactions), + ("party_1", CardanoTransactions), + ("party_2", MithrilStakeDistribution), + ])), + strip_buffered_sigs_date(&remaining_records) + ); let cursor = connection .fetch( @@ -97,9 +105,15 @@ mod tests { .unwrap(); assert_eq!(2, cursor.count()); - let cursor = connection - .fetch(GetBufferedSingleSignatureQuery::all()) + let remaining_records: Vec = connection + .fetch_collect(GetBufferedSingleSignatureQuery::all()) .unwrap(); - assert_eq!(1, cursor.count()); + assert_eq!( + strip_buffered_sigs_date(&BufferedSingleSignatureRecord::fakes(&[( + "party_2", + MithrilStakeDistribution + ),])), + strip_buffered_sigs_date(&remaining_records) + ); } } diff --git a/mithril-aggregator/src/database/record/buffered_single_signature_record.rs b/mithril-aggregator/src/database/record/buffered_single_signature_record.rs index 1205659e4fd..8207a682ebd 100644 --- a/mithril-aggregator/src/database/record/buffered_single_signature_record.rs +++ b/mithril-aggregator/src/database/record/buffered_single_signature_record.rs @@ -160,6 +160,17 @@ impl SqLiteEntity for BufferedSingleSignatureRecord { } } +/// Test only - strip the date from the given records to make them comparable. +#[cfg(test)] +pub(crate) fn strip_buffered_sigs_date( + records: &[BufferedSingleSignatureRecord], +) -> Vec { + records + .iter() + .map(BufferedSingleSignatureRecord::with_stripped_date) + .collect::>() +} + #[cfg(test)] mod tests { use mithril_common::entities::SignedEntityTypeDiscriminants::{ diff --git a/mithril-aggregator/src/database/repository/buffered_single_signature_repository.rs b/mithril-aggregator/src/database/repository/buffered_single_signature_repository.rs index cdd8815d7a3..8ce9dac196c 100644 --- a/mithril-aggregator/src/database/repository/buffered_single_signature_repository.rs +++ b/mithril-aggregator/src/database/repository/buffered_single_signature_repository.rs @@ -107,18 +107,11 @@ mod tests { }; use mithril_common::test_utils::fake_keys; - use crate::database::record::BufferedSingleSignatureRecord; + use crate::database::record::{strip_buffered_sigs_date, BufferedSingleSignatureRecord}; use crate::database::test_helper::{insert_buffered_single_signatures, main_db_connection}; use super::*; - fn strip_date(records: &[BufferedSingleSignatureRecord]) -> Vec { - records - .iter() - .map(BufferedSingleSignatureRecord::with_stripped_date) - .collect::>() - } - #[test] fn retrieve_all() { let connection = main_db_connection().unwrap(); @@ -136,12 +129,12 @@ mod tests { let buffered_signatures_ctx = store.get_all().unwrap(); assert_eq!( - strip_date(&BufferedSingleSignatureRecord::fakes(&[ + strip_buffered_sigs_date(&BufferedSingleSignatureRecord::fakes(&[ ("party3", MithrilStakeDistribution), ("party2", CardanoTransactions), ("party1", CardanoTransactions), ])), - strip_date(&buffered_signatures_ctx) + strip_buffered_sigs_date(&buffered_signatures_ctx) ); } @@ -164,22 +157,22 @@ mod tests { .get_by_discriminant::(CardanoTransactions) .unwrap(); assert_eq!( - strip_date(&BufferedSingleSignatureRecord::fakes(&[ + strip_buffered_sigs_date(&BufferedSingleSignatureRecord::fakes(&[ ("party2", CardanoTransactions), ("party1", CardanoTransactions), ])), - strip_date(&buffered_signatures_ctx) + strip_buffered_sigs_date(&buffered_signatures_ctx) ); let buffered_signatures_msd = store .get_by_discriminant::(MithrilStakeDistribution) .unwrap(); assert_eq!( - strip_date(&BufferedSingleSignatureRecord::fakes(&[( + strip_buffered_sigs_date(&BufferedSingleSignatureRecord::fakes(&[( "party3", MithrilStakeDistribution ),])), - strip_date(&buffered_signatures_msd) + strip_buffered_sigs_date(&buffered_signatures_msd) ); } @@ -295,11 +288,11 @@ mod tests { let remaining_msd_sigs = store.get_all().unwrap(); assert_eq!( - strip_date(&BufferedSingleSignatureRecord::fakes(&[ + strip_buffered_sigs_date(&BufferedSingleSignatureRecord::fakes(&[ ("party4", CardanoTransactions), ("party2", MithrilStakeDistribution), ])), - strip_date(&remaining_msd_sigs) + strip_buffered_sigs_date(&remaining_msd_sigs) ); } } diff --git a/mithril-aggregator/src/http_server/routes/signatures_routes.rs b/mithril-aggregator/src/http_server/routes/signatures_routes.rs index 6257dea1926..f60d6f9f1d7 100644 --- a/mithril-aggregator/src/http_server/routes/signatures_routes.rs +++ b/mithril-aggregator/src/http_server/routes/signatures_routes.rs @@ -36,7 +36,7 @@ mod handlers { use crate::{ http_server::routes::reply, message_adapters::FromRegisterSingleSignatureAdapter, - services::{CertifierService, CertifierServiceError, RegistrationStatus}, + services::{CertifierService, CertifierServiceError, SignatureRegistrationStatus}, unwrap_to_internal_server_error, SingleSignatureAuthenticator, }; @@ -99,8 +99,8 @@ mod handlers { Ok(reply::server_error(err)) } }, - Ok(RegistrationStatus::Registered) => Ok(reply::empty(StatusCode::CREATED)), - Ok(RegistrationStatus::Buffered) => Ok(reply::empty(StatusCode::ACCEPTED)), + Ok(SignatureRegistrationStatus::Registered) => Ok(reply::empty(StatusCode::CREATED)), + Ok(SignatureRegistrationStatus::Buffered) => Ok(reply::empty(StatusCode::ACCEPTED)), } } } @@ -119,7 +119,7 @@ mod tests { use crate::{ http_server::SERVER_BASE_PATH, initialize_dependencies, - services::{CertifierServiceError, MockCertifierService, RegistrationStatus}, + services::{CertifierServiceError, MockCertifierService, SignatureRegistrationStatus}, SingleSignatureAuthenticator, }; @@ -145,7 +145,7 @@ mod tests { .expect_register_single_signature() .withf(|_, signature| signature.is_authenticated()) .once() - .return_once(move |_, _| Ok(RegistrationStatus::Registered)); + .return_once(move |_, _| Ok(SignatureRegistrationStatus::Registered)); let mut dependency_manager = initialize_dependencies().await; dependency_manager.certifier_service = Arc::new(mock_certifier_service); dependency_manager.single_signer_authenticator = @@ -210,7 +210,7 @@ mod tests { let mut mock_certifier_service = MockCertifierService::new(); mock_certifier_service .expect_register_single_signature() - .return_once(move |_, _| Ok(RegistrationStatus::Registered)); + .return_once(move |_, _| Ok(SignatureRegistrationStatus::Registered)); let mut dependency_manager = initialize_dependencies().await; dependency_manager.certifier_service = Arc::new(mock_certifier_service); @@ -243,7 +243,7 @@ mod tests { let mut mock_certifier_service = MockCertifierService::new(); mock_certifier_service .expect_register_single_signature() - .return_once(move |_, _| Ok(RegistrationStatus::Buffered)); + .return_once(move |_, _| Ok(SignatureRegistrationStatus::Buffered)); let mut dependency_manager = initialize_dependencies().await; dependency_manager.certifier_service = Arc::new(mock_certifier_service); @@ -276,7 +276,7 @@ mod tests { let mut mock_certifier_service = MockCertifierService::new(); mock_certifier_service .expect_register_single_signature() - .return_once(move |_, _| Ok(RegistrationStatus::Registered)); + .return_once(move |_, _| Ok(SignatureRegistrationStatus::Registered)); let mut dependency_manager = initialize_dependencies().await; dependency_manager.certifier_service = Arc::new(mock_certifier_service); diff --git a/mithril-aggregator/src/multi_signer.rs b/mithril-aggregator/src/multi_signer.rs index 84e3ddc4650..b4aded9ee96 100644 --- a/mithril-aggregator/src/multi_signer.rs +++ b/mithril-aggregator/src/multi_signer.rs @@ -27,7 +27,7 @@ pub trait MultiSigner: Sync + Send { ) -> StdResult<()>; /// Verify a single signature using the stake distribution of the next epoch - async fn verify_single_signature_for_next_epoch( + async fn verify_single_signature_for_next_stake_distribution( &self, message: &str, signatures: &entities::SingleSignatures, @@ -87,7 +87,7 @@ impl MultiSigner for MultiSignerImpl { self.run_verify_single_signature(message, single_signature, protocol_multi_signer) } - async fn verify_single_signature_for_next_epoch( + async fn verify_single_signature_for_next_stake_distribution( &self, message: &str, single_signature: &entities::SingleSignatures, @@ -190,7 +190,7 @@ mod tests { .await .unwrap(); - multi_signer.verify_single_signature_for_next_epoch(&message.to_message(), &signature).await.expect_err( + multi_signer.verify_single_signature_for_next_stake_distribution(&message.to_message(), &signature).await.expect_err( "single signature issued in the current epoch should not be valid for the next epoch", ); } @@ -199,7 +199,7 @@ mod tests { let next_epoch_signature = next_fixture.signers_fixture()[0].sign(&message).unwrap(); multi_signer - .verify_single_signature_for_next_epoch( + .verify_single_signature_for_next_stake_distribution( &message.to_message(), &next_epoch_signature, ) diff --git a/mithril-aggregator/src/services/certifier/buffered_certifier.rs b/mithril-aggregator/src/services/certifier/buffered_certifier.rs index 5f5fea93ce2..7edf5538798 100644 --- a/mithril-aggregator/src/services/certifier/buffered_certifier.rs +++ b/mithril-aggregator/src/services/certifier/buffered_certifier.rs @@ -10,10 +10,11 @@ use mithril_common::StdResult; use crate::entities::OpenMessage; use crate::services::{ - BufferedSingleSignatureStore, CertifierService, CertifierServiceError, RegistrationStatus, + BufferedSingleSignatureStore, CertifierService, CertifierServiceError, + SignatureRegistrationStatus, }; -/// A decorator of [CertifierService] that buffers that can buffer registration of single signatures +/// A decorator of [CertifierService] that can buffer registration of single signatures /// when the open message is not yet created. /// /// When an open message is created, buffered single signatures for the open message type are @@ -90,7 +91,7 @@ impl CertifierService for BufferedCertifierService { &self, signed_entity_type: &SignedEntityType, signature: &SingleSignatures, - ) -> StdResult { + ) -> StdResult { match self .certifier_service .register_single_signature(signed_entity_type, signature) @@ -110,7 +111,7 @@ impl CertifierService for BufferedCertifierService { .buffer_signature(signed_entity_type.into(), signature) .await?; - Ok(RegistrationStatus::Buffered) + Ok(SignatureRegistrationStatus::Buffered) } _ => Err(error), }, @@ -122,14 +123,8 @@ impl CertifierService for BufferedCertifierService { signed_entity_type: &SignedEntityType, protocol_message: &ProtocolMessage, ) -> StdResult { - // IMPORTANT: this method should not fail if the open message creation succeeds. - // else: - // 1 - state machine won't create a pending certificate for the signed entity type - // 2 - Without a pending certificate, the signers won't send their signatures - // 3 - state machine will retry the transition to signing and, since an open message was - // opened for the signed entity type, it will try the next on the list. - // 4 - since the state machine never was in signing it will never try to aggregate - // signatures for the signed entity type + // IMPORTANT: this method should not fail if the open message creation succeeds + // Otherwise, the state machine won't aggregate signatures for this open message. let creation_result = self .certifier_service @@ -234,7 +229,10 @@ mod tests { async fn run_register_signature_scenario( decorated_certifier_mock_config: impl FnOnce(&mut MockCertifierService), signature_to_register: &SingleSignatures, - ) -> (StdResult, Vec) { + ) -> ( + StdResult, + Vec, + ) { let store = Arc::new(BufferedSingleSignatureRepository::new(Arc::new( main_db_connection().unwrap(), ))); @@ -267,14 +265,14 @@ mod tests { |mock_certifier| { mock_certifier .expect_register_single_signature() - .returning(|_, _| Ok(RegistrationStatus::Registered)); + .returning(|_, _| Ok(SignatureRegistrationStatus::Registered)); }, &SingleSignatures::fake("party_1", "a message"), ) .await; let status = registration_result.expect("Registration should have succeed"); - assert_eq!(status, RegistrationStatus::Registered); + assert_eq!(status, SignatureRegistrationStatus::Registered); assert_eq!( buffered_signatures_after_registration, Vec::::new() @@ -306,7 +304,7 @@ mod tests { .await; let status = registration_result.expect("Registration should have succeed"); - assert_eq!(status, RegistrationStatus::Buffered); + assert_eq!(status, SignatureRegistrationStatus::Buffered); assert_eq!( buffered_signatures_after_registration, vec![SingleSignatures::fake("party_1", "a message")] @@ -379,14 +377,14 @@ mod tests { eq(SingleSignatures::fake("party_1", "message 1")), ) .once() - .returning(|_, _| Ok(RegistrationStatus::Registered)); + .returning(|_, _| Ok(SignatureRegistrationStatus::Registered)); mock.expect_register_single_signature() .with( eq(SignedEntityType::MithrilStakeDistribution(Epoch(5))), eq(SingleSignatures::fake("party_2", "message 2")), ) .once() - .returning(|_, _| Ok(RegistrationStatus::Registered)); + .returning(|_, _| Ok(SignatureRegistrationStatus::Registered)); }), store.clone(), TestLogger::stdout(), @@ -441,7 +439,7 @@ mod tests { mock.expect_register_single_signature() .with(always(), eq(fake_data::single_signatures(vec![1]))) - .returning(|_, _| Ok(RegistrationStatus::Registered)) + .returning(|_, _| Ok(SignatureRegistrationStatus::Registered)) .once(); mock.expect_register_single_signature() .with(always(), eq(fake_data::single_signatures(vec![2]))) @@ -455,7 +453,7 @@ mod tests { .once(); mock.expect_register_single_signature() .with(always(), eq(fake_data::single_signatures(vec![3]))) - .returning(|_, _| Ok(RegistrationStatus::Registered)) + .returning(|_, _| Ok(SignatureRegistrationStatus::Registered)) .once(); }, |mock| { @@ -482,7 +480,7 @@ mod tests { mock.expect_create_open_message() .returning(|_, _| Ok(OpenMessage::dummy())); mock.expect_register_single_signature() - .returning(|_, _| Ok(RegistrationStatus::Registered)); + .returning(|_, _| Ok(SignatureRegistrationStatus::Registered)); }, |mock| { mock.expect_get_buffered_signatures() @@ -493,7 +491,7 @@ mod tests { } #[tokio::test] - async fn do_not_return_an_error_if_getting_registering_signature_fail() { + async fn do_not_return_an_error_if_registering_signature_fail() { run_scenario( |mock| { mock.expect_create_open_message() @@ -516,7 +514,7 @@ mod tests { mock.expect_create_open_message() .returning(|_, _| Ok(OpenMessage::dummy())); mock.expect_register_single_signature() - .returning(|_, _| Ok(RegistrationStatus::Registered)); + .returning(|_, _| Ok(SignatureRegistrationStatus::Registered)); }, |mock| { mock.expect_get_buffered_signatures() diff --git a/mithril-aggregator/src/services/certifier/certifier_service.rs b/mithril-aggregator/src/services/certifier/certifier_service.rs index 7770f6cd52f..a2c26097cfc 100644 --- a/mithril-aggregator/src/services/certifier/certifier_service.rs +++ b/mithril-aggregator/src/services/certifier/certifier_service.rs @@ -20,7 +20,7 @@ use crate::database::repository::{ }; use crate::dependency_injection::EpochServiceWrapper; use crate::entities::OpenMessage; -use crate::services::{CertifierService, CertifierServiceError, RegistrationStatus}; +use crate::services::{CertifierService, CertifierServiceError, SignatureRegistrationStatus}; use crate::MultiSigner; /// Mithril CertifierService implementation @@ -105,7 +105,7 @@ impl CertifierService for MithrilCertifierService { &self, signed_entity_type: &SignedEntityType, signature: &SingleSignatures, - ) -> StdResult { + ) -> StdResult { debug!("CertifierService::register_single_signature(signed_entity_type: {signed_entity_type:?}, single_signatures: {signature:?}"); trace!("CertifierService::register_single_signature"; "complete_single_signatures" => #?signature); @@ -143,7 +143,7 @@ impl CertifierService for MithrilCertifierService { info!("CertifierService::register_single_signature: created pool '{}' single signature for {signed_entity_type:?}.", single_signature.signer_id); debug!("CertifierService::register_single_signature: created single signature for open message ID='{}'.", single_signature.open_message_id); - Ok(RegistrationStatus::Registered) + Ok(SignatureRegistrationStatus::Registered) } async fn create_open_message( @@ -638,7 +638,7 @@ mod tests { err.downcast_ref::(), Some(CertifierServiceError::InvalidSingleSignature(..)) ), - "Expected CertifierServiceError, got: '{err:?}'" + "Expected CertifierServiceError::InvalidSingleSignature, got: '{err:?}'" ); } diff --git a/mithril-aggregator/src/services/certifier/interface.rs b/mithril-aggregator/src/services/certifier/interface.rs index 96701d31abb..e59c1489573 100644 --- a/mithril-aggregator/src/services/certifier/interface.rs +++ b/mithril-aggregator/src/services/certifier/interface.rs @@ -53,7 +53,7 @@ pub enum CertifierServiceError { /// Status of a successful registration of a single signature. #[derive(Debug, Copy, Clone, PartialEq)] -pub enum RegistrationStatus { +pub enum SignatureRegistrationStatus { /// The signature was registered and will be used for the next certificate. Registered, @@ -80,7 +80,7 @@ pub trait CertifierService: Sync + Send { &self, signed_entity_type: &SignedEntityType, signature: &SingleSignatures, - ) -> StdResult; + ) -> StdResult; /// Create an open message at the given beacon. If the open message does not /// exist or exists at an older beacon, the older open messages are cleared @@ -130,7 +130,7 @@ pub trait CertifierService: Sync + Send { async fn verify_certificate_chain(&self, epoch: Epoch) -> StdResult<()>; } -/// ## BufferedSignatureStore +/// ## BufferedSingleSignatureStore /// /// Allow to buffer single signatures for later use when an open message isn't available yet. #[cfg_attr(test, mockall::automock)] diff --git a/mithril-aggregator/src/tools/single_signature_authenticator.rs b/mithril-aggregator/src/tools/single_signature_authenticator.rs index 87c77492880..768d13705eb 100644 --- a/mithril-aggregator/src/tools/single_signature_authenticator.rs +++ b/mithril-aggregator/src/tools/single_signature_authenticator.rs @@ -45,7 +45,10 @@ impl SingleSignatureAuthenticator { // new signatures using the next epoch stake distribution if self .multi_signer - .verify_single_signature_for_next_epoch(signed_message, single_signature) + .verify_single_signature_for_next_stake_distribution( + signed_message, + single_signature, + ) .await .is_ok() { @@ -84,7 +87,7 @@ impl SingleSignatureAuthenticator { .expect_verify_single_signature() .returning(|_, _| Ok(())); multi_signer - .expect_verify_single_signature_for_next_epoch() + .expect_verify_single_signature_for_next_stake_distribution() .returning(|_, _| Ok(())); Self { @@ -99,7 +102,7 @@ impl SingleSignatureAuthenticator { .expect_verify_single_signature() .returning(|_, _| Err(anyhow::anyhow!("error"))); multi_signer - .expect_verify_single_signature_for_next_epoch() + .expect_verify_single_signature_for_next_stake_distribution() .returning(|_, _| Err(anyhow::anyhow!("error"))); Self { @@ -170,7 +173,7 @@ mod tests { .expect_verify_single_signature() .returning(|_, _| Err(anyhow!("error"))); mock_config - .expect_verify_single_signature_for_next_epoch() + .expect_verify_single_signature_for_next_stake_distribution() .returning(|_, _| Ok(())); }), TestLogger::stdout(), @@ -202,8 +205,12 @@ mod tests { .expect_verify_single_signature() .returning(|_, _| Err(anyhow!("verify_single_signature error"))); mock_config - .expect_verify_single_signature_for_next_epoch() - .returning(|_, _| Err(anyhow!("verify_single_signature_for_next_epoch error"))); + .expect_verify_single_signature_for_next_stake_distribution() + .returning(|_, _| { + Err(anyhow!( + "verify_single_signature_for_next_stake_distribution error" + )) + }); }), TestLogger::stdout(), ); @@ -234,8 +241,12 @@ mod tests { .expect_verify_single_signature() .returning(|_, _| Err(anyhow!("verify_single_signature error"))); mock_config - .expect_verify_single_signature_for_next_epoch() - .returning(|_, _| Err(anyhow!("verify_single_signature_for_next_epoch error"))); + .expect_verify_single_signature_for_next_stake_distribution() + .returning(|_, _| { + Err(anyhow!( + "verify_single_signature_for_next_stake_distribution error" + )) + }); }), TestLogger::stdout(), ); diff --git a/mithril-aggregator/tests/create_certificate_with_buffered_signatures.rs b/mithril-aggregator/tests/create_certificate_with_buffered_signatures.rs index 066145074b8..de60694d359 100644 --- a/mithril-aggregator/tests/create_certificate_with_buffered_signatures.rs +++ b/mithril-aggregator/tests/create_certificate_with_buffered_signatures.rs @@ -78,9 +78,6 @@ async fn create_certificate_with_buffered_signatures() { cycle!(tester, "signing"); comment!("register signers"); - // Note: removing this registration makes the epoch_service unable to build its - // next_protocol_multi_signer because the list of next_signers is empty. - // Todo: Is this a bug ? tester .register_signers(&fixture.signers_fixture()) .await diff --git a/mithril-aggregator/tests/test_extensions/aggregator_observer.rs b/mithril-aggregator/tests/test_extensions/aggregator_observer.rs index 8965064f969..b633f43286b 100644 --- a/mithril-aggregator/tests/test_extensions/aggregator_observer.rs +++ b/mithril-aggregator/tests/test_extensions/aggregator_observer.rs @@ -62,10 +62,6 @@ impl AggregatorObserver { /// Compute the full [SignedEntityType] for the given discriminant based on the current /// [TimePoint]. - /// - /// Note: It computes what would be the signed entity type if the aggregator was working on this - /// discriminant now. - /// Consequently, it doesn't mean that an open message is available for this type. pub async fn build_current_signed_entity_type( &self, discriminant: SignedEntityTypeDiscriminants, diff --git a/mithril-common/src/entities/single_signatures.rs b/mithril-common/src/entities/single_signatures.rs index 16e6d2d965c..d800083bb90 100644 --- a/mithril-common/src/entities/single_signatures.rs +++ b/mithril-common/src/entities/single_signatures.rs @@ -67,7 +67,7 @@ impl SingleSignatures { /// Create a fake [SingleSignatures] with valid cryptographic data for testing purposes. // TODO: this method is slow due to the fixture creation, we should either make // the fixture faster or find a faster alternative. - pub fn fake, T2: Into>(party_id: T1, message: T2) -> Self { + pub fn fake, TMessage: Into>(party_id: TPartyId, message: TMessage) -> Self { use crate::entities::{ProtocolParameters}; use crate::test_utils::{MithrilFixtureBuilder, StakeDistributionGenerationMethod}; diff --git a/openapi.yaml b/openapi.yaml index 0e6d2c44d50..ae35e9d431b 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -568,7 +568,7 @@ paths: "201": description: signatures registration succeeded "202": - description: signatures registration buffered for later processing + description: signatures registration received and queued for later processing "400": description: signatures registration bad request content: