By deafult, in a newly created descriptor wallet that is not watch-only and not empty, listdescriptors true
works and gives output.
However, here is a scenario that breaks it:
- Get a new address in the descriptor wallet.
- Retrieve its public address (pub1)
- Create a multisig address with using this public address (pub1) and two others (pub2, pub3)
- Import the following descriptor into the wallet:
sh(multi(priv1,pub2,pub3)
; I retrievedpriv1
fromlistdescriptors true
. - Now, if I try
listdescriptors true
again, an error is returned:
"error": {
"code": -4,
"message": "Can't get descriptor string."
}
Is this expected as a result of how I imported a descriptor that mixes xprv and pubkeys, or is it a bug?
Note: when importing such a descriptor, I got a warning:
{"success": true, "warnings": ["Not all private keys provided. Some wallet functionality may return unexpected errors"]}