Skip to content

Release Notes - v0.205.5

Title: Improve ledger validation and decoding reliability

Version: v0.205.5

This release improves transaction metadata access, collateral validation, Byron signature verification, and decoding consistency while aligning native script thresholds with Conway CDDL.

  • Added invalid transaction indexes to transaction offsets: callers can retrieve invalid transaction indexes during the same block offset extraction for Shelley and legacy Dijkstra layouts, without a second full block decode. Absent or empty lists return nil.
  • Enforced collateral vkey witnesses independently of phase 2: key-locked collateral now requires matching witnesses even when phase 2 scripts do not run. Script-locked collateral behavior remains unchanged.

  • Preserved Byron PBFT signature bytes: verification now uses the original ToSign CBOR slices, so valid signatures over accepted non-canonical encodings verify correctly. Epoch lookup remains separate.

  • Rejected non-empty deprecated Byron attributes: block and header decoding accepts only empty CBOR maps for deprecated attributes and rejects malformed, null, undefined, or non-empty values. ExtraProof byte-string length remains permissive.

  • Raised the metadata decoder nesting bound to 16384: metadata decoding now accepts nesting up to 16384.

  • Updated the native script threshold type to int64: NativeScriptNofK.N now follows the Conway CDDL. Allegra and later eras accept non-positive thresholds, while Shelley and pre-Allegra decoding rejects negative thresholds. Downstream Go code that initializes this field with uint must convert the value to int64.

Release: v0.205.5

Compare: v0.205.4…v0.205.5


Doc Holiday logo

Docs authored by Doc Holiday

Edit page

Last updated: