Please look at the 0conf issue from the side of a normal fiat user. Its tempting to look at it from the developers side. Its very hard to be against 0conf if you understand that you will need to wait at the ATM. Look at this issue from a perspective of an individual, who has only a signing device and no node. Or he has a node, but not a LN node. its hard to manage a LN node.
I don't know how your local ATM company is going to handle it. The fact is that zero confirmation transactions were never completely safe, and all businesses which rely on them were going to have to adapt to a better model at some point. That point is now (or at least, within the next few months).
Why? Why would this point be now?
You do not know how companies are gonna adress the changes and at the same time, that is perfectly fine?
everyone knows 0conf tx is riski. and after the update it will still be. the only change is that 0 conf are not possible anymore.
The most obvious answer is Lightning. For an ATM this seems like the easiest option. Display an invoice, you scan the invoice, it spits out cash, or you create an invoice, show it to the ATM's camera, and it sends you the bitcoin. Other options are to continue to accept zero confirmation transactions in the short term but make their exchange rate for such transactions worse to cover for the increased risk, or to require a minimum of one confirmation for everything. You'll have to wait and see which route they choose.
The problem with LN has been presented before. It is not used widely enough.
If i wanna use it selfcustodyed, then i need to learn channel balancing and i do not know what all things. The other way i could do is to trust someone to have a LN node and he does all his work (an LSP like breez). But that is not self custody. LN has come a long way in the terms of usability. The two bugs that happened recently shut down my node...
Right now LN is not in a state to push it on everyone. LN is still "beta".
Onchain is the lowest layer and it has functioned realy well and stable. And still is. This change is taking a "hack" away, where companies used it as a good UX way. Developers are now taking that away, for no apparent reason. The bussines already know it was risky.