Skip to content

Release Notes - v0.202.8

Title: Reject duplicate members in encoded sets

Date: September 4, 2026

Version: v0.202.8

This release requires Conway and Dijkstra transaction and witness decoders to reject CBOR-encoded untagged arrays with duplicate members instead of accepting or deferring them.

  • Improved decoder consistency: Untagged CBOR arrays now receive duplicate-member checks throughout the Conway and Dijkstra decoding paths.

  • Expanded set validation coverage: Conway rejects duplicates in transaction inputs, collateral, required signers, reference inputs, and Plutus V1, V2, and V3 witness script sets. Dijkstra rejects duplicates in transaction and subtransaction inputs, collateral, reference inputs, subtransactions, proposal procedures, witness-set fields including vkey witnesses, and invalid-transaction indices.

  • Preserved tagged set behavior: Tagged set decoding continues to use the existing duplicate check, while untagged sets now receive the same always-on validation.

  • Clarified set decoding controls: cbor.SetType.CheckForDuplicatesAlways provides always-on validation for untagged sets, while CheckForDuplicates retains tag-gated behavior for callers that need it.

  • Added regression coverage: Duplicate-member cases across the affected Conway and Dijkstra transaction and witness structures now have regression tests.

  • Tightened decoding requirements: Applications that provide duplicate members in any of the affected untagged CBOR arrays must remove those duplicates before decoding. Integrations that rely on acceptance, deferral, or tolerance of duplicates must update their encoded data.
NetworkCompatible
mainnet
preprod-testnet
preview-testnet
musashi

Release: v0.202.8

Compare: v0.202.7…v0.202.8


Doc Holiday logo

Docs authored by Doc Holiday

Edit page

Last updated: