Xiaoxia AI
bfbaddbd9a
style: normalize python formatting gates
2026-06-21 06:52:19 +08:00
Xiaoxia AI
0e93d2e71f
refactor(domain): move auth infrastructure to adapters
2026-06-21 00:46:56 +08:00
Xiaoxia AI
5e047972cd
fix(phase7): resolve remaining TODOs - session_id in JWT and repository injection
2026-06-19 09:47:20 +08:00
Xiaoxia AI
e46cda2416
feat(auth): add password reset functionality
...
- Implement RequestPasswordResetUseCase to generate reset token
- Send password reset email with 1-hour expiration
- Implement ResetPasswordUseCase to verify token and update password
- Security: return success even if user not exists (avoid enumeration)
- Validate new password strength before reset
- Clear reset token after successful password change
- Add 9 comprehensive unit tests (all passed)
Phase 4 Task 8/68 completed
2026-06-17 01:25:53 +08:00
Xiaoxia AI
f0d0edf449
feat(auth): add login, logout and refresh token use cases
...
- Implement LoginUseCase with password verification and JWT token generation
- Generate user_auth token (without workspace) for initial login
- Create session with refresh_token in Redis
- Track last_login_at and last_login_ip
- Implement LogoutUseCase for single device or all devices
- Add RefreshTokenUseCase placeholder (to be implemented)
- Add 9 comprehensive unit tests (all passed)
Phase 4 Task 7/68 completed
2026-06-17 01:24:45 +08:00
Xiaoxia AI
e9e874404c
feat(auth): add user registration with email verification
...
- Implement RegisterUserUseCase with password validation and email verification
- Implement VerifyEmailUseCase for email confirmation
- Add UserRepository interface and InMemoryUserRepository implementation
- Support duplicate email/username checking
- Generate verification tokens and send verification emails
- Add 9 comprehensive unit tests (all passed)
Phase 4 Task 6/68 completed
2026-06-17 01:20:40 +08:00