Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

As a minor extension, we have adopted a slightly different versioning convention for the Mithril distributions (<https://mithril.network/doc/adr/3#decision>)

## Mithril Distribution [XXXX] - UNRELEASED

- **BREAKING** changes in aggregator OpenAPI: removed the `next_cardano_transactions_signing_config` in `/epoch-settings` route.

- Crates versions:

| Crate | Version |
| ----- | ------- |
| N/A | `-` |

## Mithril Distribution [2537] - 2025-09-17

- Client library, CI and WASM:
Expand Down
8 changes: 4 additions & 4 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion mithril-aggregator/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "mithril-aggregator"
version = "0.7.84"
version = "0.7.85"
description = "A Mithril Aggregator server"
authors = { workspace = true }
edition = { workspace = true }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,4 @@ pub struct LeaderAggregatorEpochSettings {

/// Cardano transactions signing configuration for the current epoch
pub cardano_transactions_signing_config: Option<CardanoTransactionsSigningConfig>,

/// Cardano transactions signing configuration for the next epoch
pub next_cardano_transactions_signing_config: Option<CardanoTransactionsSigningConfig>,
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,6 @@ impl TryFromMessageAdapter<EpochSettingsMessage, LeaderAggregatorEpochSettings>
next_signers: SignerMessagePart::try_into_signers(message.next_signers)
.with_context(|| "'FromMessageAdapter' can not convert the next signers")?,
cardano_transactions_signing_config: message.cardano_transactions_signing_config,
next_cardano_transactions_signing_config: message
.next_cardano_transactions_signing_config,
};

Ok(epoch_settings)
Expand Down
33 changes: 0 additions & 33 deletions mithril-aggregator/src/services/epoch_service.rs
Original file line number Diff line number Diff line change
Expand Up @@ -80,11 +80,6 @@ pub trait EpochService: Sync + Send {
&self,
) -> StdResult<&CardanoTransactionsSigningConfig>;

/// Get next cardano transactions signing configuration used in next epoch
fn next_cardano_transactions_signing_config(
&self,
) -> StdResult<&CardanoTransactionsSigningConfig>;

/// Get aggregate verification key for current epoch
fn current_aggregate_verification_key(&self) -> StdResult<&ProtocolAggregateVerificationKey>;

Expand Down Expand Up @@ -470,15 +465,6 @@ impl EpochService for MithrilEpochService {
.cardano_transactions_signing_config)
}

fn next_cardano_transactions_signing_config(
&self,
) -> StdResult<&CardanoTransactionsSigningConfig> {
Ok(&self
.unwrap_data()?
.next_epoch_settings
.cardano_transactions_signing_config)
}

fn current_aggregate_verification_key(&self) -> StdResult<&ProtocolAggregateVerificationKey> {
Ok(&self.unwrap_computed_data()?.aggregate_verification_key)
}
Expand Down Expand Up @@ -772,15 +758,6 @@ impl EpochService for FakeEpochService {
.cardano_transactions_signing_config)
}

fn next_cardano_transactions_signing_config(
&self,
) -> StdResult<&CardanoTransactionsSigningConfig> {
Ok(&self
.unwrap_data()?
.next_epoch_settings
.cardano_transactions_signing_config)
}

fn current_aggregate_verification_key(&self) -> StdResult<&ProtocolAggregateVerificationKey> {
Ok(&self.unwrap_computed_data()?.aggregate_verification_key)
}
Expand Down Expand Up @@ -873,7 +850,6 @@ mod tests {
protocol_parameters: ProtocolParameters,
next_protocol_parameters: ProtocolParameters,
cardano_signing_config: CardanoTransactionsSigningConfig,
next_cardano_signing_config: CardanoTransactionsSigningConfig,
signer_registration_protocol_parameters: ProtocolParameters,
current_signers_with_stake: BTreeSet<SignerWithStake>,
next_signers_with_stake: BTreeSet<SignerWithStake>,
Expand Down Expand Up @@ -904,9 +880,6 @@ mod tests {
cardano_signing_config: service
.current_cardano_transactions_signing_config()?
.clone(),
next_cardano_signing_config: service
.next_cardano_transactions_signing_config()?
.clone(),
current_signers_with_stake: service
.current_signers_with_stake()?
.clone()
Expand Down Expand Up @@ -1103,7 +1076,6 @@ mod tests {
next_protocol_parameters: next_epoch_fixture.protocol_parameters(),
signer_registration_protocol_parameters,
cardano_signing_config: CardanoTransactionsSigningConfig::dummy(),
next_cardano_signing_config: CardanoTransactionsSigningConfig::dummy(),
current_signers_with_stake: current_epoch_fixture
.signers_with_stake()
.into_iter()
Expand Down Expand Up @@ -1336,10 +1308,6 @@ mod tests {
"current_cardano_transactions_signing_config",
service.current_cardano_transactions_signing_config().err(),
),
(
"next_cardano_transactions_signing_config",
service.next_cardano_transactions_signing_config().err(),
),
(
"current_signers_with_stake",
service.current_signers_with_stake().err(),
Expand Down Expand Up @@ -1394,7 +1362,6 @@ mod tests {
assert!(service.next_protocol_parameters().is_ok());
assert!(service.signer_registration_protocol_parameters().is_ok());
assert!(service.current_cardano_transactions_signing_config().is_ok());
assert!(service.next_cardano_transactions_signing_config().is_ok());
assert!(service.current_signers_with_stake().is_ok());
assert!(service.next_signers_with_stake().is_ok());
assert!(service.current_signers().is_ok());
Expand Down
18 changes: 0 additions & 18 deletions mithril-aggregator/src/services/message.rs
Original file line number Diff line number Diff line change
Expand Up @@ -165,18 +165,13 @@ impl MessageService for MithrilMessageService {
.map(|_| epoch_service.current_cardano_transactions_signing_config())
.transpose()?
.cloned();
let next_cardano_transactions_signing_config = cardano_transactions_discriminant
.map(|_| epoch_service.next_cardano_transactions_signing_config())
.transpose()?
.cloned();

let epoch_settings_message = EpochSettingsMessage {
epoch,
signer_registration_protocol_parameters,
current_signers: SignerMessagePart::from_signers(current_signers.to_vec()),
next_signers: SignerMessagePart::from_signers(next_signers.to_vec()),
cardano_transactions_signing_config,
next_cardano_transactions_signing_config,
};

Ok(epoch_settings_message)
Expand Down Expand Up @@ -472,13 +467,6 @@ mod tests {
step: BlockNumber(15)
})
);
assert_eq!(
message.next_cardano_transactions_signing_config,
Some(CardanoTransactionsSigningConfig {
security_parameter: BlockNumber(0),
step: BlockNumber(15)
})
);
}

#[tokio::test]
Expand All @@ -498,7 +486,6 @@ mod tests {
.unwrap();

assert!(message.cardano_transactions_signing_config.is_some());
assert!(message.next_cardano_transactions_signing_config.is_some(),);
}

#[tokio::test]
Expand All @@ -516,7 +503,6 @@ mod tests {
.unwrap();

assert_eq!(message.cardano_transactions_signing_config, None);
assert_eq!(message.next_cardano_transactions_signing_config, None);
}

#[tokio::test]
Expand Down Expand Up @@ -597,10 +583,6 @@ mod tests {
message.cardano_transactions_signing_config,
Some(current_epoch_settings.cardano_transactions_signing_config),
);
assert_eq!(
message.next_cardano_transactions_signing_config,
Some(next_epoch_settings.cardano_transactions_signing_config),
);
}
}

Expand Down
3 changes: 0 additions & 3 deletions mithril-aggregator/src/test/double/dummies.rs
Original file line number Diff line number Diff line change
Expand Up @@ -81,8 +81,6 @@ mod entities {
// Cardano transactions signing configuration
let cardano_transactions_signing_config =
Some(CardanoTransactionsSigningConfig::dummy());
let next_cardano_transactions_signing_config =
Some(CardanoTransactionsSigningConfig::dummy());

// Signer Epoch settings
LeaderAggregatorEpochSettings {
Expand All @@ -91,7 +89,6 @@ mod entities {
current_signers,
next_signers,
cardano_transactions_signing_config,
next_cardano_transactions_signing_config,
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion mithril-common/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "mithril-common"
version = "0.6.17"
version = "0.6.18"
description = "Common types, interfaces, and utilities for Mithril nodes."
authors = { workspace = true }
edition = { workspace = true }
Expand Down
68 changes: 56 additions & 12 deletions mithril-common/src/messages/epoch_settings.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,6 @@ pub struct EpochSettingsMessage {
/// Cardano transactions signing configuration for the current epoch
#[serde(skip_serializing_if = "Option::is_none")]
pub cardano_transactions_signing_config: Option<CardanoTransactionsSigningConfig>,

/// Cardano transactions signing configuration for the next epoch
#[serde(skip_serializing_if = "Option::is_none")]
pub next_cardano_transactions_signing_config: Option<CardanoTransactionsSigningConfig>,
}

#[cfg(test)]
Expand Down Expand Up @@ -54,13 +50,57 @@ mod tests {
"cardano_transactions_signing_config": {
"security_parameter": 70,
"step": 20
},
"next_cardano_transactions_signing_config": {
"security_parameter": 50,
"step": 10
}
}"#;

#[derive(Debug, Serialize, Deserialize, PartialEq)]
struct EpochSettingsMessageUntilV0_1_51 {
pub epoch: Epoch,

#[serde(rename = "signer_registration_protocol")]
pub signer_registration_protocol_parameters: ProtocolParameters,

pub current_signers: Vec<SignerMessagePart>,

pub next_signers: Vec<SignerMessagePart>,

#[serde(skip_serializing_if = "Option::is_none")]
pub cardano_transactions_signing_config: Option<CardanoTransactionsSigningConfig>,

#[serde(skip_serializing_if = "Option::is_none")]
pub next_cardano_transactions_signing_config: Option<CardanoTransactionsSigningConfig>,
}

fn golden_message_until_open_api_0_1_51() -> EpochSettingsMessageUntilV0_1_51 {
EpochSettingsMessageUntilV0_1_51 {
epoch: Epoch(10),
signer_registration_protocol_parameters: ProtocolParameters {
k: 500,
m: 10000,
phi_f: 0.65,
},
current_signers: vec![SignerMessagePart {
party_id: "123".to_string(),
verification_key: "key_123".to_string(),
verification_key_signature: Some("signature_123".to_string()),
operational_certificate: Some("certificate_123".to_string()),
kes_period: Some(12),
}],
next_signers: vec![SignerMessagePart {
party_id: "456".to_string(),
verification_key: "key_456".to_string(),
verification_key_signature: Some("signature_456".to_string()),
operational_certificate: Some("certificate_456".to_string()),
kes_period: Some(45),
}],
cardano_transactions_signing_config: Some(CardanoTransactionsSigningConfig {
security_parameter: BlockNumber(70),
step: BlockNumber(20),
}),
next_cardano_transactions_signing_config: None,
}
}

fn golden_current_message() -> EpochSettingsMessage {
EpochSettingsMessage {
epoch: Epoch(10),
Expand All @@ -87,13 +127,17 @@ mod tests {
security_parameter: BlockNumber(70),
step: BlockNumber(20),
}),
next_cardano_transactions_signing_config: Some(CardanoTransactionsSigningConfig {
security_parameter: BlockNumber(50),
step: BlockNumber(10),
}),
}
}

#[test]
fn test_current_json_deserialized_into_message_supported_until_open_api_0_1_51() {
let json = CURRENT_JSON;
let message: EpochSettingsMessageUntilV0_1_51 = serde_json::from_str(json).unwrap();

assert_eq!(golden_message_until_open_api_0_1_51(), message);
}

#[test]
fn test_current_json_deserialized_into_current_message() {
let json = CURRENT_JSON;
Expand Down
3 changes: 0 additions & 3 deletions mithril-common/src/test/double/dummies.rs
Original file line number Diff line number Diff line change
Expand Up @@ -412,9 +412,6 @@ mod messages {
current_signers: [SignerMessagePart::dummy()].to_vec(),
next_signers: [SignerMessagePart::dummy()].to_vec(),
cardano_transactions_signing_config: Some(CardanoTransactionsSigningConfig::dummy()),
next_cardano_transactions_signing_config: Some(
CardanoTransactionsSigningConfig::dummy(),
),
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion mithril-signer/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "mithril-signer"
version = "0.2.268"
version = "0.2.269"
description = "A Mithril Signer"
authors = { workspace = true }
edition = { workspace = true }
Expand Down
6 changes: 0 additions & 6 deletions mithril-signer/src/entities/signer_epoch_settings.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,6 @@ pub struct SignerEpochSettings {

/// Cardano transactions signing configuration for the current epoch
pub cardano_transactions_signing_config: Option<CardanoTransactionsSigningConfig>,

/// Cardano transactions signing configuration for the next epoch
pub next_cardano_transactions_signing_config: Option<CardanoTransactionsSigningConfig>,
}

#[cfg(test)]
Expand All @@ -43,8 +40,6 @@ impl mithril_common::test::double::Dummy for SignerEpochSettings {

// Cardano transactions signing configuration
let cardano_transactions_signing_config = Some(CardanoTransactionsSigningConfig::dummy());
let next_cardano_transactions_signing_config =
Some(CardanoTransactionsSigningConfig::dummy());

// Signer Epoch settings
SignerEpochSettings {
Expand All @@ -53,7 +48,6 @@ impl mithril_common::test::double::Dummy for SignerEpochSettings {
current_signers,
next_signers,
cardano_transactions_signing_config,
next_cardano_transactions_signing_config,
}
}
}
Loading
Loading