Kallisti, you provide some steps, not sure which wallet actually does any of that. It probably is some web page, not a wallet. Nothing you can use in a store at the payment terminal. “Oh, wait a moment sir, I need to scan your QR to find the address to then go through this website and do some shit there to pay you from my withdrawal.”
So in reality you went to a website to send money to your wallet address. But that is not the scenario BCA was talking about.
He was talking about the transaction needing to be protected FOR THE RECEIVER. Which you yourself are here. There is no danger, no problem to solve in the scenario you gave.
So maybe you forgot the add the last line:
- go to a physical store and spend your coin from your mobile wallet.
Well, and for that go actually happen, that wallet you have on your phone should prefer unconfirmed UTXOs, which AFAIK none of them do… And you have to be pretty fast to avoid your website initiated transfer having confirmed before you get to the store and select your goods or drinks and finish them to get to the point where you pay.
The end result is that there is nobody that is seeing problems today, because the scenario is just not something that happens in real life. No actual (single) wallet can create this issue, and existing ones combined don’t run into it either.
On top of that, the solution is trivial, the end user that creates this issue ends up waiting for a confirmation at the payment terminal. Because DSProof is about enabling the 99.9% of usecases, not about making that 100%. You can avoid becoming the 0.1% and keep things going smooth.
And to strengthen the point; making a change to the protocol as massive as block time changes needs actual real life problems to be solved. Not some imaginary problems that we are not seeing any amount of actual end users having problems with.
Lets not do what Peter Todd did to push through RBF; be the attacker and victim in an artificial scenario that when it “succeeds” in failing is then used as proof to show it is a real issue.