Skip to main content

Mithril Team Update

· 3 min read
Jean-Philippe Raynaud
Mithril Tech Lead

High level overview​

This week, the Mithril team completed the optimization of the SNARK test suite by extending the on-disk test cache to the recursive circuit test fixtures, consolidating the halo2_snark slow proof tests around shared and golden proofs, and consolidating the recursive circuit MockProver tests. They continued adding the missing IVC off-circuit checks and started recovering the ignored IVC prover input preparation tests, and started documenting the recursive and non-recursive SNARK aggregation as well as the concatenation aggregation on the documentation website.

The team also completed the adaptation of the end-to-end test for the on-chain configuration parameters and the runbook documenting them, and continued implementing the new chain adapter that reads these parameters and adapting the infrastructure. They continued working on the deterministic immutable compressed archives and on the IPFS file uploader of the aggregator.

Finally, the team continued upgrading to Cardano node v.11.1 and updating the ed25519-dalek dependency.

Low level overview​

Features​

  • Completed the issue Extend the on-disk test cache to the recursive circuit test fixtures #3462
  • Completed the issue Consolidate the halo2_snark slow proof tests around shared and golden proofs #3463
  • Completed the issue Consolidate the recursive circuit MockProver tests #3464
  • Completed the issue Adapt end-to-end test for on-chain configuration parameters #3396
  • Worked on the issue Add missing IVC off-circuit checks #3381
  • Worked on the issue Recover the ignored IVC prover input preparation tests #3466
  • Worked on the issue Create new chain adapter to read on-chain configuration parameters #3393
  • Worked on the issue Create deterministic immutable compressed archives #3435
  • Worked on the issue Implement an IpfsFileUploader in the aggregator #3457
  • Worked on the issue Add documentation for recursive SNARK #3144
  • Worked on the issue Add documentation for non recursive SNARK #3155
  • Worked on the issue Add documentation for concatenation aggregation #3487

Protocol maintenance​

  • Completed the issue Create runbook for on-chain configuration parameters #3399
  • Completed the issue Fix admonitions in website and update Footer Discord info #3491
  • Worked on the issue Upgrade to Cardano 11.1 #3346
  • Worked on the issue Adapt infrastructure for on-chain configuration parameters #3397
  • Worked on the issue Update ed25519-dalek dependency #3471

Plutus Core Team Update

· 2 min read
Ziyang Liu
Software Engineering Lead

High level summary​

The Plutus team has published release 1.68.0.0, which includes the Plutus V4 ledger API types. Note that Plutus V4 remains under development, and these types may still change before Dijkstra.

Getting started with Plinth is now much easier: the new install script in plinth-template sets up a Plinth project with a single command, taking care of installing the required tooling. See the updated documentation for details.

Work on Plutus V4 language features continues. Casing on Data has been implemented: case on a Data.Constr value can now dispatch directly on the constructor tag, which, combined with the recently added dropList, yields a decent performance boost. We've also added the assetCount builtin (CIP-0168) along with its cost model, merged the cost model for multiIndexArray (CIP-0156), and continued formalizing builtins in the Agda metatheory.

We also continue to welcome feedback on CPS-0034 - Extending Plutus Core conformance testing.

Key Pull Requests Merged​

Pull Requests In Progress​

Consensus Team Update

· One min read
Damian Nadales
Consensus Team Lead

High level summary​

  • Leios prototype development (Treasury Funding Initiative 4: Ouroboros Leios Implementation):
    • Closed an attack on the way nodes announce Endorser Blocks. The attack made honest nodes disconnect from each other (#2179, for ouroboros-leios#1029).
    • db-analyser now reads Leios chains. The tool replays a chain and reports the cost to apply each block. The reports now cover the transactions of each certified Endorser Block, their total size, and the time to read them (#2181, for ouroboros-leios#1023).
  • Maintenance and support (Treasury Funding Initiative 17: Maintenance and Support):
    • Forward-ported the new snapshot interval and the mempool allocation fix from the 4.x release line to the main development branch. The 2026-08-11 update describes both changes (#2209, #2215).

ledger

· 3 min read

title: Ledger Team Update slug: 2026-08-19-ledger authors: lehins tags: [ledger] hide_table_of_contents: false​

High level summary​

Leios support continued: following the addition of a real BlsKey in the pool parameters, the pool distribution now carries the corresponding LeiosKey and a per-pool BLS-attributed stake, so that BLS-related pool information is available wherever the rest of the pool distribution is consumed.

Groundwork was laid for a broader refactor of predicate failures toward standalone, reusable units that can be shared across rules and eras. The first such predicate failure landed as a template for the transition, with sub-transactions in Dijkstra as the initial target. Ord instances were also added uniformly across the predicate-failure hierarchy so that failures can be collected into sets, which fits the same push toward standalone, composable predicate failures.

A number of CBOR decoders in the ledger were relaxed to accept indefinite-length encodings in addition to the definite-length ones they previously required. This makes the decoders tolerant of structurally equivalent CBOR variants.

Test infrastructure received substantial attention. On the Imp side, sub-transaction fixup was implemented (Plutus scripts aside), directly addressing the sub-transaction testing gap flagged last cycle. On the conformance side, several test suites were re-enabled after fixes to the underlying constrained generators. Twiddling tests were also enabled in Dijkstra, providing more robust serialization tests.

Low level summary​

Features​

  • PR-5988 - Leios: add LeiosKey to PoolDistr
  • PR-5992 - Add individualPoolStakeBls to PoolDistr
  • PR-5850 - Add Ord instances for predicate failures
  • PR-5979 - Make GenerateCBOR exit with nonzero when generation fails, retry failed attempts
  • PR-5772 - Adding first standalone AccountAlreadyRegistered predicate failure
  • PR-5862 - Enable Dijkstra Twiddling tests, relax some decoders in PV12

Testing​

  • PR-5964 - Enable UTXOW/UTXO/UTXOS tests from all eras in conformance
  • PR-5990 - Fix infinite loop in initialLedgerState test generator, re-enable UTXO/UTXOW/LEDGER/LEDGERS conformance tests
  • PR-5980 - Implement subtransaction-fixup in Imp framework (except Plutus scripts)
  • PR-6008 - Enact state constrained generator fix

Infrastructure and releasing​

  • PR-6000 - Bump HLS to 2.14.0.0
  • PR-5838 - Post test failures summary to a PR comment as well as to CI
  • PR-5998 - CHaP flake optimization
  • PR-6005 - Bump actions/checkout from 6 to 7 in the actions group

Mithril Team Update

· 2 min read
Jean-Philippe Raynaud
Mithril Tech Lead

High level overview​

This week, the Mithril team continued optimizing the SNARK test suite by caching the recursive circuit test fixtures on disk and by consolidating the halo2_snark slow proof tests around shared and golden proofs.

They continued creating the new chain adapter that reads the on-chain configuration parameters, adapting the infrastructure and writing the runbook for these parameters, and worked on the deterministic immutable compressed archives.

Finally, the team anticipated the clippy warnings of the upcoming Rust 1.98 release, and worked on the update of the ed25519-dalek dependency.

Low level overview​

Features​

  • Worked on the issue Extend the on-disk test cache to the recursive circuit test fixtures #3462
  • Worked on the issue Consolidate the halo2_snark slow proof tests around shared and golden proofs #3463
  • Worked on the issue Add missing IVC off-circuit checks #3381
  • Worked on the issue Create new chain adapter to read on-chain configuration parameters #3393
  • Worked on the issue Create deterministic immutable compressed archives #3435

Protocol maintenance​

  • Completed the issue Upgrade Rust to version 1.98 #3484
  • Worked on the issue Adapt infrastructure for on-chain configuration parameters #3397
  • Worked on the issue Create runbook for on-chain configuration parameters #3399
  • Worked on the issue Update ed25519-dalek dependency #3471