Compute has_partial_spend inside CreateTransactionInternal using the
available_coins that are already fetched for coin selection. This avoids
a redundant AvailableCoins call compared to checking after the fact.
The check determines if the selection spends some but not all UTXOs from
any scriptPubKey. If no partial spend exists, APS cannot improve privacy,
so we skip the second coin selection attempt entirely.
Benefits:
- Avoids unnecessary double coin selection when APS provides no benefit
- Eliminates misleading tracepoint data
- Prevents potential disimprovement of selection results
- No extra AvailableCoins call (uses existing data)
Add has_partial_spend field to CreatedTransactionResult to communicate
this information from CreateTransactionInternal to CreateTransaction.
Update interface_usdt_coinselection test to set up partial spend scenarios
so APS tracepoints fire as expected.
Fixes #25150