yea, I think the bug is happening here: platformio-core/embedded.py at 61db0f1d6a89a621281b12e1a913635905d0e035 · platformio/platformio-core · GitHub
The python Serial object is erroring out immediately, instead of waiting for the timeout period of 600 seconds. I believe this happens because the serial object disappears, and the timeout is probably a timeout for connection. I think if some extra code was injected here to try connecting a few times before erroring out, this would fix this problem.