25268d7dd7
When a user signs in, sends notifications with username, IP address, user agent, and timestamp. Notifications go through: - Email to the user's registered address - ntfy push to the configured topic Enabled by default, configurable via app.ini: [login_notification] ENABLED = true The notification fires asynchronously (goroutine) so it doesn't block the login redirect. Hooks into handleSignInFull which is the single choke point for all auth methods (password, 2FA, OAuth). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>