Startup discovery queues a refresh beyond the old 250 ms wait. Wait for Git command quiescence at phase boundaries so idle measurements exclude startup work, and pass the observer to healthy teardown before measuring degraded polling.