Per-mailbox recovery address, Forgot password in webmail, and mail user:local recovery for operators and deploy provisioning. See WEBMAIL.md "Password recovery".
Merging this deploys production. A push to main that touches packages/zig or packages/webmail runs .github/workflows/deploy.yml, which stops and restarts mail on the shared Hetzner host (every hosted domain). A release tag is picked up by the host's daily mail-upgrade.timer (stable channel). Held as a draft until the rollout is decided.