On the esp8266 the built-in telnet console and the web-server used by wiflash come up immediately at boot independently of any JS code execution. If you can delay the start-up of your JS code that can give you a window to "get in".
Also, since the port 88 web server is independent if JS you have a good chance at hitting it even if JS code is messed-up, as long as the Espressif SDK still receives packets and can make a callback. All this isn't exactly what you're looking for but it gets pretty close.
In my experience things get really hosed if save()'ed code in flash is no longer compatible with a newer version of Espruino that just got loaded or if the esp8266 crashes and the WDT doesn't reboot it (yup, happens to me but hard to repro intentionally).
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
On the esp8266 the built-in telnet console and the web-server used by wiflash come up immediately at boot independently of any JS code execution. If you can delay the start-up of your JS code that can give you a window to "get in".
Also, since the port 88 web server is independent if JS you have a good chance at hitting it even if JS code is messed-up, as long as the Espressif SDK still receives packets and can make a callback. All this isn't exactly what you're looking for but it gets pretty close.
In my experience things get really hosed if save()'ed code in flash is no longer compatible with a newer version of Espruino that just got loaded or if the esp8266 crashes and the WDT doesn't reboot it (yup, happens to me but hard to repro intentionally).