Does @Luke Dashjr understands that op_return is not a part of coinjoin txn? This rant is misleading.
You see it’s not a coinjoin ban.
Tx0 is a prep txn NOT a coinjoin txn.
one needs to understand why it is a prep tx? Unlike a payjoin(stowaway) the purpose of a coinjoin is not to hide the nature of the transaction.
It's a bit like encryption: the objective is not to hide the fact that the text is encrypted, but to make it impossible to understand.
Also Tx0 fees are paid to the software publisher, not to the coordinator and no fee is paid during mixing, except fees that paid to miners.
then tx goes to premix/postmix which belongs to your own derivation path your wallet never loses possession of sats.
Therefore op_return contains info allowing the server to verify that the fee was actually paid to an address., because sending to whirlpool means sending to your own hardened derivation path that you control. It's an anti-spoofing mechanism. If the fee is not seen in the blockchain then the inputs are not registered. It also allows to not use a static fee for address collection.
The use of op return in tx0 resilient to potential coordinator failure and enable decentralization - two things a coordinator database can't solve.
You do not need OP_RETURN or a "prep" transaction to coinjoin. Wasabi Wallet, BTCPay Server, Trezor, and JoinMarket all do coinjoin transactions WITHOUT spamming the chain with tx0 transactions.