When a git-annex repository is on eg, a zfs or btrfs filesystem, the filesystem has built-in checksum verification of file. So a "scrub" operation that just reads all annexed files can detect when a file has gotten corrupt.
This could be an enhancement to git-annex fsck, or a separate command.
Note that this could detect corruption of files whose key does not contain a checksum.
Since fsck reads the file content anyway when checksumming, the enhancement could be an option to scrub files that don't use checksums.
It would make sense to move a file that is detected as corrupt to .git/annex/bad/ the same as fsck does.
(Idea from Timothy Sanders.)