I think we both agree that free transactions, rate limited e.g. by bitcoin-days-destroyed, are a positive thing.
That is right, we are on one line there.
But what are your feelings on (a) the dust limits and (b) miners with widely-varying mempool-acceptance policies (e.g., the risks this imposes on instant transaction security)?
Ok, personal opinion rant coming up
a)
I think dust limits only exist as an artificial construct that exists to reinforce the "fee market" concept that Core made up.
The way I figure that is simple. When transactions are no longer prioritized based on a fee and gratis (free) transactions are allowed then there can be no dust. Because dust outputs are defined as being too expensive (fee wise) to spend.
b)
yes, I do think that widely varying mempool acceptance policies has the potential for abuse with regards to zero-conf. This opens up scenarios where an attacker can send a transaction it knows some miners reject, and then offer an alternative transaction to those miners (which he can do even after he leaves the store) and repeat this attack until his target miner mines a block whcih leads to his profit.
Personally I'm a fan of allowing miners to differentiate. The opposite of stasis. Any distributed system has to be always changing, or it becomes too easy to attack. So I want to make clear that in my opinion the problem here is NOT that miners used different policies. Instead the problem is that we don't detect such double spends.
The BUIP85 (relay both transactions when a double spend is detected) idea doesn't solve this exact problem. You still hit those mempool limitations. I explained this more on that BUIP post for the curious.
The proper solution is more in the direction of a BUIP88 which describes the creation of a double-spend-proof which notifies both the miners and the merchant of said double spend attempt so they can react and do the right thing based again on those local policies.