CHANGELOG (2330B)
1 # Changelog 2 3 - 0.1.0 (UNRELEASED) 4 * The library's scope is being redesigned, and this version is not 5 yet ready for release (see the README for what it does and 6 doesn't cover). 7 8 * Ports to ppad-bolt1 0.1.0, ppad-bolt3 0.1.0 and ppad-tx 0.2.0, with 9 breaking changes: 10 11 * Amounts, points and hashes are bolt1's types (amounts are 12 bounded, with checked arithmetic), and ChannelFeatures is 13 replaced by bolt3's CommitmentFormat. 14 15 * The classifiers read each HTLC output's HTLC from bolt3's 16 OutputHTLC, and no longer take an HTLC list. 17 classify_remote_commit_outputs no longer takes the channel 18 features, and classify_revoked_commit_outputs takes only the 19 commitment and the revocation pubkey. 20 21 * spend_htlc_tx replaces spend_htlc_timeout and spend_htlc_success, 22 building the transaction with bolt3's build_htlc_tx, and fails 23 if bolt3 can't build it. 24 25 * The API is exported from Lightning.Protocol.BOLT5 alone, with 26 snake_case names (htlc_output_type, htlc_output_type_weight); the 27 Internal module is removed. Every public type has an NFData 28 instance. 29 30 * extract_preimage_offered and extract_preimage_htlc_success take 31 the HTLC's payment hash, and revoked_output_weight and 32 htlc_output_type_weight the commitment format. 33 34 * spending_fee saturates at 21 million BTC. 35 36 * Fixes preimage extraction, which never matched a real witness (one 37 ending in the witness script), and checks preimages against the 38 payment hash. 39 40 * Fixes identify_close, which compared an unsigned serialization with 41 the signed transaction found on chain; it compares txids. 42 43 * Fixes HTLC output classification, which matched outputs to HTLCs by 44 script alone, so that HTLCs sharing a payment hash were confused. 45 46 * Fixes the sighash type of the local signature on anchor-channel 47 HTLC transactions, which is SIGHASH_ALL. 48 49 * Sweeps no longer create outputs below the destination's dust 50 threshold, and anchor-channel HTLC penalty sweeps use the anchor 51 scripts' weights. 52 53 * Removes spend_revoked_batch and PenaltyContext, whose transaction 54 couldn't be signed. 55 56 * Tests check HTLC transactions and preimage extraction against the 57 BOLT #3 Appendix C and F vectors. 58 59 - 0.0.1 (2026-04-18) 60 * Initial release.