Why is CPFP (Child pay for parent) immune to double spend? Assuming I have 10 Bitcoins in my wallet and I send 4 BTC with a tiny fee and it gets stuck in the mempool due to a low transaction fee. If I understand CPFP correctly I would then send a second transaction of 4 BTC with a higher fee to the same address. My second transaction is likely to confirm quickly, but what happens if most of the mempool transactions start to get processed due to low demand and my first transaction finally gets processed? Why would a miner reject it and would I be left with 2 Bitcoins or 6?
If you're doing CPFP right, The two transactions you sent are both originating from the same UTXO, but one spends the output of the older transaction with a higher fee.

If the miners want to get the fees of the last transaction ( the transaction with the higher fees), they will need to mine the first one aswell.

So, if your first transaction gets processed first, it's probably just a matter of time before your second one gets confirmed (due to the high fees), leaving you with the 4 bitcoin - (fees).