How to check for completeness when upgrading fails and stuck in maintenance mode

When WordPress shows themes/core/plugins are updated, it means they were successfully upgraded. Which means WP was able to download the zip, extract it then able to put/overwrite files into the file system.

WordPress does not save plugin/theme versions as a database entry they are directly read from plugin files and theme css. Theme/plugin/core bundle are served as a zip file. A partially downloaded zip files can not be extracted successfully because it will appear as a corrupt file.

On the contrary, there could be a possible scenario where WP was able to update the main plugin file or themes css file but not other files but I will assume possibilities of that happening is near zero. Write operation often fails when server doesn’t have enough permission. If it can write one file it should be able to write all of em.

That being said, if you still want to make sure files are same as the WP repository. You can install the Wordfence plugin and do a scan. It can check current version of the plugin/theme/core to the WP repository (you will have to enable that option, it is not default) and tell you if anything missing or changed.