Raspberry Pi Pico dead serial

While tinkering with the Raspberry Pi Pico micro-controller (doing a Tetris clone) it seems that I did something bad to the pico and broke it. Starting with BOOTSEL to flash images worked fine, but the serial interface was dead.
I was playing with some multi-core code, and I saved to the main.py, not sure if it was that or not, but basically after that my pico didn’t accepted any extra MicroPython command. I re-flashed it with the MicroPython image and it did nothing, I tried flashing it with basic C images like the blink example and that worked fine, but if I flash the MicroPython image back, the pico not only didn’t respond, but also the serial port was not available to even stop the program.
I even tried flashing the hello_world serial and that didn’t brought the interface back.
On linux: /dev/ttyACM0 didn’t appear
On windows: The COM3 didn’t appear and I even got an error that the USB device was broken
As is hard to brick a micro-controller, I started thinking that maybe it was some garbage left on the flash that it wasn’t cleared with new images, so I started looking for ways to clear the flash.
Hopefully when looking in the really good pico examples, I found an example that seems to do exactly that. It required some config, but I ended up generating my UF2 file to flash, that once flashed will erase the flash completely and stop.
I did that, and then flashed the MicroPython UF2 image again, and voila, the pico (and its serial interface) were back online again.
Obviously I lost all the files stored on the pico, but I was fine with that, my pico was back, and now I can continue playing with it.
If you need it, here is the precompiled version of the flash_nuke.uf2 program.