Using Restic with large, immutable files

This is actually not true. First, “got included in a new snapshot” is not a very precise formulation as all present files get included (i.e. referenced) in a newly created snapshot. I assume you mean “got reported as changed”, right?

However, file change detection is done by using the metadata information (mtime, size,..) of a file. When you have bit rot, the file contents are changed without a change in the metadata. In this case, restic backup will report the file as unchanged and still reference to a version without bit rot in the snapshot.

(BTW: There are stories about users finding bit rot on the hardware they use to store the repository - here restic is able to detect this as it reads the content as well as the additionally stored checksums and can perform the needed checks)

Bitrot detection has been already discussed e.g. in How to verify local data against the restic index.