Loading
fix: check input address reuse before signing in the cli client
Follow up to !35 (merged). The cli client validated the output set before signing, but its own input address was only checked by the daemon after walletprocesspsbt had produced a signature. A reuse check that runs after a signed PSBT is published is detection, not prevention: every peer holds the pool key, so an attacker already has all published signed PSBTs and can combine and broadcast them regardless of what honest peers refuse to do.
The client now rejects a selected UTXO whose address is one of the round's output addresses before the PSBT is created and signed, matching the plugin and the web GUI which already check before signing. The daemon side checks from !35 (merged) remain as a backstop; a PSBT they reject is never published.