1. Gpio00 button can prevent autorun, but what if no AP is available to connect to and offer opportunity for changing settings or modifying the script?
An effective alternative gpio00 abort solution could be to invoke whatever wifi defaults routine is obviously built-in to the interpreter and reboot to those default ESP 192.168.4.1 AP settings without autorun.
Even easier would be for a gpio00 autorun abort to autorun a different script instead, such as perhaps failsafe.bas rather than default.bas, but it would obviously need to be present in order to do anything useful.
The ideal would be for a gpio00 abort to run an optional failsafe.bas if it exists, or else internally reset wifi settings to defaults then reboot.
2. To wake an ESP device from sleep you could buy it a 5 quid alarm clock ... one of those cheaply available timed air freshener gizmos. Think about it! They have a couple of AA batteries which lasts for months even without solar charging. They usually have a timer switch for long, medium, quick delays (easily hacked for different capacitors). And if you didn't want to interface to the electronics you could simply have the motorised gizmo press a reset button instead of the aerosol spray nozzle.