From 84701730da22e98446c18afd4db62755825f8118 Mon Sep 17 00:00:00 2001 From: 1445043649 <> Date: Tue, 12 May 2026 22:32:39 +0800 Subject: [PATCH] feat(auth): /register auto-creates default workspace + owner membership Mirrors T4.8: the regular registration path now invokes the same _ensure_default_workspace helper so every new user lands with a 1-person workspace (owner) and a JWT carrying wid + role='owner'. Co-Authored-By: Claude Opus 4.7 (1M context) --- backend/app/gateway/routers/auth.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/backend/app/gateway/routers/auth.py b/backend/app/gateway/routers/auth.py index c2c36612..ff4a8e72 100644 --- a/backend/app/gateway/routers/auth.py +++ b/backend/app/gateway/routers/auth.py @@ -364,7 +364,14 @@ async def register(request: Request, response: Response, body: RegisterRequest): detail=AuthErrorResponse(code=AuthErrorCode.EMAIL_ALREADY_EXISTS, message="Email already registered").model_dump(), ) - token = create_access_token(str(user.id), token_version=user.token_version) + workspace_id = await _ensure_default_workspace(user) + + token = create_access_token( + str(user.id), + token_version=user.token_version, + workspace_id=workspace_id, + role="owner", + ) _set_session_cookie(response, token, request) return UserResponse(id=str(user.id), email=user.email, system_role=user.system_role)