Skip to content

Commit

Permalink
Add Ledger team update for 2023-09-29 (#258)
Browse files Browse the repository at this point in the history
  • Loading branch information
lehins authored Sep 30, 2023
1 parent 0138000 commit 36182de
Showing 1 changed file with 101 additions and 0 deletions.
101 changes: 101 additions & 0 deletions blog/2023-09-29-ledger.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
---
title: Ledger Team Update
slug: 2023-09-29-ledger
authors: lehins
tags: [ledger]
hide_table_of_contents: false
---

## High level summary

Few important Conway related features were completed in this two week period:

* Constitutional Committee was the last missing Conway related entity that has now been
fully implemented.
* Treasury withdrawals governance actions have been fixed and now behave as expected.
* Current treasury amount supplied in the transaction is now enforced by the rules.
* DRep's expiry is prevented by delaying the expiry for all DReps whenever there are no
proposals to vote on.
* Semantics of how CostModels are updated with Protocol Parameters have been changed to
allow for individual Plutus language version updates, rather than requiring a complete
replacement of all CostModels

Besides the new features there were also important performance and testing improvements:

* In particular stake distribution computation and native script handling received some
optimizations.
* New testing DSL has been implemented that drastically simplifies writing unit tests for
ledger rules.
* Integration tests and benchmarks are now possible for Conway era because of the overhaul
of functionality for initial funds and staking injection whenever node starts up in
Conway, while bypassing all previous eras.

## Low level summary

### Conway era

* [pull-3729] - DRep expiry update after a contiguous set of epochs with no proposals to vote on
* [pull-3739] - Rename some PParams to be consistent with Agda specification
* [pull-3743] - Move DRepDistr from VState to ConwayGovState
* [pull-3746] - Implement `tcTranslationContextL` for Shelley
* [pull-3737] - Implement EraTransition
* [pull-3749] - Add predicate failure: current treasury value mismatch in LEDGER
* [pull-3748] - Apply enacted treasury withdrawals
* [pull-3745] - Constitutional Committee Ratification
* [pull-3763] - Plutus interface improvements
* [pull-3771] - Changed how costmodel updates are applied
* [pull-3766] - Prevent updating protocol version with `PParamUpdate`

### Performance

* [pull-3765] - Improve native script handling
* [pull-3747] - Use (CompactForm Coin) in IncrementalStake, DRepDistr (and other places) instead of Coin
* [pull-3758] - Cardano-Perf regression: UMap.size regression fix
* [pull-3754] - Use Alonzo-style TxOut encoder when possible

### Releasing

* [pull-3742] - Update fourmolu, ghcid and hls. Update haskellNix and iohkNix flakes
* [pull-3744] - Changelog 8.4
* [pull-3752] - Patch release of cardano ledger conway 1.8.1.0
* [pull-3753] - Minor cleanup and changelog entries
* [pull-3760] - Fixup issues for release
* [pull-3764] - Bump plutus deps to 1.13

### Testing

* [pull-3734] - Removed `Shaped` instance for `Rep`
* [pull-3735] - Simplify the implementations of `hasOrd` and `hasEq`
* [pull-3728] - STS tests based on constraints
* [pull-3714] - Implement the remaining upgradable families
* [pull-3733] - Add some unit tests for Conway features
* [pull-3762] - Update CDDL for praos headers.


[pull-3729]: https://github.com/input-output-hk/cardano-ledger/pull/3729
[pull-3739]: https://github.com/input-output-hk/cardano-ledger/pull/3739
[pull-3742]: https://github.com/input-output-hk/cardano-ledger/pull/3742
[pull-3744]: https://github.com/input-output-hk/cardano-ledger/pull/3744
[pull-3743]: https://github.com/input-output-hk/cardano-ledger/pull/3743
[pull-3746]: https://github.com/input-output-hk/cardano-ledger/pull/3746
[pull-3728]: https://github.com/input-output-hk/cardano-ledger/pull/3728
[pull-3737]: https://github.com/input-output-hk/cardano-ledger/pull/3737
[pull-3735]: https://github.com/input-output-hk/cardano-ledger/pull/3735
[pull-3747]: https://github.com/input-output-hk/cardano-ledger/pull/3747
[pull-3749]: https://github.com/input-output-hk/cardano-ledger/pull/3749
[pull-3748]: https://github.com/input-output-hk/cardano-ledger/pull/3748
[pull-3745]: https://github.com/input-output-hk/cardano-ledger/pull/3745
[pull-3734]: https://github.com/input-output-hk/cardano-ledger/pull/3734
[pull-3714]: https://github.com/input-output-hk/cardano-ledger/pull/3714
[pull-3752]: https://github.com/input-output-hk/cardano-ledger/pull/3752
[pull-3754]: https://github.com/input-output-hk/cardano-ledger/pull/3754
[pull-3753]: https://github.com/input-output-hk/cardano-ledger/pull/3753
[pull-3760]: https://github.com/input-output-hk/cardano-ledger/pull/3760
[pull-3758]: https://github.com/input-output-hk/cardano-ledger/pull/3758
[pull-3764]: https://github.com/input-output-hk/cardano-ledger/pull/3764
[pull-3762]: https://github.com/input-output-hk/cardano-ledger/pull/3762
[pull-3763]: https://github.com/input-output-hk/cardano-ledger/pull/3763
[pull-3733]: https://github.com/input-output-hk/cardano-ledger/pull/3733
[pull-3771]: https://github.com/input-output-hk/cardano-ledger/pull/3771
[pull-3765]: https://github.com/input-output-hk/cardano-ledger/pull/3765
[pull-3766]: https://github.com/input-output-hk/cardano-ledger/pull/3766

0 comments on commit 36182de

Please sign in to comment.