Release Notes - v0.208.0
v0.208.0
Section titled “v0.208.0”Title: Expand protocol validation and compatibility
Version: v0.208.0
This release expands protocol support, strengthens validation, and improves compatibility across consensus, ledger, network, and application integrations.
Features
Section titled “Features”- Introduced Peras vote diffusion when nodes negotiate node-to-node v16 support, aligned Leios wire tags with strict tag and type decoding, returned protocol errors for unavailable data, and bounded BlockRange responses to 1,000 responses or 64 MiB by default with a 5-second stall timeout.
- Added Dijkstra
MaxPledgeLeverageand PV13-gatedMinPoolMarginreward constraints with parameter range validation while preserving behavior before Dijkstra.
Compatibility and Breaking Changes
Section titled “Compatibility and Breaking Changes”- Enforced full consensus header validation that matches each header to a registered VRF key hash and limited DMQ KES authentication to a configurable maximum KES evolution window, defaulting to 62 and honoring explicit slot overrides.
- Registered MIR genesis-delegate quorum validation across Shelley, Allegra, Mary, Alonzo, and Babbage, while UTxO-RPC MIR source-pot conversion preserves reserves versus treasury and rejects invalid encodings.
- Synchronized configured Byron epoch lengths across BlockFetch and ChainSync and applied overflow-safe slot conversion.
- Resolved committee hot keys using typed authorizations, preserving key-versus-script identity, handling multiple cold authorizations for shared hot credentials, and applying seated-member checks from protocol major version 11.
- Matched the NtC v19/v20 ledger-peer-snapshot wire format, including request
[34], outer snapshot wire version 1, and typed errors for unsupported peer kinds or versions.
Bug Fixes
Section titled “Bug Fixes”- Fixed ledger map handling by adding
DecodeLedgerMap, rejecting duplicate keys at ledger transaction boundaries, retaining last-wins behavior for genericcbor.Valuedecoding, and preserving lenient Byron SSC payload handling. - Accepted valid empty ledger peer snapshots in integration tests instead of treating empty pool lists as failures.
Dependency Updates
Section titled “Dependency Updates”- Upgraded
github.com/blinklabs-io/ouroboros-mockfrom 0.20.2 to 0.20.3, including upstream certificate-builder and pipe-cleanup fixes. - Updated
github.com/blinklabs-io/plutigoto version 0.7.2 across root and example modules and made malformed-script coverage independent of UPLC version gating.
Release: v0.208.0
Compare: v0.207.5…v0.208.0
Docs authored by Doc Holiday