diff --git a/apps/api/src/api/auth.py b/apps/api/src/api/auth.py index 85ab1f1..7fea660 100644 --- a/apps/api/src/api/auth.py +++ b/apps/api/src/api/auth.py @@ -164,20 +164,30 @@ async def me( session_cookie: str | None = Cookie(default=None, alias="session"), session: AsyncSession = Depends(get_db_session), ) -> dict[str, Any]: + logger.info("Auth /me called, cookie present: %s", bool(session_cookie)) + if not session_cookie: + logger.warning("Auth /me: missing session cookie") raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="missing session") settings = Settings() + logger.info("Auth /me: cookie_domain=%s, cookie_secure=%s, cookie_samesite=%s", + settings.cookie_domain, settings.cookie_secure, settings.cookie_samesite) + try: payload = decode_session_cookie(settings=settings, cookie_value=session_cookie) user_id = payload["user_id"] + logger.info("Auth /me: decoded session for user_id=%s", user_id) except ValueError as exc: + logger.warning("Auth /me: invalid session: %s", exc) raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail=str(exc)) user = await session.get(User, user_id) if user is None: + logger.warning("Auth /me: user not found for id=%s", user_id) raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="user not found") + logger.info("Auth /me: success for user=%s", user.email) return { "user": { "id": str(user.id),