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
{{ message }}
Repository navigation
add support for wizardconnect to "generateWcTransactionObject" #401
add support for wizardconnect to "generateWcTransactionObject"
wizardconnect supports HD wallets so user inputs can come from multiple addresses and hence the UTXO info needs to be mapped to the corresponding address
We tried to implement WizardConnect into the SDK directly. Since the only difference with WalletConnect is that there's an extra list of inputPaths, which documents the HD path of the address that is expected to sign the input, we added optional HD path information to the existing PlaceholderP2PKHUnlocker.
However, then we ran into the issue that you might also need to sign placeholder signatures in contract inputs (e.g. withdrawing from a Cauldron pool), in which case you would also need to add the HD path information to "regular" contract inputs. This becomes a bit too complicated for a very light abstraction.
Since a WizardConnect-integrated dapp would be expected to already provide the HD information to the SDK, it might as well provide the entire inputPaths directly. An extra WizardConnect abstraction on the CashScript SDK side is therefore not something we'll add.
Instead they can use the existing WalletConnect utils to generate the main WC transaction object, and they can manually add the inputPaths to it. We'll update the docs for that.
Activity
mr-zwets commentedon Jun 2, 2026
we could do something like this where we optionally extend
placeholderP2PKHUnlocker(address, options?)we'd then add
hdPathinfo to the user inputs and add agenerateWizardConnectTransactionObjectmethod to the transaction builderimplemented in #408
rkalis commentedon Jun 4, 2026
We tried to implement WizardConnect into the SDK directly. Since the only difference with WalletConnect is that there's an extra list of
inputPaths, which documents the HD path of the address that is expected to sign the input, we added optional HD path information to the existingPlaceholderP2PKHUnlocker.However, then we ran into the issue that you might also need to sign placeholder signatures in contract inputs (e.g. withdrawing from a Cauldron pool), in which case you would also need to add the HD path information to "regular" contract inputs. This becomes a bit too complicated for a very light abstraction.
Since a WizardConnect-integrated dapp would be expected to already provide the HD information to the SDK, it might as well provide the entire
inputPathsdirectly. An extra WizardConnect abstraction on the CashScript SDK side is therefore not something we'll add.Instead they can use the existing WalletConnect utils to generate the main WC transaction object, and they can manually add the
inputPathsto it. We'll update the docs for that.