We know that 2 is insufficient and 10,000 is more than enough.
We also know JoinMarket can achieve about 2-6, Monero 2-3, but there all transactions are mixed, so they add up, CoinJoin can do 400-ish, but 50-100-ish is more realistic.
What kind of practical or theoretical approaches there are those can help decide what anonymity set should a developer/researcher aim for?