processUpdate
Process transaction update from subscription.
Handles both transaction updates (with UTXO changes) and progress updates.
For transaction updates (based on status):
SUCCESS/PARTIAL_SUCCESS:
Insert created UTXOs (state = AVAILABLE)
Mark spent UTXOs as SPENT (permanent)
FAILURE:
Don't insert created UTXOs (never created on-chain)
Unlock spent UTXOs (PENDING → AVAILABLE) so they can be reused
For progress updates:
Just return (nothing to do with UTXOs)
Return
ProcessingResult indicating what was done
Parameters
update
Update from subscription