aboutsummaryrefslogtreecommitdiffhomepage
path: root/backend/auth
AgeCommit message (Collapse)Author
2026-02-16test(backend): add unit tests for auth, config, ratelimit, game, and apinsfisis
Cover previously untested logic: session ID generation/hashing, password authentication, IP rate limiting, game state helpers, handler endpoints, task enqueue/result processing, and config loading. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15refactor(backend): introduce DI interfaces for testabilitynsfisis
Replace concrete *db.Queries and *pgxpool.Pool dependencies with db.Querier and db.TxManager interfaces across all handlers, game hub, and auth. This enables unit testing with mocks. - Enable sqlc emit_interface to generate Querier interface - Add TxManager abstraction to encapsulate transactions - Convert auth package-level functions to Authenticator struct - Add TaskQueueInterface/TaskWorkerInterface for game.Hub - Add initial unit tests for game logic and API handlers Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15fix(backend): replace panic() with proper error handling in runtime codensfisis
auth/auth.go: return error instead of panicking on data inconsistency. game/hub.go: log unexpected task result types instead of panicking. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15fix(backend): resolve TODO items for transactions, validation, and error ↵nsfisis
handling - Wrap multi-step DB operations in transactions (signup, submit, game edit, task result processing) - Add game running checks to PostGamePlayCode and PostGamePlaySubmit - Hide ranking code when game is not yet finished - Replace silenced errors in processTaskResults with slog.Error logging - Add pgxpool.Pool to Handler/Hub structs for transaction support Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15refactor(log): migrate from log to log/slog for structured loggingnsfisis
Replace all usages of the standard log package with log/slog across backend and swift worker. Configure Echo's request logger to emit structured log attributes via slog instead of the default format. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15refactor(auth): replace JWT authentication with server-side sessionsnsfisis
Migrate from stateless JWT tokens to server-side session management backed by PostgreSQL. Sessions are hashed with SHA-256 before storage, cleaned up periodically, and invalidated on logout. This removes the need for JWT_SECRET/COOKIE_SECRET environment variables and the golang-jwt dependency. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13refactor: rename module/package namensfisis
2025-08-17feat: update "PHPerKaigi" to "iOSDC Japan"nsfisis
2025-03-08websocket to pollingnsfisis
2025-03-04rm registration tokennsfisis
2025-03-04update go package namesnsfisis
2024-08-27Revert "."nsfisis
This reverts commit 534df5bd1a36bc7ba5ed76828e37ab6a1240f3c7.
2024-08-22.nsfisis
2024-08-17feat(backend): fetch user icon from forteensfisis
2024-08-17refactor(backend): move fortee packagensfisis
2024-08-17feat(backend): allow login/signup with email addressnsfisis
2024-08-13feat: disallow login with email addressnsfisis
2024-08-11refactor(backend): define OpenAPI spec of fortee login APInsfisis
2024-08-10feat: configure JWT secretnsfisis
2024-08-09feat: support authentication via forteensfisis
2024-08-08feat(worker): re-enable authentication between api-server and workernsfisis
2024-08-08feat(backend/worker): enable `revive` in `golangci-lint`nsfisis
2024-07-31feat: "iOSDC 2024" to "iOSDC Japan 2024"nsfisis
2024-07-30feat(backend): implement password-based authenticationnsfisis
2024-07-29feat: authenticate WebSocket connection by short-lived access tokennsfisis
2024-07-29refactor(backend): enable emit_pointers_for_null_types in sqlcnsfisis
2024-07-28chore(backend): rename root modulensfisis
2024-07-28feat(backend): handle JWT validation manuallynsfisis
2024-07-28rename user's display_username to display_namensfisis
2024-07-27backend: jwtnsfisis