Skip to main content

74 posts tagged with "ledger"

View All Tags

· 3 min read
Alexey Kuleshevich

High level summary

One specific Conway feature that received a lot of debate has finally been implemented, namely disallowing stake credentials from withdrawing rewards, that are backed by a key hash and have not delegated to any DRep. This feature will go into effect after the bootstrap phase.

A whole lot more tests were added and few minor bug fixes have been implemented as well. In particular GovInfoEvent ledger event has been fixed, which is unlikely to affect anyone, but it is worth pointing out. Ledger state deserialization bug was fixed that was necessary for the cardano-node-9.1.1 release. Some tech dept was taken care of, like cleanup of unnecessary predicate failures and fixing some flaky tests from Byron and Alonzo eras.

Low level summary

Features

  • pull-4218 - Remove maxMajorPV from Globals
  • pull-4589 - Fix deserialization of bad Ptrs in IncrementalStake
  • pull-4555 - Disallow withdrawals to non-delegated keyhashes post-bootstrap
  • pull-4600 - Stop reporting invalid refund when stake credential is not registered
  • pull-4604 - Fix enacted Set in GovInfoEvent
  • pull-4616 - Change ConwayWdrlNotDelegatedToDRep to wrap KeyHashes
  • pull-4609 - Removed DRepAlreadyRegisteredForStakeKeyDELEG

Testing

  • pull-4565 - ENACT conformance
  • pull-4541 - Fix failing tests in cardano-ledger-alonzo-test
  • pull-4585 - Fixes a property test "Ran out of tries on suchThatT"
  • pull-4543 - Increased the probability of generating the same hash more than once
  • pull-4574 - Byron: Force startTime in genesis data to be strict
  • pull-4596 - fix both reproduceable failures
  • pull-4586 - Byron: Fix failing ts_prop_elaboratedCertsValid test by moving mainnet-genesis.json to the appropriate path
  • pull-4584 - Sort Proposals when translating to SpecRep
  • pull-4546 - Ts additions prime spec cert steps
  • pull-4607 - Refactor debug tracing of QuickCheck discards
  • pull-4597 - DELEG Imp spec

Infrastructure and releasing

  • pull-4578 - Stop generation of haddock for internal modules
  • pull-4611 - Fix haddock: remove --show-all to test
  • pull-4569 - Fix fourmolu version for pre-commit shell
  • pull-4587 - docs: update README.md
  • pull-4591 - cardano-node-9.1 backport: Implement a fix for inability to deserialize pointers in Conway
  • pull-4590 - cardano-node-9.2 backport: Implement a fix for inability to deserialize pointers in Conway
  • pull-4593 - Plutus 1.33
  • pull-4614 - Changelog for cardano-node-9.2
  • pull-4608 - Remove dependency bounds on QuickCheck

· 2 min read
Alexey Kuleshevich

High level summary

Ledger team continued working on conformance tests and other improvements to the ledger test suite. There was a lot of communication with community members and other core teams about the upcoming hard fork. Some of the Conway specific changes that could affect DApp developer where documented:

There was a minor bug discovered and fixed in how DRep expiration was initialized, which doesn't have any impact on the upcoming Chang hard fork, since DReps cannot affect ratification during the bootstrap phase.

Low level summary

Features

  • pull-4547 - Drep registration expiration fix
  • pull-4554 - Fix cddl hash data comment
  • pull-4550 - ADR for fee computation changes in Conway
  • pull-4570 - Fix wording in the spec where unclaimed rewards go into treasury

Testing

  • pull-4529 - Alternative Agda cert- steps in conformance tests
  • pull-4528 - Add tools for debugging CBOR dumps
  • pull-4548 - Enable QuerySpec in cardano-ledger-api for both Conway versions
  • pull-4561 - Configure Imp tests with realistic SPO voting thresholds
  • pull-4579 - Added overlooked no registered test for RegCert
  • pull-4576 - Remove minMajorPV and maxMajorPV from Constants

Infrastructure and releasing

  • pull-4534 - Use compression for archiving
  • pull-4551 - Add GHA check for formal spec SRP validity
  • pull-4558 - Stop including VCS directories in data passed to test jobs
  • pull-4562 - Fix incorrect version in Conway CHANGELOG
  • pull-4560 - cardano-node 9.2 release test suite fix
  • pull-4573 - Fixup changelogs and versions

· 2 min read
Alexey Kuleshevich

High level summary

Some minor new features have been added, namely ledger state queries that are necessary for figuring out votes for current proposals and functionality for computing the size of transaction necessary for network communication. Other than that most of the focus still continued to be on improving Conway testing coverage and addition of conformance tests.

Low level summary

Conway

  • pull-4514 - Add governance related state queries
  • pull-4521 - Added method to compute over-the-wire CBOR encoded transaction size

Testing

  • pull-4518 - Made conformsToImpl discard generator failures
  • pull-4508 - Make Imp tests setup more realistic
  • pull-4496 - Enable conformance testing for RATIFY
  • pull-4544 - Updated translation of UnRegDRep deposit

Infrastructure and releasing

  • pull-4531 - Free up disk space in the GHA CI runner before building
  • pull-4526 - cabal.project: Bump index-states and remove allow-newer
  • pull-4532 - Fix cardano-ledger-core version
  • pull-4536 - Bump plutus to 1.32.0.0
  • pull-4537 - GHA: fix cabal version mismatch between build and test job
  • pull-4540 - Free up disk space in the GHA CI runner before testing
  • pull-4545 - Update formal-ledger-specifications SRP

· 2 min read
Alexey Kuleshevich

High level summary

Same as with the prior report we are focusing on testing Conway features and conformance testing. One bug was discovered and fixed as a result of this testing, which would only have affected Conway functionality until after the bootstrap phase is over. We also finished fully defining Conway CDDL specification in Haskell.

Low level summary

Conway

  • pull-4516 - Use motionNoConfidence drep thresholds to ratify NoConfidence
  • pull-4503 - Improvements to plutus debug

Testing

  • pull-4485 - Improvements for GOVCERT conformance test
  • pull-4495 - Update executable ledger spec
  • pull-4494 - Added minitracing over things with ExecSpecRule instances
  • pull-4440 - Implement more tests in Alonzo.Imp.UtxowSpec.Invalid
  • pull-4493 - constrained-generators: some special-case hooks for the prettyprinter
  • pull-4501 - constrained-generators: Add a callback to saturate constraints
  • pull-4483 - constrained-generators: Start on a tutorial / cheat sheet
  • pull-4437 - Test Conway CDDL using Cuddle
  • pull-4506 - Fix PParams and PParamsUpdate field order for conformance tests
  • pull-4510 - Auto-generate Conway CDDL using Cuddle

Infrastructure and releasing

· 2 min read
Alexey Kuleshevich

High level summary

While we are waiting for Chang hard fork we are focusing on as much testing as possible. Therefore all work that was done mostly related to writing unit tests and conformance testing.

Low level summary

Features

  • pull-4480 - Add mkTermToEvaluate on PlutusLanguage class

Testing

  • pull-4464 - constrained-generators: fix incorrect size computation in sets
  • pull-4472 - constrained-generators: fix map generator for simple cases
  • pull-4482 - constrained-generators: turn off leaky test until we can fix it
  • pull-4467 - Conformance CERT: plumbing and translation
  • pull-4475 - Remove duplicate testing of Alonzo and Shelley in Conway
  • pull-4478 - Remove unused variable in non-integral reference code
  • pull-4473 - Make ErrorSpec take a (NonEmpty String) rather than [String]
  • pull-4488 - Handle forks in the branch-history GitHub CI job
  • pull-4469 - Conformance DELEG: Extract Deleg ExecSpecRule and SpecTranslate instances
  • pull-4484 - Conformance GOV: translate and adjust
  • pull-4474 - Conformance test plumbing: CERTS
  • pull-4492 - Remove some unnecessary allocations

Infrastructure and releasing

  • pull-4479 - Add changelog entries for cardano-node-9.0
  • pull-4476 - Bump certifi from 2023.7.22 to 2024.7.4 in /doc