status method

  1. @override
Future<TailscaleStatus> status()
override

Returns the current node status — lifecycle state, assigned tailnet IPs, health warnings, and MagicDNS suffix. Node inventory is separate; call nodes when you need it.

Safe to call before up. Idle persistent state is authenticated with the installation DEK from Keybay: an absent or authenticated-empty Store is NodeState.noState, while authenticated logical state is NodeState.stopped. Missing/orphaned keys, malformed state, and locked secure storage fail closed instead of being reported as a fresh node.

Implementation

@override
Future<TailscaleStatus> status() async {
  _requireInitialized();
  await _awaitWorkerRecovery();
  final classificationFailure = _idleStatusError;
  if (classificationFailure != null) throw classificationFailure;
  final current = _workerInstance;
  if (current != null &&
      !current.isDisposed &&
      current.runtimeToken != null) {
    return current.status();
  }
  return _supervisorLifecycle.run(_runIdleSecureStatus);
}