By: Michael Lynch <git@mtlynch.io>
Thread client IP through login token creation interface Change LoginTokenCreator from positional args (email, redirectPath) to a LoginEmailRequest struct that also carries the client IP extracted from the HTTP request. This prepares the auth interface for per-IP rate limiting without changing the rate limiter itself. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>