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.)