You will lock yourself out. It happens. New phone, fat fingers, or you just forgot the PIN after a long break. Plan the recovery now, not at 11pm on a Sunday when you're blacklisted from your own admin panel.
The three recovery paths
| Path | Pre-requisites | Use when |
|---|---|---|
| 1. Local-IP unlock | Physical access to a host in LOCAL_BYPASS | You're at home and your dev Mac is in the bypass list |
| 2. Admin URL with secret token | You stashed a one-shot recovery token in 1Password | You're remote, can't get to a bypass IP |
| 3. SSH + sqlite3 | SSH access to the host (still works even if PIN is broken) | Last resort; nothing else available |
Recovery path 3 — the always-available escape hatch
Even if the PIN is forgotten and the blacklist is full of your own IP, SSH plus a one-line SQL fixes it. SSH is itself authenticated (key-only, hopefully). Anyone with SSH can already do anything to the host — the security DB is just a file. Documenting this recovery path doesn't add a new attack surface; it just spares you future panic.
Recovery path 2 — the recovery token
For when you're remote and SSH is also broken (or you don't have a laptop). Generate a long random recovery token at PIN-set time, stash it in your password manager.