In T389536 there's example of when tests timeout after 60 seconds and then nothing happens until the CI kills the job. I'm thinking that because of an uncaught exception or promise rejection that we or WebDriver.io do not catch.
We should catch those and log them. At least then we will know if we have these kind of uncaught or not.