It's just a matter of how one works...
I know that I can:
- Perform manual checks every time I save.
- Wait till I'm finished to save (with his manual check or your proposed automated one on exit + save). (But I'm always fearing there's going to be a power shutdown, a windows crash, whatever...)
- Thousand of other options.
But I really would prefer an absolutely safeguard measure like perform critical checks, (I insist on "critical"; I mean parsing errors, I don't care about the book containing the Calibre bookmark file) on every save, even if it makes that saving process somehow slower (even with a waiting clock displayed in the middle of the screen). And remember that I would like to be asked for confirmation about continue saving or not if critical errors are present, in a similar way you are asked when quitting without having saved.
I'm in an ageing Core-2-Quad 2.4GHz and running full Check Book takes about 3 seconds at most in "Infinite Jest" (which is a really long book). I don't really mind waiting 3 seconds but being fully sure that the lose of "undoing" function associated to the saving process is not important.
But as you say, that possible waiting can be REALLY annoying for other users. Because of that, I ask (if possible) for a option about it, not an always-enabled feature...
(I would likely code it myself if capable, but that's not possible, I fear...

)