HKUDS/DeepTutor · error · HTTPException
Admin access required
Error message
Admin access required
What it means
Error "Admin access required" thrown in HKUDS/DeepTutor.
Source
Thrown at deeptutor/api/routers/auth.py:344
async def require_admin(
payload: TokenPayload | None = Depends(require_auth),
) -> TokenPayload:
"""
FastAPI dependency that requires the caller to be an admin.
Raises HTTP 403 if the authenticated user is not an admin.
When AUTH_ENABLED=false, all requests are treated as admin.
``async def`` mirrors ``require_auth`` so the dependency chain stays on
the event loop and the user ContextVar set by ``require_auth`` is visible
to the endpoint.
"""
if not AUTH_ENABLED:
return _local_admin_token_payload()
if payload is None or payload.role != "admin":
raise HTTPException(
status_code=status.HTTP_403_FORBIDDEN,
detail="Admin access required",
)
return payload
def _local_admin_token_payload() -> TokenPayload:
"""Synthetic admin payload used when AUTH_ENABLED=false.
Mirrors the local admin identity (LOCAL_ADMIN_USERNAME / LOCAL_ADMIN_ID)
so audit logs and self-reference checks behave the same as in multi-user
mode. Values are kept aligned with ``local_admin_user()`` in
``deeptutor/multi_user/paths.py``.
"""
from deeptutor.multi_user.models import LOCAL_ADMIN_ID, LOCAL_ADMIN_USERNAME
return TokenPayload(
username=LOCAL_ADMIN_USERNAME,View on GitHub (pinned to 3e82f13042)
When it happens
Trigger: Thrown at deeptutor/api/routers/auth.py:344 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of HKUDS/DeepTutor@3e82f13042 (2026-08-27).
Data as JSON: /api/errors/02343de614fd98ad.
Report an issue: GitHub.