Chart the set in the retro, as the console does #33

Merged
forgejo-admin merged 1 commit from feature/retro-charts into main 2026-09-27 01:17:29 +00:00

Problem

The retro listed the songs but not the shape of the evening. The category mix and the energy, romance, juiciness and traditionality trends only appeared in the console, and only for the current set.

Solution

  • The retro shows the console's This set panel beside the song list, for whichever set is picked. It sits in a sticky side column, and stacks under the list below 900px.
  • It is the same SetStats component, so the two screens can't drift apart. The console-only controls (name, New set, backup playlist) and the play history are grouped behind one optional live prop. The retro doesn't pass it, since its header already has the name and it lists the plays itself.
  • retro returns stats computed by the same setStats with an empty queue, because a retro shows what played, not what was planned.

Verified: bun test 105 pass / 0 fail (new router test), tsc --noEmit clean, lasertag clean.

🤖 Generated with Claude Code

## Problem The retro listed the songs but not the shape of the evening. The category mix and the energy, romance, juiciness and traditionality trends only appeared in the console, and only for the current set. ## Solution - The retro shows the console's **This set** panel beside the song list, for whichever set is picked. It sits in a sticky side column, and stacks under the list below 900px. - It is the same `SetStats` component, so the two screens can't drift apart. The console-only controls (name, New set, backup playlist) and the play history are grouped behind one optional `live` prop. The retro doesn't pass it, since its header already has the name and it lists the plays itself. - `retro` returns `stats` computed by the same `setStats` with an empty queue, because a retro shows what played, not what was planned. Verified: `bun test` 105 pass / 0 fail (new router test), `tsc --noEmit` clean, lasertag clean. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
The retro listed the songs but none of the shape of the evening. It now
shows the console's This set panel beside the list: category counts and
the energy, romance, juiciness and traditionality trends, for whichever
set is picked.

It is SetStats itself, not a copy, so the two screens cannot drift. Its
live-set controls (name, New set, backup playlist) and play history move
behind one optional `live` prop: the retro passes none, since it names the
set in its header and lists the plays itself. The server charts a past set
with the same setStats, with an empty queue, since a retro is what played.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
forgejo-admin deleted branch feature/retro-charts 2026-09-27 01:17:29 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
celilo/tango-dj!33
No description provided.