Skip to main content

· 2 min read
Jared Corduan

Ledger Quarterly Update

2022-09 - 2022-11-04

  • We finished a minimal ledger era capable of master key rotation. This will be re-purposed our upcoming work.
  • We have the humble beginnings of a proper ledger API.
  • We improved the problematic cost model serialization (recall the song and dance about updating the cost model one epoch after the hard fork).
  • We have added benchmarks for problematic areas.
  • Massive repository restructure and cleanup.
    • Unified and consistent variable name schemes (not completely finished, but nearly there).
    • Massive reduction in type constraints, which causes a lot of developer friction, in our code and also downstream.
    • More organized module structures.
    • Improved generators for our property tests.
    • We removed our dependency on cardano-prelude.
  • The formal ledger model has come a long way.
    • We created a fork of Agda that provides some meta-programming support for the ledger rules.
    • We have a large amount of the basic UTxO support in the model.
    • We can generate a good looking PDF from the model.
    • We can produce Haskell from the model.
    • We have a nice finite set theory library that we can use for many of the ledger rules.
    • We have nix support for the model.

Next steps

  • Individual tracking of deposits. [issue-3113]
  • Versioned CBOR encoders/decoders. [issue-3014]
  • New ledger era transaction body (and the surround work associated with it).
  • Designs for the next ledger era.

· 2 min read
Jordan Millar

Node-Api-Cli Quarterly Update

2022-09 - 2022-11-04

  • Various improvements to tests/CI/GHC 9.2.4 preparations/upgrade to cabal-3.8.1.0
  • Major clean up of stale iusses + PRs.
  • Implementation of stale-bot to mitigate against a proliferation of outdated issues and PRs
  • cardano-api refactoring with the aim of exposing more user friendly functions, particularly concerning transaction construction and querying the node.
  • cardano-cli refactoring with the aim of moving reusable functions to cardano-api. We have made strides here and have managed to improve the interface of transaction construction and validation.
  • General documentation updates and improvements
  • Addition of tx-mempool command which allows users to:
    • Query the node about the current mempool's capacity and sizes
    • Request the next transaction from the mempool's current list
    • Query if a particular transaction exists in the mempool
  • Initial refactoring of cardano-testnet

Next quarter

  • cardano-api
    • Working with Konstantinos and his team to make cardano-api better for dapp developers - we have a google doc for this, I can send it to you privately.
  • cardano-testnet
  • Serenity
    • Continued refactoring of cardano-api and cardano-cli, with the particular focus on extracting re-usable components of cardano-cli and moving them to cardano-api. This is harder to define but will manifest in stuff moving from cardano-cli to cardano-api and is tied in to the cardano-api work specified above.
  • General bug fixing and smaller feature requests for the api/cli that are always coming in. Robert is primarily handling this at the moment as he is relatively new.