In Monero every spend signs as one member of a ring assembled from decoy outputs on the chain, so the true spent output stays ambiguous within the ring. Ring size sets the per-transaction ambiguity.
Research on decoy selection and timing continues, and historical weaknesses were fixed by protocol changes. The linked analysis covers what tracing claims can and cannot establish against the current protocol.