A launch leaves a window where the app is up, focused and has a pid while the devtools socket the walk attaches to does not exist yet — on a loaded machine it has been as long as ten seconds. attachPhone tried once and reported "is SoulStream on screen?" about an app that plainly was. It now tries for fifteen seconds, re-reading the pid each time in case the app restarted underneath it.