Add sortedmulti descriptor support (sh/wsh/sh-wsh) with validation and integration tests #51
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds support for
sortedmulti()descriptors in standard contexts:sh(sortedmulti(...))wsh(sortedmulti(...))sh(wsh(sortedmulti(...)))The implementation includes parsing and validation of
sortedmulti(M, keys...), treated as a script expression.Tests
Added complete integration test suite covering:
sh(sortedmulti)wsh(sortedmulti)sh(wsh(sortedmulti))Positive flows: fund → PSBT → sign → finalize → broadcast
Negative cases:
Added fixture coverage for sortedmulti in SegWit and nested contexts.
Updated integration commands to include sortedmulti tests.
Note on Key Count Limit (Temporary)
Although
sortedmultisupport up to 20 keys, actual multisig scripts created through bitcoinjs-lib are temporarily limited to 16 keys until this PR is merged.Version bump
This PR also bumps the package version to 2.3.5 to publish the new functionality.
Fixes #44