Built a monitoring agent for Kopia, found its local cache can mask real corruption

Built a small tool called Vestal that runs on top of Kopia (and restic/Borg/Duplicati) to verify backups actually restore, not just that the job finished. Your kopia snapshot commands stay untouched, one added line runs kopia content verify with a percentage of real data re-read and reports pass/fail to Vestal.

One real thing I hit while testing, not just a theoretical concern: a warm local cache can make a genuinely corrupted Kopia repository report as completely healthy. kopia content verify against the exact same hand-corrupted repo returned 0 errors with a warm cache, and correctly found the corruption the moment the cache was cleared. The agent now always points Kopia at a fresh, throwaway cache directory for exactly that reason.

Free to self-host forever, AGPL, code’s public. If anyone here has a Kopia setup they’d be willing to try it against, I’d genuinely like to know if it holds up outside my own testing. https://vestalapp.com