net_guard registers WiFi.onEvent() so disconnects are handled immediately instead of polled every 1s. Backoff 1s->2s->4s->...->60s cap. Every up/down transition is logged to the event log with the disconnect reason code, so field failures are diagnosable.