From f97f12b3afeff1b68727d8af3773fe26f99e0a75 Mon Sep 17 00:00:00 2001 From: Edwin Jose Date: Thu, 4 Sep 2025 15:59:10 -0400 Subject: [PATCH 1/2] add users classes --- src/auth_middleware.py | 22 ++++------------------ src/session_manager.py | 35 +++++++++++++++++++++++++---------- 2 files changed, 29 insertions(+), 28 deletions(-) diff --git a/src/auth_middleware.py b/src/auth_middleware.py index 81248e57..d9f19e8c 100644 --- a/src/auth_middleware.py +++ b/src/auth_middleware.py @@ -30,15 +30,8 @@ def require_auth(session_manager): from session_manager import User from datetime import datetime - request.state.user = User( - user_id="anonymous", - email="anonymous@localhost", - name="Anonymous User", - picture=None, - provider="none", - created_at=datetime.now(), - last_login=datetime.now(), - ) + from session_manager import AnonymousUser + request.state.user = AnonymousUser() request.state.jwt_token = None # No JWT in no-auth mode print(f"[DEBUG] Set user_id=anonymous, jwt_token=None") return await handler(request) @@ -72,15 +65,8 @@ def optional_auth(session_manager): from session_manager import User from datetime import datetime - request.state.user = User( - user_id="anonymous", - email="anonymous@localhost", - name="Anonymous User", - picture=None, - provider="none", - created_at=datetime.now(), - last_login=datetime.now(), - ) + from session_manager import AnonymousUser + request.state.user = AnonymousUser() request.state.jwt_token = None # No JWT in no-auth mode else: user = get_current_user(request, session_manager) diff --git a/src/session_manager.py b/src/session_manager.py index b909c164..844a4a46 100644 --- a/src/session_manager.py +++ b/src/session_manager.py @@ -26,6 +26,30 @@ class User: if self.last_login is None: self.last_login = datetime.now() +class AnonymousUser(User): + """Anonymous user""" + + def __init__(self): + super().__init__( + user_id="anonymous", + email="anonymous@localhost", + name="Anonymous User", + picture=None, + provider="none", + ) + +class SystemUser(User): + """System user""" + + def __init__(self): + super().__init__( + user_id="system", + email="system@localhost", + name="System User", + picture=None, + provider="system", + ) + class SessionManager: """Manages user sessions and JWT tokens""" @@ -199,14 +223,5 @@ class SessionManager: def _create_anonymous_jwt(self) -> str: """Create JWT token for anonymous user in no-auth mode""" - anonymous_user = User( - user_id="anonymous", - email="anonymous@localhost", - name="Anonymous User", - picture=None, - provider="none", - created_at=datetime.now(), - last_login=datetime.now(), - ) - + anonymous_user = AnonymousUser() return self.create_jwt_token(anonymous_user) From db3e9a3270fede3c5a2b4f8f0e2b3fd23f733e8c Mon Sep 17 00:00:00 2001 From: Edwin Jose Date: Thu, 4 Sep 2025 16:58:40 -0400 Subject: [PATCH 2/2] Update session_manager.py --- src/session_manager.py | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/session_manager.py b/src/session_manager.py index 844a4a46..0d55acd7 100644 --- a/src/session_manager.py +++ b/src/session_manager.py @@ -38,17 +38,6 @@ class AnonymousUser(User): provider="none", ) -class SystemUser(User): - """System user""" - - def __init__(self): - super().__init__( - user_id="system", - email="system@localhost", - name="System User", - picture=None, - provider="system", - ) class SessionManager: