Standalone reboot before commit, rollback script does not run

I am automating a stand alone upgrade via a web interface. In the event of a failure whereby the web interface is unavailable rebooting the unit rolls back to the previous partition as expected however it does not appear to run the rollback script. Is this the expected behaviour? . I had hoped to use the rollback script in this situation to clean up the files that the web interface is using to track the current state of the upgrade. Is there perhaps another way that on reboot the app/web interface can know that an upgrade happened and therefore it should give the user the options to commit or rollback ?