Repository navigation
feat(backoffice): an account's player page lists its chat messages - #439
Merged
Merged
Conversation
A report from a player's card names no message, so the operator could not read what the player said. ListMessages takes an account id: that account's messages alone, the cursors included. The report detail lists them, newest first, and opens the conversation around each. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The player page counted an account's messages and could not show them. It now lists them as a report does, newest first, each with the conversation around it. Conversation and TheirMessages move to src/chat, which both pages use. Off a report there is no reporter, so the tags are optional, and the player page tags no line. Opening the player already open keeps its row: its own name in its messages opens it again. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
raphoester
added this pull request to stack #440
October 20, 2026 15:11
Each message of the reported player came alone, its conversation behind a click. The panel now reads the chat around each and shows the conversations at once, three at a time. A message one already holds needs none of its own, and two that touch join, so an exchange is one conversation. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ges' into claude/backoffice-player-messages # Conflicts: # apps/backoffice/CLAUDE.md # apps/backoffice/src/chat/TheirMessages.tsx
…yer-messages # Conflicts: # apps/backoffice/CLAUDE.md # apps/backoffice/src/chat/Conversation.tsx # apps/backoffice/src/reports/MessagePanel.tsx # apps/backoffice/src/reports/ReportDetail.test.tsx # apps/backoffice/src/reports/TheirMessages.test.tsx
…yer-messages # Conflicts: # apps/backoffice/CLAUDE.md # apps/backoffice/src/players/PlayersPage.test.tsx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follows #437 (merged): the player page gets the same conversations view.
What
The player page of an account now shows what it said in the chat, the same way the report detail does since #437: "What Ana said". It shows her messages inside their conversations, three at a time, and "Show more conversations" loads the next three. Her lines are marked (
line-theirs). An address gets no messages panel, because the chat keeps messages by account.How
Conversation,TheirMessages,theirConversations.tsandchatPages.tsmove fromsrc/reports/tosrc/chat/. Both pages use one copy.parties: Parties | undefined). The player page has no report, so it tags no line. The report page did not change.keptOfmoves intoMessagePanel.tsx, its only user. It is about a report.App'sOpenPlayerkeeps the player that is already open. Before, the player's own name in its messages opened the same player again and dropped its ledger row (last take, ban line, stats, address).Checks
npm run lint,npm run buildandnpm test(135 tests, after merging main) pass inapps/backoffice.FakeAdmin. They check the conversations read by account id, with no tags, and that an address makes no call.npm run dev, the recipe inapps/backoffice/CLAUDE.md): the list, a removed message struck through, the conversation around a message, Ana's own name keeps her page, and Bob's name opens his. The conversations view after the merge is covered by the tests only.OpenPlayerchange inApphas no test:AppreadsWhoAmIfrom the real client.🤖 Generated with Claude Code