Transactional immunity and use immunity (both related to the constitutionally protected right against self-incrimination) should be prohibited. If somebody did something wrong, there should be no way out of punishment.
Diplomatic immunity (such as for tax avoidance and evading prosecution of foreign government personnel) usually granted to a diplomat should also be prohibited.
No immunity of any kind should ever be allowed to protect any person from punishment for any crime or wrong for which that person can be proven to have intentionally done. Since immunity is often granted to an individual in an attempt to get them to divulge some important information about a larger case, what can be done instead is pay or compensate that person for the information provided, but still prosecute him/her on the usually smaller crime that he/she committed and for which they commonly seek immunity. In the end, the person seeking immunity may still get much what they originally wanted – a reduced punishment for their own crime.
If some decision or action committed by a person turned out to be wrong after the fact, and no intentional wrongdoing, recklessness, or criminal negligence can be proven on the part of that person taking part in the decision or action, such events should usually just be regarded as a mistake, and the offended party should just acknowledge and assume the losses.