retry method

void retry()

Re-attempt after a WalletSyncDrive.failed — the only state with a manual affordance, and a contextual recovery action (honest next step, invariant 6), not the old always-on Start/Stop button.

Implementation

void retry() {
  final session = ref.read(walletSessionProvider);
  if (session == null) return;
  // #383 R1: retry is the failed-start escape, never a policy override — a
  // disabled host stays disabled (the retry notice isn't rendered there,
  // this is the belt for a stale tap racing a policy flip).
  if (!ref.read(walletSyncPolicyProvider)) return;
  // Optimistic `running` (the same treatment build() uses — safe because
  // this state is internal except the `failed` notice): the retry notice
  // clears ON TAP instead of sitting enabled through the serialized command
  // settle (a dead-feeling tap invites double-taps — reliability LOW);
  // _command re-asserts `failed` if the start actually fails again.
  state = WalletSyncDrive.running;
  _command(session, start: true);
}