Skip to content

Add lobby chat and a 24-hour lobby lifetime - #2

Merged
jonathanung merged 1 commit into
mainfrom
feat/lobby-chat-expiry
Aug 16, 2026
Merged

jonathanung merged 1 commit into
mainfrom
feat/lobby-chat-expiry

Conversation

@jonathanung

Copy link
Copy Markdown
Owner

Summary

  • Each lobby gets persisted chat (REST + SignalR SendChat / ChatMessage / ChatHistory) with a 300-character cap and member-only send.
  • Lobbies live 24 hours. ExpiresAt is set on create, listing/join/start reject expired rooms, and a 5-minute sweeper deletes them (cascade memberships, matches, chat).
  • Arena UI: lobby chat panel, remaining-time chip on the floor and room header.

Test plan

  • API tests (53) including chat persist, expiry sweep, HTTP chat, join-expired
  • Web vitest + tsc
  • CI API + web jobs
  • After merge, confirm CD migrates and a lobby shows chat + TTL

Each lobby persists chat and fans it out over SignalR. Rooms expire
after 24 hours, drop off the floor, and a sweeper deletes the leftovers.
@jonathanung
jonathanung merged commit 3bfa200 into main Aug 16, 2026
3 checks passed
@jonathanung
jonathanung deleted the feat/lobby-chat-expiry branch August 16, 2026 16:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant