Skip to main content

// Section 14.8 · Operate

Self-Stop on Unstake

1 min14.8Operate

The daemon is designed not to spin uselessly. The coordinator returns 403 for a node that is no longer backed on-chain. The daemon reads the reason:

  • not_staked: the node was never staked, or its stake was withdrawn. The daemon prints the reason and exits cleanly (exit 0).
  • in_cooldown: the node is in the 7-day unstake cooldown. The daemon exits cleanly (exit 0); nothing is dispatched to a cooling node.
  • Transient unexplained 403s are tolerated for approximately five minutes (the daemon backs off and retries to ride out coordinator RPC blips). After ~5 minutes of consecutive unexplained 403s, the daemon stops with a hint to check the --node-id and that this machine's nodeKeyHash was the one registered.
  • Result posts are retried up to three times before the request is reported as a failure and the coordinator requeues it.

On SIGINT (Ctrl-C) or SIGTERM (systemctl stop, launchd, kill) the daemon drains and exits cleanly. The node simply goes idle; the stake stays locked and there is no slashing.