Skip to content

0.4.7

Latest

Choose a tag to compare

@github-actions github-actions released this 11 Oct 14:16
· 2 commits to main since this release
c3035c7

⚠️ Critical release for mainnet users

If you sync Cardano mainnet with Yaci, upgrade to 0.4.7 now.

Earlier versions can silently drop every transaction in some mainnet blocks. If a block's transaction-body array has between 128 and 255 entries and uses a definite-length CBOR header (0x98 + one byte), TransactionBodyExtractor read the count as a negative number. The block was parsed with zero transactions and no error was raised. Its witness sets were still read, so the block looked valid.

This already happened on mainnet block 14,053,493 (137 transactions). That block was returned with txs=0, and the inputs of the next block could not be resolved. The same fix also applies to auxiliary data parsing (AuxDataExtractor).

If you ran an earlier version on mainnet, check whether you stored or indexed any blocks with 128–255 transactions. Data derived from those blocks may be missing transactions and should be re-synced.

What's Changed

  • fix(core): read a one-byte CBOR count as unsigned in TransactionBodyExtractor by @edridudi in #211