Coinjoin and coinswap is quickly making the tracing very difficult.
Chainalysis says that Coinjoin introduces taint: https://go.chainalysis.com/rs/503-FAP-074/images/Advanced-Ob...
I believe that if someone uses something that's private by default, then its okay. However if someone uses someyhing that isn't private by default, but goes through efforts to try to hide the source of the funds, then it's suspicious.