- Add UAT PocketBase on port 8712 with separate pb_data_uat
- Add UAT nginx config proxying to UAT PB (port 8712)
- Update Dockerfile to support NGINX_CONF build arg
- Add .gitignore for .playwright-mcp/
- Auto-generated team_sessions migration
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Fix other members' status not visible due to users collection viewRule restriction
- Fix empty status treated as 'away' instead of 'idle' in membersByStatus
- Auto-set creator to 'in_team' status when creating team session
- Filter current user from idle members invite list
- Fix group store isGroupOwner using pb.authStore instead of localStorage
- Add nginx no-cache headers for index.html
- Add join_requests collection migration and join approval flow
- Update groups collection rules and add requireApproval field
- Add Memory types for Phase 2 planning
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Changed groups collection listRule and viewRule from member-only to
any authenticated user, so users can find and join groups. Also
improved registration error messages with Chinese validation feedback.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Game library: add/delete games per group, JSON/CSV import/export, favorites, star ratings & comments
- Fix team session creation: add creator to members array, handle null currentGroup
- Fix image loading: rename SVG files from .png to .svg extensions
- Add PocketBase migrations for game_comments and game_favorites collections
- Remove seed data script
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Seed 33 popular games across 5 platforms via admin API script
- Add GameDetailDialog with game info and quick-team button
- Update GamesLibrary with game card click to open detail dialog
- Update Home hot games to open detail dialog instead of navigating
- Rewrite invitation accept: frontend auto-joins team + updates status
- Add user status reset on team dissolution (endGame)
- Add start game / dissolve buttons to TeamSessionPanel lifecycle
- Integrate realtime subscriptions in GroupView and Layout
- Add notification store realtime invitation listener
- Add placeholder images for game covers and avatars
- Remove Go hooks, add JS hooks placeholder + Docker mount
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Fix teamSessions → team_sessions to match PocketBase collection name
- Replace <a @click> with <router-link> in Login and Register views
- Update PocketBase default URL and vite proxy target
- Comment out docker-compose user directive for permission fix
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Replace unsafe type assertions with safe AuthRecord() method
- Remove unused 'strings' import
- Remove unused ServeEvent struct and binding
- Use proper error response methods (apis.NewForbiddenError)
- Use app.Subscriptions().Broadcast() instead of Realtime()
- Fix hook signatures to return error instead of next function
Add PocketBase hooks for group management and real-time notifications:
- Groups collection with owner/members permissions
- Team Sessions with group member verification
- Invitations with real-time notifications
- Helper functions for group ownership and membership checks
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Pin PocketBase image to v0.22.4 instead of latest
- Add healthcheck to docker-compose.yml
- Add environment variables documentation to README.md
- Add development and production environment sections
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>