There is no need for TL;DR for me , I read all . But if you say that we never lose our bitcoins then how do you explain last time on Bit-x.com (just an example) signature compaign , some people got affected with this attack and never received their coins , and Bit-x had to send us the payouts once again , so the first BTC that they sent and we never received them ... where are they if they are not "lost" ?
Let me make two examples, first the one where no problems occure but the whole things is a bit annoying.
Alice wants to send coins to Bob and issues a transation. The TX uses confirmed(!) inputs since Alice received the coins weeks ago. The TX gets modified along the way and Bobs wallet freaks out slightly. It could e.g. show a wrong balance because it shows the inputs from Alice twice. Once one of the two TX is confirmed, Bob does a rescan for the wallet and everything is fine.
Now a variant that might have happened with Bit-x, because they are a service and send coins on a regular basis.
Alice sends coins to Bit-x. The coins are added to her balance and she is happy. Before the transaction is confirmed Bit-x uses the coins to issue payment for their signature campaign. Because of the way transactions work, they point to the TX ID Bit-x received first. While they did this, the TX was modified and got another TX ID. Now we have two competing transactions. One where everything is fine and one where the follow up TX to the participants of the campaign gets invalid. If the modified TX gets confirmed (which happens) the follow up TX requires a TX ID that can not confirm. Thus it becomes invalid as well. Nodes start to drop it from their memory or at the very least no longer relay it.
The participants got no payment and Bit-x needs to make sure their code does not issue TX that use unconfirmed inputs.