Skip to main content

· 2 min read
Alexey Kuleshevich

High level summary

The ledger team made great progress in advancing Conway era forward. In particular, voting for DRep and Stake Pool Operators is now at the state that can be used by downstream components. Addition of new ledger state queries makes it possible to verify changes to the governance state, such as placement of votes, submission of governance proposals, inspecting DRep stake distribution and more. Addition of treasury withdrawals concludes the ability to enact all of the governance actions, except for the hard fork initiation.

Low level summary

Conway progress

  • pull-3577 - Move PParams to GovState
  • pull-3609 - Adjust thresholds for sanchonet
  • pull-3604 - README: update CIP-1694 link
  • pull-3616 - Switch TreasuryWithdrawals to use RewardAcnt
  • pull-3599 - Add governance action well-formedness check
  • pull-3607 - Rename governance to gov
  • pull-3601 - Added DRep anchors
  • pull-3615 - Add optional previous GovActionId in some ProposalProcedures
  • pull-3596 - Upgradeable families
  • pull-3625 - Change constitution to use Anchor
  • pull-3592 - Added pulsing incremental computation of the DRep distribution
  • pull-3523 - Treasury donations
  • pull-3633 - Prevent state changes on phase2 failure
  • pull-3634 - Disable serialization of protocolVersion param update
  • pull-3630 - Implemented DRep refreshing
  • pull-3640 - Remove crypto parameterization from AnchorData
  • pull-3636 - Implement DRep ratification with an "always passing"; threshold
  • pull-3648 - Governance queries
  • pull-3650 - Change environment for ShelleyPOOLREAP rule
  • pull-3658 - Set DRep ratify threshold to 51%
  • pull-3628 - DELEG, POOL, GOVCERT conformance with Spec v0.8

Testing

Improvements and releasing

  • pull-3660 - Fix bounds and versions
  • pull-3661 - Adjust versions, bounds and CHANGELOGs to account for the latest release

· 3 min read
Marcin Szamotulski

High-level overview of sprint 42

Eclipse Evasion

We merged and released a new version of the ouroboros-network package (version 0.9.0.0) which includes big ledger peers feature. This is the primary peer selection mechanism to defend against eclipses. We also prepared a PR to updated ouroboros-cosnensus and ekg-forward packages.

CDDL specs for protocol codecs

We made the cddl spec for network codec more inline with the implementation which is highly polymorphic. cddl doesn't have the notion of polymorphism, but has any which can generate any valid cbor term. We matched it with an Any type on the Haskell side and made all remaining tests & specs use it. This simplified the specifications and made it easier to understand which parts are defined in the spec, and which parts are left unspecified. See ouroboros-network#4595.

Ouroboros-Network-Framework API changes

We also released ouroboros-network-framework and other network components. The ouroboros-network-framework package contains a redesign of API exposed to ouroboros-consensus. We consolidated, cleaned it and made it easier to extend in the future if there will be new arguments that need to be passed to mini-protocol initiator and responders which comes from the low-level network layer.

Nix setup (CI)

We also made a major review of our nix setup. With help from our DevX team we ended up with a clean flake.nix file which can:

  • compile & test the code on x86_64-linux, x86_64-darwin and aarch64-darwin
  • cross-compile to Windows on x86_64-linux

And provides a shell which contains all the build tools, including ghc-9.6, hls, cddl, and more. See ouroboros-network#4640, ouroboros-network#4643.

Other contributions

Cardano Network Service Assurance

  • The work and writeup in finishing up the CNSA, first stage (first contract).
  • Getting Sam Cowger (Galois Inc) up to speed.
  • The IOG Networking team carried a reivew of CNSA project progress: a limitted code & design review.

Galois Review

Sam Cowger and Mark Tullsen (Galois Inc) have made some progress on each of the tech debt issues

scoping, requirements, and getting started.

CI

We added a nightly run for GitHub actions and made the GitHub actions test be executed with extra concurrency ouroboros-network#4637, ouroboros-network#4649.

We also added GitHub's dependabot ouroboros-network#4650.

Bootstrap Peers

We settled on implementation design of bootstrap peers which is being implemented, ouroboros-network#4615.

· One min read
John Lotoski

High level summary

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

Some notable recent updates or improvements include:

  • Sanchonet and shelley-qa environments were updated to 8.2.1-pre.
  • Work on two new repos utilizing flake parts for cardano cluster generation, automation and operation.

Lower level summary

Cardano-ops

Cardano-parts

Cardano-perf

Cardano-playground

Cardano-world

Inputs-check

  • A flake parts module to check input closure sizes recursively for optimization considerations: inputs-check

· One min read
Iñigo Querejeta Azurmendi

High level summary

The open fronts that the crypto team is working on are:

  • Sidechains: Analysis of Halo2 SNARK verifier to plan a plutus implementation
  • mithril: Full node verifier
  • musig2: Include MuSig2 description in cryptography handbook
  • kes_agent: Finilising test and CI. Working on KES binary

Low level summary

Mithril

  • Full Node Verifier merged #939.

MuSig2

  • Started describing MuSig2 to include it as part of the cryptography handbook

Sidechains

  • Analysis of Halo2 verifier with the goal of implementing SNARK verifier in Plutus. Implemented ad-hoc IPA verifier. Work progress in this fork.

KES agent

  • KES agent is ready:
    • CI ready #19
    • Receipt confirmation message #20
    • KES agent binary ready #21
    • Control client implemented #11

· One min read
Kostas Dermentzis

High level summary

We have integrated many new Conway feutures and allow db-sync to sync sanchonet. We also continued testing and improving the new db-sync options.

Lower level summary

  • Conway integration #1484
  • Support for Sanchonet #1476
  • Stake distribution is computed earlier #1484
  • Deposit ledger events are now used. This reduces the db queries and makes syncing faster #1484
  • Testing new db-sync options #1466
  • Added support for ghc-9.6 #1479
  • Tech debt: improve exceptions #1471