https://doc.rust-lang.org/nightly/reference/types/closure.html#unique-immutable-borrows-in-captures
This borrow kind exists to support capturing let x = &mut whatever and mutating through x without triggering the non-soundness critical "missing mut binding" error.
Stating that it's immutable is wrong and for rustc itself, has been actively dangerous: rust-lang/rust#112056
We've since removed this borrow kind in rustc itself: rust-lang/rust#112119. I am not totally sure how to rework this, but "unique immutable" is imo definitely the wrong perspective