the CPU totally locked up to the point where even the internal watchdog timer wasn't working
could be it rebooted and bootloader then faulted into neverending loop before starting watchdog again (spurious interrupt, cpu fault?) or it was started but still there could be some hang and watchdog reboot loop in bootloader before screen is initialized. Anyway, hard to reproduce such thing.
Maybe the watchdog initialization https://github.com/espruino/Espruino/blob/master/targets/nrf5x_dfu/main.c#L206 could be moved earlier, the nrf_dfu_enter_check may be called late at startup. Could help or could just cause watchdog reboot loop without helping much.
That's great - thanks for the update!
It's a very odd fault, but it looks like somehow the CPU totally locked up (to the point where even the internal watchdog timer wasn't working). I can't remember ever seeing that before.
Hopefully it's a one-off, but let us know if it happens again and we can get it replaced.