rpc: fix rpc typechecking errors

Fixes (most?) of the rpc typechecking errors, at least the ones that are
tested by the functional tests.

However, I've left the rpc typechecking off after fixing these, since
I'm concerned that there are conditional cases that are untested in our
functional tests - and I'd rather not have RPC calls failing in a
release just because the documentation is not correct.
This commit is contained in:
Byron Hambly 2025-10-30 15:11:48 +02:00
parent 9b12523970
commit 862a6868d8
No known key found for this signature in database
GPG key ID: DE8F6EA20A661697
10 changed files with 156 additions and 57 deletions

View file

@ -44,12 +44,18 @@ static RPCHelpMan validateaddress()
{RPCResult::Type::BOOL, "iswitness", /*optional=*/true, "If the address is a witness address"},
{RPCResult::Type::NUM, "witness_version", /*optional=*/true, "The version number of the witness program"},
{RPCResult::Type::STR_HEX, "witness_program", /*optional=*/true, "The hex value of the witness program"},
{RPCResult::Type::STR_HEX, "confidential_key", "the raw blinding public key for that address, if any. \"\" if none"},
{RPCResult::Type::STR, "unconfidential", "The address without confidentiality key"},
{RPCResult::Type::STR_HEX, "confidential_key", /*optional=*/true, "the raw blinding public key for that address, if any. \"\" if none"},
{RPCResult::Type::STR, "unconfidential", /*optional=*/true, "The address without confidentiality key"},
{RPCResult::Type::OBJ, "parent_address_info", /*optional=*/true, "If the address isvalid_parent, this object contains details about the parent address type",
{
{RPCResult::Type::STR, "address", ""},
{RPCResult::Type::STR_HEX, "scriptPubKey", ""},
{RPCResult::Type::STR_HEX, "scriptPubKey", "The hex-encoded scriptPubKey generated by the address"},
{RPCResult::Type::STR_HEX, "confidential_key", "The raw blinding public key for that address, if any. \"\" if none"},
{RPCResult::Type::STR_HEX, "unconfidential", "The address without confidentiality key"},
{RPCResult::Type::BOOL, "isscript", "If the key is a script"},
{RPCResult::Type::BOOL, "iswitness", "If the address is a witness address"},
{RPCResult::Type::NUM, "witness_version", /*optional=*/true, "The version number of the witness program"},
{RPCResult::Type::STR_HEX, "witness_program", /*optional=*/true, "The hex value of the witness program"},
}},
{RPCResult::Type::STR, "error", /*optional=*/true, "Error message, if any"},
{RPCResult::Type::STR, "error_parent", /* optional */ true, "Error message, if any"},