You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
96cb2ecdb8d1511f05e8b51531e8719626f6ef31 Add comment to decoding x-only keys (sanket1729)
498bad2338fa43d2e4384023c28b7e9ec9772953 Address review feedback (sanket1729)
954df3572e1d36a93e884483f09e98b0d0a2186b Check stack execution height in tapscript execution (sanket1729)
95ab99da07d59bf8e2b4577718dcd5baa113e4be Add height check to miniscript types (sanket1729)
3eb63d598f8c0b9ad21d970e6cdc1f5fc487fbaf Add parse/parse_insane for schnorr keys (sanket1729)
888cd62ca6cb39fa2975c939bab31261a6af7076 Add support for parsing Tapscript Miniscripts (sanket1729)
9a5384daee91c87fa60fcd82718a8f641c2426dc Add TapCtx (sanket1729)
4da439f561db9e97e357abb0beb27132a6f8a0bb Fix warnings (sanket1729)
Pull request description:
This is still a draft WIP for taproot PR. There are several API changes and multiple design decisions, and I am open to other possible design opinions. In particular, feedback about changes to `ToPublicKey` and the `ScriptContext` trait is appreciated.
This does **not** include support for P2TR descriptors, multi_a fragment in miniscript.
Still todo:
- [ ] Track height during execution to make sure we don't exceed 1000 elements. This was not a concern previously because it was impossible to hit the limit without exceeding 201 opcodes. But with taproot, this is now possible. See #198 .
- [ ] Implement support for multi_a fragment in Taproot. Depends on support for new opcodes from rust-bitcoin. We can use NOPs meanwhile as this is not a hard blocker.
- [ ] Implement taproot descriptor. This would require some design considerations about the tree representation.
- [ ] Integrate taproot with interpreter and compiler. The interpreter is probably straightforward but carrying around `bitcoin:::PublicKey` and `schnorr::Publickey` would be tricky.
- [ ] Integrate with descriptorPublicKey so that descriptor wallets like bdk can actually use it.
ACKs for top commit:
apoelstra:
ACK 96cb2ecdb8d1511f05e8b51531e8719626f6ef31
Tree-SHA512: 261173c3a6f8c980d204fce1f868dcd17c4219fd12a8e6e197b503efb47ae9b9371d7a9208c43008f1c21db55ffc3f68e6d7fb8badbf2bf397b2970292f8ffe4
0 commit comments