Are CoinJoin transaction truly private?
The coinjoins implemented by the 3 wallets I listed are truly private, the only exception is if one participant in a coinjoin has more liquidity than everyone else.
What about the blockchain analysis projects that are around?
A blockchain analyst could try to spy on coinjoins using a Sybil attack, but attempting this attack requires a lot of liquidity and fees.
Does this feature make Bitcoin private, or "mostly private"?
It depends on the implementation, I explain the differences in detail here:
https://bitcointalk.org/index.php?topic=5482818.0