External inputs are currently only supported for initial transaction creation functions. Extend `solving_data` arguments as necessary to support fee bumping wallet transactions with non-wallet inputs.

https://github.com/bitcoin/bitcoin/pull/17211#issuecomment-897653994
[&](const RPCHelpMan& self, const JSONRPCRequest& request) -> UniValue
        {
            RPCTypeCheck(request.params, {
                UniValueType(), 
                UniValue::VNUM, 
                UniValue::VSTR, 
                UniValueType(), 
                UniValue::VOBJ, 
                }, true
            );
            std::shared_ptr<CWallet> const pwallet = GetWalletForJSONRPCRequest(request);
            if (!pwallet) return UniValue::VNULL;
            UniValue options{request.params[4].isNull() ? UniValue::VOBJ : request.params[4]};
            InterpretFeeEstimationInstructions(request.params[1], request.params[2], request.params[3], options);
            PreventOutdatedOptions(options);
            CAmount fee;
            int change_position;
            bool rbf{options.exists("replaceable") ? options["replaceable"].get_bool() : pwallet->m_signal_rbf};
            CMutableTransaction rawTx = ConstructTransaction(options["inputs"], request.params[0], options["locktime"], rbf);
            CCoinControl coin_control;
            
            
            coin_control.m_allow_other_inputs = rawTx.vin.size() == 0;
            SetOptionsInputWeights(options["inputs"], options);
            FundTransaction(*pwallet, rawTx, fee, change_position, options, coin_control, false);
            return FinishTransaction(pwallet, options, rawTx);
        }
    };
}
RPCHelpMan sendall()