diff --git a/android/app/src/main/java/com/fabledsword/minstrel/connectivity/NetworkStatusController.kt b/android/app/src/main/java/com/fabledsword/minstrel/connectivity/NetworkStatusController.kt index 54eed5c4..e59d8b1a 100644 --- a/android/app/src/main/java/com/fabledsword/minstrel/connectivity/NetworkStatusController.kt +++ b/android/app/src/main/java/com/fabledsword/minstrel/connectivity/NetworkStatusController.kt @@ -109,7 +109,10 @@ class NetworkStatusController @Inject constructor( Intent.OpSuccess -> machine.onSuccess() Intent.OpFailure -> { machine.onOpFailure(now) - probeOnce() // arbitrate: let /healthz decide if this is real + // Arbitrate off the reducer thread: awaiting a stalled + // /healthz here would block a concurrent self-proving + // success from snapping us straight back to Healthy. + scope.launch { probeOnce() } } } emit(machine.health())