I’ve also been involved in a few discussion on this topic and one approach that seemed interesting is the idea of tokens that must be spent by a party that wants to record a transaction, but the tokens are issued by the party they want to transact with and can only be used with that party.
If the relationship was between an individual and an organization (e.g. a vendor) the organization would issue the tokens required to perform the interactions with them to the individual and the individual could only spend them with that organization . The vendor themselves would need to obtain the tokens they issue somewhere along the line and they might be a cost of participating in the network. The tokens could be destroyed once used which would require the organization to purchase more when they have exhausted their tokens but would prevent a malicious party from setting up an organization and an individual account and then just cycling the tokens between the accounts in an infinite loop and creating malicious transactions.
Of course, transactions between individuals directly would probably have to be handled differently as individuals aren’t going to want to pay to participate, but a throttling approach might work here.
Using the two different approaches would allow for a higher volume throughput for different classes of network participant.
Anyway, just my brain steaming away so don’t read anything into it.