When a witness who has been given a grant of “testimonial immunity” later contradicts their agreement, the enforcement mechanism depends on the nature of the contradiction. Testimonial immunity is a formal agreement where the government compels a witness to testify, and in exchange, it promises that the witness’s own truthful testimony will not be used against them in a future prosecution. The key word is “truthful.”
If the witness testifies at a trial and their testimony is inconsistent with a prior statement, but they are not lying on the stand, the immunity grant is still in effect. The prosecuting attorney will simply have to deal with the fact that they have an inconsistent witness, and the defense attorney will use that inconsistency to attack the witness’s credibility during cross-examination. The witness themselves is not punished for simply changing their story.
However, if the witness gets on the stand and testifies untruthfully, they have violated the terms of the immunity agreement. The immunity grant only protects them from having their truthful testimony used against them. It does not protect them from a new criminal prosecution for perjury under Article 131, UCMJ, for lying under oath. The government can charge them with perjury based on their false testimony at the trial. This is the primary enforcement mechanism that ensures a witness with immunity still has a powerful incentive to tell the truth.