Skip to main content

2 posts tagged with "era"

View All Tags

Era switch to Pythagoras

· 2 min read
Mithril Team

Era switch to Pythagoras

We have introduced the Pythagoras era in the Mithril networks. The switch to Pythagoras is a significant milestone that brings new features and improvements to the Mithril protocol.

danger

Mithril signer versions compatible with the new Pythagoras era are:

  • 0.2.221
  • 0.2.209
  • 0.2.200.

All other versions are not compatible with the new era and must be updated.

tip

You can easily update your Mithril signer with this one-line command (it will be downloaded to the current directory by default; you can specify a custom folder with the -p option):

curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-signer -d latest -p $(pwd)

Era switch plan for Pythagoras

  • pre-release-preview network:

    • Create the era switch transaction (done at epoch 757)
    • Complete the era switch to Pythagoras at the transition to epoch 759
  • release-preprod network:

    • Create the era switch transaction (done at epoch 184)
    • Complete the era switch to Pythagoras at the transition to epoch 186
  • release-mainnet network:

    • Create the era switch transaction (planned for early January 2025)
    • Complete the era switch to Pythagoras.
info

We use the era switch mechanism to introduce breaking changes in the Mithril protocol. Because these features are not backward compatible with the previous era, at least 95% of the stake must be running the new version for Pythagoras to activate. Refer to the Mithril network upgrade strategy ADR for more details.

For any inquiries or assistance, don't hesitate to contact the team on the Discord channel.

Mithril Era Switch

· 2 min read
Mithril Team

Update 2023/03/10: The Era Switch behavior has been activated on the release-preprod network.

Update 2023/03/08: The Era Switch behavior has been activated on the pre-release-preview network.

An new Era Switch behavior will be introduced soon to the Mithril networks

Epic: Implement eras behavior switch #707](Implement eras behavior switch #707

⚠️ The Era Switch is not deployed yet to the pre-release-preview and release-preprod network. A special announcement will be made on the ask-mithril Discord channel when a new release candidate distribution is ready.

In order to guarantee that any breaking change of the Mithril nodes does not break the Certificate Chain and the that new snapshots are consistently produced, the Mithril team has developped an Era Switch Behavior. This mechanism enables to embed new features in the signer and aggregator nodes prior ro releasing them. Also the activation of these new features will take place in a coordinated manner: all the eligible nodes will hot switch to a new era at the same Cardano epoch transition. To do so, the nodes rely on a transaction that is stored on the Cardano chain that provides era markers with the associated activations epochs for the eras.

🔥 Activating this feature will require an update of configuration of the signer nodes after updating their binary:

  • The ERA_READER_ADAPTER_TYPE env var must be set to cardano-chain
  • The ERA_READER_ADAPTER_PARAMS env var must be set to the result of the command jq -nc --arg address $(wget -q -O - **YOUR_ERA_READER_ADDRESS**) --arg verification_key $(wget -q -O - **YOUR_ERA_READER_VERIFICATION_KEY**) '{"address": $address, "verification_key": $verification_key}' (the YOUR_ERA_READER_ADDRESS and YOUR_ERA_READER_VERIFICATION_KEY are values provided in the networks configuration matrix)

Here is the configuration values that should be used on pre-release-preview:

ERA_READER_ADAPTER_TYPE=cardano-chain
ERA_READER_ADAPTER_PARAMS={"address":"addr_test1qrv5xfwh043mlc3vk5d97s4nmhxu7cmleyssvhx37gkfyejfe8d38v3vsfgetjafgrsdc49krug8wf04h5rmtengtejqlxrksk","verification_key":"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d"}

Here is the configuration values that should be used on release-preprod:

ERA_READER_ADAPTER_TYPE=cardano-chain
ERA_READER_ADAPTER_PARAMS={"address":"addr_test1qpkyv2ws0deszm67t840sdnruqgr492n80g3y96xw3p2ksk6suj5musy6w8lsg3yjd09cnpgctc2qh386rtxphxt248qr0npnx","verification_key":"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d"}

All these information will be available at the updated Run a Mithril Signer node (SPO) guide.

Here is a schema that illustrates the era switch behavior: Era Switch Schema

More information is also available at this ADR.

Feel free to reach out to us on the Discord channel for questions and/or help.