waitUntilNextLiveOrFailure

Suspends until sync starts progressing after this wait starts, then reaches a terminal state.

This ignores stale failure emissions from a previous attempt until a non-failed sync state is observed, which is useful when starting a fresh sync request after the device comes back online.