Skip to content

Release Notes - v0.209.1

Title: Improve ledger validation, Plutus support, and dependency consistency

Version: v0.209.1

This release strengthens Dijkstra transaction and certificate validation, enforces MIR transfer rules, expands Plutus V4 support, improves native script handling, and aligns example dependency management with the root module.

  • Fixed Dijkstra block decoding so each transaction reads the trailing is_valid value, reports invalid transactions, and rejects missing or non-boolean values.
  • Corrected MIR certificate data to use the two-element source and target array format, validate source pots and targets, reject malformed reward maps and duplicate credential keys, and handle credential discriminants safely.
  • Enforced MIR pending reward and transfer rules by rejecting pre-Alonzo pot transfers and negative deltas, then bounding post-Alonzo negative deltas against pending rewards from prior, in-transaction, and in-block changes.
  • Refined native script validation by skipping unneeded witness native scripts during evaluation and routing them to witness validation; Byron output indexes now remain within 0 through 65,535 during construction and CBOR decoding.
  • Expanded Dijkstra regression coverage to verify Plutus V3 regular and reference input overlap across rewarding, spending, guarding, protocol versions, and subtransaction levels.
  • Updated mock ledger fixtures and the protocol modeling dependency to version 0.20.4.
  • Introduced the Plutus V4 script context builder updates from version 0.8.0 and a complete Plutus V4 CEK cost table.
  • Unified example builds with the root module so dependency updates apply automatically and the root build, test, and lint workflows cover the examples.
NetworkCompatible
mainnet⛔
preprod-testnet✅
preview-testnet✅
musashi✅

Release: v0.209.1


Doc Holiday logo

Docs authored by Doc Holiday

Edit page

Last updated: