I don't use Data Warehouse much, so my answer won't be 100% applicable to you.
I prefer "Use generic success events and create calculated metrics for specific conversions using an eVar".
- In my experience, an AA user is more likely to want to know the total count of a success event rather than a unique count.
- If a unique count is needed, a Calculated Metric can solve for that.
I don't particular use option 2. It's not trivial to calculate a total count from a unique count, if the total count is ever needed. Heck, I don't even think that's possible! So I'd reserve this only for those specific cases where a total count is illogical, e.g. the classic case of counting purchases where a user could reload the Thank You page.
For option 3, I've found that duplicate success events (e.g. one non-unique, one unique) can lead to more confusion, especially when new AA users get started.