OK, here's a crazy idea, related to #2377 (deactivate plugins on upgrade)... if we don't deactivate plugins on upgrade, we should have hooks in the upgrade process that would allow a plugin to deactivate/reactivate and even upgrade itself if it needs to.
Or if we keep the deactivate/reactivate on upgrade (in #2377), there should be a hook for "reactivate".
Regardless, I think plugins should have the ability to know when you've upgraded without having to compare the version in the 'init' hook on every page load. Especially if there is a compat problem with the plugin, the plugin could notify you during the upgrade process before you try to hit the site and watch the plugin throw PHP or MySQL errors.
Just the start of an idea, opinions wanted...