"In Wallet::create_tx when the outputs vector of the transaction is empty, you have a comment "We have a drain_to address and the utxos we must spend (this happens, for example, when we RBF)" which seems misleading to me. If by "when we RBF" you mean what build_fee_bump does, then it's incorrect as build_fee_bump won't set params.drain_to."
"In Wallet::create_tx when the outputs vector of the transaction is empty, you have a comment "We have a drain_to address and the utxos we must spend (this happens, for example, when we RBF)" which seems misleading to me. If by "when we RBF" you mean what build_fee_bump does, then it's incorrect as build_fee_bump won't set params.drain_to."