Skip to main content

· One min read
Damian Nadales

High level summary

During the past couple of weeks, the team has continued working across multiple workstreams: LSM-tree integration, Peras implementation, KES agent integration, and Leios prototyping. Current efforts include:

  • Implementing a streaming conversion for ledger snapshots.
  • Drafting a set of mini-protocols to cooperatively implement the Linear Leios specification. Particular focus is being placed on ensuring adequate concurrency and resource usage bounds, which are less explicitly defined in the high-level spec.
  • Releasing a stubbed version of kes-agent, and integrating it into the Consensus version targeted for Cardano Node 10.6. While the KES code will be included in this release, functionality will remain inactive pending a code audit.
  • Merging Peras-related optimizations into both the main and peras-staging branches.

· 2 min read
Ziyang Liu

High level summary

Plutus Core

  • Following the support for case analysis on booleans, integers and lists, we are now working on supporting case analysis for unit, pairs, and Data.

  • The required changes to enable all built-in functions, as well as sums-of-products, in all Plutus ledger languages (Plutus V1, V2 and V3) have been implemented in preparation for the upcoming intra-era hard fork.

  • We started developing a surface language benchmark for UPLC, aimed to compare the performances of different surface languages targeting UPLC. We have introduced the first scenario for comparison - computing Fibonacci numbers. More scenarios will be added in the near future.

Plinth

  • The Plinth compiler now compiles Haskell Bool into UPLC's built-in boolean type, instead of sums-of-products or Scott encoded boolean. This makes many scripts smaller and faster.

  • We are planning additional performance and usability improvements, such as inlining recursive bindings, and showing line numbers in compilation errors.

Low level summary

Key Pull Requests Merged

Issues and Pull Requests In Progress

· 2 min read
Marcin Szamotulski

Overview of sprint 93

Tx-Submission

We deployed our tx-submission work (see Issue#3311 based on the cardano-node-10.5 release. The node has been working without any problems.

Mithril

We prepared two PR which will allow us to capture raw bytes alongside decoded data structures. This is essential for checking signatures as well as avoiding re-serialisation of signed data:

These PRs are in review.

We now have a dmq node with the following capabilities:

  • can disiminate signatures, but not validate them in any way, although one cannot submit signatures (/work in progress/)
  • discover peers (with peer-sharing mini-protocol)
  • control connections through keep-alive mini-protocol
  • configuration file which allows setting diffusion options, setting up traces, etc.
  • basic logging system

In the current state of development, we were able to connect two dmq nodes and observe keep-alive messages. In the next stage, we will be able to submit signatures and observe how they are diffused through a network of dmq nodes.

Connection Duration

We added a trace point which allows one to see how long a connection lived, see PR#5146.

Release of ouroboros-network-0.22.1

We released ouroboros-network-0.22.1. It is already integrated with ouroboros-consensus and it will be included in cardano-node-10.6. See release-board.

· 3 min read
John Lotoski

High level summary

The SRE team continues work on Cardano environment improvements and general maintenance.

Some notable recent changes, updates or improvements include:

  • Cardano-node 10.5.1 has now been promoted to a full release for mainnet use and has been deployed to all of IOE's node SRE testnet and mainnet clusters.

  • A new docker OCI tag of 10.5.1-docker is additionally available for any OCI image users who want to use the snapshot-converter binary from within the image. The snapshot converter can be found at path /usr/local/bin/snapshot-converter. New cardano-node OCI release images going forward will contain the snapshot converter to facilitate ledger backend state changes without having to rely on host level tooling or a fully ledger replay.

  • Cardano-parameters is a new repo which maintains the mainnet, preprod and preview protocol parameters with a daily update, as reported by the BlockFrost Cardano API service.

Repository Work -- Merged

Cardano-mainnet

  • Cardano-node release has been updated to 10.5.1. Rotates KES, cleans up 10.5.0 module code no longer needed and deploys select bootstraps with an EgressPollInterval modifier. cardano-mainnet-pr-37

Cardano-monitoring

  • A modernization and security update PR which updates most flake pins, patches grafana for CVE vulnerabilities, updates the opentofu-registry and adds filtering for alpha/beta versions, updates tofu resource declarations and recipes, migrates to SSH over SSM, fixes some race conditions on reboot and more. See the PR header for details. cardano-monitoring-pr-2

Cardano-node

  • For the purposes of a 10.5.1-docker OCI image tag, adds snapshot-converter to the nix overlay and bundles it into the cardano-node OCI image. Adds documentation with example command usage. cardano-node-compare

Cardano-parts

  • Cardano-node pre-release has been updated to 10.5.1. A nix packaged version of cardano-signer has been added, blockperf and credential-manager tools updated. Nix jobs for facilitating governance activities have been improved, easing operations. cardano-parts-release-v2025-07-23

  • Cardano-node release has been updated to 10.5.1. cardano-parts-release-v2025-07-25

Cardano-playground

  • Cardano-node pre-release has been updated to 10.5.1. Adds playground gov action support scripts, preview/preprod committee state changes and relevant gov action artifacts. Includes various improvements with cardano-parts release v2025-07-23. See the PR header for details. cardano-playground-pr-49

  • Cardano-node release has been updated to 10.5.1. Fixes a playground voting script to work with sops decrypt using bash array args; drops some deprecated code and updates cardano-book. cardano-playground-pr-50

Devx-ci

  • Nix-darwin was updated to 25.05 requiring updating of the Darwin guest bootstrap scripts as well as the Buildkite modules. Deprecated Hetzner Darwin materialization for a legacy ssh problem was removed and Hydra impermanence config was updated. devx-ci-compare

Repository Work In Progress -- PRs and Branches

· 3 min read
Alexey Kuleshevich

High level summary

This period we have finally finished significant refactoring on how we represent reward account state in the Ledger codebase, which not only allowed us to completely get rid of pointers in Conway era, but also drastically reduced complexity of accounts functionality and improved Ledger performance. More importantly this refactoring made accounts more extensible and will in future facilitate new features like: changes needed for Leios, full Chimeric Ledger through promotion of reward accounts to proper accounts, as well as ability to store multi-assets in the Treasury and submitting TreasuryWithdrawals governance actions that withdraw other assets except ADA.

Furthe more, we progressed with some features for the next intra-era hard fork as well as for the next Dijkstra era. We've implemented a long asked feature to report the pre-image of the script integrity hash upon validation failures, which will improve user experience and is planned to become available upon the next intra-era hardfork. With respect to Dijkstra implementation we've added new protocol parameters for values that ended up being hard coded in the Conway era. We also started on CDDL specification for the next era.

Besides that we had some progress on improving our test suite, took care of some technical debt and reduced complexity of certain aspects of Ledger implementation.

Low level summary

Features

  • PR-5156 - Rename EraSegWits to EraBlockBody and TxSeq to BlockBody
  • PR-5128 - Stop using UMap in favor of Accounts type family
  • PR-5179 - Add mkBasicBlockBody{Shelley,Alonzo} and txSeqBlockBody{Shelley,Alonzo}L
  • PR-5164 - Added DijkstraPParams
  • PR-5182 - Remove tx wrappers
  • PR-5163 - Change the type of dRepDeposits to CompactForm Coin
  • PR-5178 - Dijkstra: Prevent empty MultiAsset
  • PR-5172 - Replace PPViewHashesDontMatch with ScriptIntegrityHashMismatch starting from PV 11
  • PR-5192 - CDDL for Dijkstra

Testing

  • PR-5173 - Add a nix sha256 for the constrained-generators srp
  • PR-5059 - Translate some tests from BabbageFeatures to Imp test
  • PR-5180 - Fix for CERTS constraint generators
  • PR-5188 - SRP for constrained generators via nix inputs
  • PR-5189 - Update and fix formal-ledger-specifications
  • PR-5193 - Translate tests from BabbageFeatures to Imp test (part 2)

Infrastructure and releasing

  • PR-5185 - Update data-files in Dijkstra cabal file to fix tests failing in hydra