Skip to main content

70 posts tagged with "mithril"

View All Tags

· 2 min read
Jean-Philippe Raynaud

High level overview

The Mithril team released a new 2310.0 distribution that activates the era switch mechanism. They also kept implementing the migration of the aggregator stores to a relational design with the first adaptation of the stake pool store, and then the adaptation of the epoch settings & signed entity type stores. They have implemented the handling of the network API version from the Open API specifications and its automatic switch at era transition. Additionally, they optimized the stake distribution computation that now happens only once per epoch, and also enhanced the client multi-platform workflow to test the Docker images.

Finally, they have successfully completed the tests to create certificates and snapshots on a network running on the Cardano mainnet and they have fixed some bugs.

Low level overview

  • Completed the epic that implements eras behavior switch #707:
    • Completed handling the API version switch at era transition #727
  • Worked on the epic that implements a relational store in the aggregator #779:
    • Completed on the migration/adaptation of the stake_pool table #787
    • Worked on the migration/adaptation of the epoch_settings table #813
    • Worked on the migration/adaptation of the signed-entity-type table #815
    • Completed the creation of a stake distribution service #799
  • Completed the testing of Mithril with Cardano mainnet network #777
  • Completed qualifying the computation of the stake distribution #810
  • Completed the testing of the Docker client in the Mithril Client multi-platform test workflow #794
  • Worked on bugs and optimizations:
    • Fixed a bug that made computation of the stake distribution occur multiple times during an epoch #804
    • Fixed a bug that created deadlocks on the SQLite connection #807
    • Optimized the error message and the behavior of the signer node when KES keys have expired #820
    • Upgraded the infrastructure of the testing-preview and pre-release-preview networks #801
    • Re-genesis of the testing-preview network #803
    • Re-genesis of the pre-release-preview network #818

· 2 min read
Jean-Philippe Raynaud

High level overview

The Mithril team worked on deploying the era activation mechanism to their test networks and preparing the upgrade procedure to be implemented on the signer nodes run by the SPOs. They also refactored the state machines of the aggregator and signer nodes so that they can better handle critical errors, which lead to node panic, from recoverable errors. Additionally, the team continued the deployment of a new test network that runs on the Cardano mainnet and computes the stake distribution with the optimized unreleased Cardano CLI command.

Finally, they have designed the certification of generic types of data by a Mithril network and they have started implementing its first phase. Also they fixed a bug that made the client Docker image crash at startup.

Low level overview

  • Worked on the epic that implements eras behavior switch #707:
    • Completed the deployment of the era behavior switch to the test networks #752
    • Completed the enhancement of datum generation for era markers #786
    • Worked on handling the API version with an era switch #727
  • Worked on the epic that implements a relational store in the aggregator #779:
    • Worked on the migration/adaptation of the stake_pool table #787
  • Completed the refactoring of errors in the signer and aggregator state machines #665
  • Worked on testing Mithril with a mainnet Cardano network #777
  • Worked on fixing bugs with the Docker client image:
    • Fixed a bug that made the Docker client container crash at startup #769
    • Fixed a bug that prevented the restoration of a snapshot with a Docker client #791
    • Worked on testing the Docker client in the Mithril Client multi-platform test workflow #794

· 2 min read
Jean-Philippe Raynaud

High level overview

The Mithril team released a new 2306.0 distribution that implements minor fixes and updates and completes the wiring of the era activation markers reader into the signer and aggregator nodes. They also designed an event store in the aggregator and completed its implementation as a monitoring solution to provide figures for deployment rates of versions on signer nodes before activating an era switch. Additionally, the team created a dedicated command on their nodes’ CLI that allows generating and signing an era marker’s payload to be stored on the Cardano chain, as well as creating dynamic cases for the end-to-end tests they run on the CI.

Low level overview

  • Released the new distribution 2306.0
  • Completed the epic that implements signer versions deployment monitoring #718:
    • Completed the implementation an event producer/consumer via channel #738
    • Completed the creation of a database and its configuration to save the events on the consumer side #740
    • Completed the creation of events and sending them on the channel on the producer side #741
    • Completed the creation of the signer registration event #742
    • Completed the creation a query to extract the node versions stakes distribution #743
  • Worked on the epic that implements eras behavior switch #707:
    • Completed the loading of era reader adapters from config in the signer and the aggregator #732
    • Completed the implementation of an era cli command in the aggregator #755
    • Completed the implementation of a dynamic matrix of cases in CI end to end tests #760
  • Fixed some bugs:
    • Fixed the unsupported unixepoch() function #757
    • Fixed the problem that prevented some signers from signing on the testing-preview network #730
    • Update SQLite version to 3.40 in aggregator infrastructure #765

· 2 min read
Jean-Philippe Raynaud

High level overview

The Mithril team released a new 2304.1 distribution that enables the backward/forward compatibility mechanism implemented for seamlessly rolling out soft updates to Mithril networks. They completed the implementation of the era reader trait that powers the era switch behavior. The team finalized the development of the era reader adapter that retrieves era activation markers from transactions on the Cardano chain. They also completed the relational design of the aggregator store.

Finally, they created new SPO nodes on the Mithril networks and upgraded the Cardano node to version 1.35.5 on their devnet and infrastructure.

Low level overview

  • Released the new distribution 2304.1
  • Fixed a bug that prevented some signers to sign with 2304.0-prerelease #716
  • Completed the implementation of an EraChecker that checks if an era is active #708
  • Completed the implementation of an EraReader that gathers era activation data #709
  • Completed the implementation of an EraReader adapter with on chain transaction as source #710
  • Completed the relational design of the aggregator store #476
  • Completed adding a new SPO on the testing-preview network #729
  • Completed the upgrade of the Cardano node to 1.35.5 #725
  • Fixed flakiness in the CI #734

· 2 min read
Jean-Philippe Raynaud

High level overview

The Mithril team released a new 2302.0 distribution that activates the optimization of the snapshot digest computation on the signer and aggregator nodes. They have implemented a backward/forward compatibility mechanism for handling seamless soft updates of the Mithril networks without using synchronous updates when possible. The team also worked on the proof of concept to rely on an on-chain transaction to synchronously trigger the era switch of all the signer and aggregator nodes.

Finally, they finished upgrading the devnet, fixed the flakiness issues in the end-to-end tests of the CI, and upgraded the SPO documentation to set up a Mithril signer node.

Low level overview

  • Released the new distribution 2302.0
  • Implemented a backward/forward compatibility mechanism for API messages #688:
    • Implement the mechanism for the signer registration #689
    • Implement the mechanism for the signature registration #693
    • Implement the mechanism for epoch settings #695
    • Implement the mechanism for certificate pending #696
    • Implement the mechanism for certificate #697
    • Implement the mechanism for snapshots list #698
    • Implement the mechanism for snapshot #699
    • Update enforcement of API version with Semver #705
  • Completed the PoC implementation of backward compatibility with protobuf #677
  • Completed the PoC implementation of backward compatibility with avro #678
  • Completed the PoC to Read/Write transaction on chain for Era activations #672
  • Completed the upgrade Cardano devnet to 1.35.4 #523