Does it make sense to decode the raw transaction in the wallet-rpc `gettransaction` call (or add an optional parameter to do so)?

See discussion in https://github.com/bitcoin/bitcoin/pull/15159#issuecomment-499051813
{
            RPCHelpMan{"listwalletdir",
                "Returns a list of wallets in the wallet directory.\n",
                {},
                RPCResult{
            "{\n"
            "  \"wallets\" : [                (json array of objects)\n"
            "    {\n"
            "      \"name\" : \"name\"          (string) The wallet name\n"
            "    }\n"
            "    ,...\n"
            "  ]\n"
            "}\n"
                },
                RPCExamples{
                    HelpExampleCli("listwalletdir", "")
            + HelpExampleRpc("listwalletdir", "")
                },
            }.Check(request);
    UniValue wallets(UniValue::VARR);
    for (const auto& path : ListWalletDir()) {
        UniValue wallet(UniValue::VOBJ);
        wallet.pushKV("name", path.string());
        wallets.push_back(wallet);
    }
    UniValue result(UniValue::VOBJ);
    result.pushKV("wallets", wallets);
    return result;
}
static UniValue listwallets(const JSONRPCRequest& request)