Summary
tinyminiscript rejects a valid multipath xpub descriptor that maintained peer implementations accept and compile.
Minimal repro
sh(wpkh([abcdef12/84h/22h]xpub6F6wWxm8F64iBHNhyaoh3QKCuuMUY5pfPPr1H1WuZXUXeXtZ21qjFN5ykaqnLL1jtPEFB9d94CyZrcYWKVdSiJKQ6mLGEB5sfrGFBpg6wgA/<0;1>/*))
Observed behavior
The parser rejects with:
InvalidKey { ... inner: "Invalid path" }
Cross-check
The same descriptor is accepted by:
rust-miniscript
bitcoin/bitcoin
embit
NBitcoin
Why this looks like a real bug
The project advertises extended-key support, and its helper-level key parsing does handle normal xpub derivation suffixes. The failure appears when the xpub suffix is parsed as a plain derivation path, which causes valid multipath syntax such as /<0;1>/* to fail early.
Summary
tinyminiscriptrejects a valid multipath xpub descriptor that maintained peer implementations accept and compile.Minimal repro
Observed behavior
The parser rejects with:
Cross-check
The same descriptor is accepted by:
rust-miniscriptbitcoin/bitcoinembitNBitcoinWhy this looks like a real bug
The project advertises extended-key support, and its helper-level key parsing does handle normal xpub derivation suffixes. The failure appears when the xpub suffix is parsed as a plain derivation path, which causes valid multipath syntax such as
/<0;1>/*to fail early.