I want to clarify what the real problem is.
If a Roon library has ‘latent corruption’ it can still be used for some period of time.
Because Roon doesn’t bother to make even simple checks to see if there is ‘latent corruption’ it will blithely backup the library. If the Backup is ‘successful’, then no further errors are reported.
When a Roon library with ‘latent corruption’ inevitably ■■■■■ the bed, if the corrupted library has existed for awhile and through a number of Backups, then it is possible that all the good Backups have been overlaid with backups of a corrupted library.
In this case, no Restores will salvage a corrupted Roon library. Only starting from scratch will ‘fix’ this state.
Since Roon logs seem to (in many cases) report a corrupted library, one solution is to check the logs, which could be done concurrently with the backup process, and if corruption is found then throw away the backup, put out a warning message and don’t do any further backups until the problem is resolved. In this way, no good backups will be overlaid.
The resolution, of course, is to Restore the library. Now this will work because no corrupted Roon library has been allowed to be backed up.