Skip to main content

· 2 min read
Noon van der Silk

High-level summary

The last few weeks have seen a solid amount of work and changes to the user-facing side of Hydra; namely great progress on incremental commits and using Aiken for our commit validator which has yielded size/cost savings. This has also allowed us to support PlutusV3 validators and keep up to date with the cardano-api. We also made a breaking change (improvement) to the server output SnapshotConfirmed to make it easier to work with signed snapshots. Finally, we made good progress on blockfrost support by adding an option to follow the chain via blockfrost, instead of through a cardano-node. Next up we continue our focus on incremental commits and general improvements, while planning the next release.

What did the team achieve?

  • Added the raw CBOR datum in transaction outputs #1543
  • Used Aiken for commit validator #1680
  • Updated to cardano-api 9.4 #1706
  • Implemented the off-chain user journey for incremental commits #1522
  • Documentation on the incremental commits feature #1704
  • Some cleanup of unused modules and functions
  • Full transaction information in SnapshotConfirmed event #1685
  • Added blockfrost mode to hydra-chain-observer #1631

What's next?

  • Continued work on incremental commits #199
  • Improvements to memory usage #1618
  • DevEx improvements to split out components of the hydra monorepo
  • Start to plan the 0.20.0 release

· One min read
Damian Nadales

High level summary

  • Released diff-containers-1.3.0.0, fingertree-rm-1.0.0.3, cardano-lmdb-0.4.0.2, and cardano-lmdb-simple-0.7.0.1.
  • Improved IOSim:
    • Added MonadLabelledMVar (176).
    • Improved the Show instance of ScheduleMod (175).
    • Ensure labels are printed where possible in IOSimPOR (174).
  • Released Consensus packages for Node 10.0.
  • Simplified Cardano hard fork triggers (1282.
  • Decreased max permissible clock skew for headers from the future from 5s to 2s (1279).

· One min read
Jean-Philippe Raynaud

High level overview

The Mithril team completed decentralizing the signature orchestration of the Mithril network. They also completed refactoring the Prometheus metrics in the signer and started implementing them in the aggregator. Additionally, the team kept working on supporting the new Pythagoras Mithril era and created the new distribution pre-release 2442.0-pre.

Finally, they kept implementing optimizations on the node logs and enhanced the release creation workflow in the CI.

Low level overview

  • Completed the issue Aggregator uses stored signing configurations when creating signed entity type #1961
  • Completed the issue Make Cardano transactions stable in client #1952
  • Completed the issue Remove chain calls from register-signer route #1982
  • Completed the issue Aggregator panics when handling discrepancies at startup in CI #1983
  • Completed the issue Use a new GitHub Action for creating releases #1691
  • Completed the issue Refactor Prometheus metrics for signer #1990
  • Worked on the issue Release 2442 distribution #1943
  • Worked on the issue Prepare new Pythagoras Mithril era #1946
  • Worked on the issue Enhance readability of node logs #1981
  • Worked on the issue Expose Prometheus metrics for aggregator #1980

· 2 min read
Marcin Szamotulski

Overview of sprint 72

cardano-node release: 10.0

We have been working on the cardano-node-10.0 release.

Tx-Submission

We have been running an experimental build of cardano-node with new tx-sumbission logic ouroboros-network#3311. Some performance bottlenecks have been found by Karl Knutsson (CF), but not deadlocks or race conditions.

Preparations for removal of Non-P2P network code

In order to prepare for removal of the network stack we addressed two issues:

On the way we also addressed a few technical debt items:

Documentation

We updated the documentation of the peer-sharing mini-protocol: ouroboros-network#4981, ouroboros-network#4983.

We updated the SECURITY.md file according to the IntersectMBO's Open-Source Committee guidance, ouroboros-network#4986.

io-sim

· 2 min read
Alexey Kuleshevich

High level summary

We implemented the remaining improvements and fixes discovered in Conway, to be fixed during the bootstrap period:

* protection against deposit loses
* ensuring that DReps exist before delegating
* updates to SPO vote threshold calculation
* improved well-formedness check

Additionally, we added two new rules: Mempool and HardFork, that will allow us to flexibly add processing logic in the future. We also dropped pointers for Conway and enhanced predicate failure reporting for pre-Conway eras.

Finally, we added more tests - both unit and conformance tests.

Low level summary

  • pull-4647 - Drop pointers from UMap in Conway
  • pull-4642 - Mempool rule
  • pull-4553 - Address issues in auto-generated CDDL specification
  • pull-4650 - Check ppuCoinsPerUTxOBytes well-formedness
  • pull-4648 - Updated conformance to work with new MAlonzo types
  • pull-4653 - Improve color output in Imp spec
  • pull-4603 - Add more tests for voting behaviour
  • pull-4639 - Prevent non-registered return accounts for proposals' deposits and TreasuryWithdrawals
  • pull-4632 - Export Unsafe constructors for TxBody, TxBodyRaw and MemoBytes
  • pull-4654 - Add applyTxOpts to ApplyTx
  • pull-4657 - HardFork rule
  • pull-4659 - Change how SPO votes are counted
  • pull-4660 - UTXO conformance with Babbage transactions
  • pull-4652 - Ensure dreps exist prior to delegation
  • pull-4649 - Mismatch type for predicate failures
  • pull-4676 - constrained-generators: (++.) and singleton_ for lists
  • pull-4679 - Fixes for release