You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When two returning players are in the lobby, the TV shows the head-to-head: "Anna vs Ben: 3–2".
The code says it wants to do this. analytics.py:302 justifies the lobby standing by saying the line is "supposed to start a rivalry" — but only the solo view exists.
Anchor
analytics.py:296 — get_player_standing is strictly solo. Grep for rival|head.to.head|h2h: that one comment and nothing else. Pairwise wins are computable per game from GameRecord.player_scores.
Smallest valuable slice
The TV lobby (not the phones) shows the duel for the most-frequently-co-playing present pair.
The catch
Two, and the second is a decision rather than a detail:
Detailed games prune at RETENTION_DAYS = 90 / MAX_DETAILED_RECORDS = 1000. Labelled honestly it is "last 90 days"; anything longer needs a pairwise rollup in the unpruned map, which grows quadratically in players.
House Championship — persistent all-time leaderboard on lobby + TV #371 deliberately sent the standing only to its owner. A head-to-head on the TV broadcasts two people's record to the whole room. That is a conscious reversal of that decision, not an extension of it, and it should be decided as one.
Effort: small for the 90-day version, medium with a rollup.
From an automated ideation pass; anchors verified against the source.
When two returning players are in the lobby, the TV shows the head-to-head: "Anna vs Ben: 3–2".
The code says it wants to do this.
analytics.py:302justifies the lobby standing by saying the line is "supposed to start a rivalry" — but only the solo view exists.Anchor
analytics.py:296—get_player_standingis strictly solo. Grep forrival|head.to.head|h2h: that one comment and nothing else. Pairwise wins are computable per game fromGameRecord.player_scores.Smallest valuable slice
The TV lobby (not the phones) shows the duel for the most-frequently-co-playing present pair.
The catch
Two, and the second is a decision rather than a detail:
RETENTION_DAYS = 90/MAX_DETAILED_RECORDS = 1000. Labelled honestly it is "last 90 days"; anything longer needs a pairwise rollup in the unpruned map, which grows quadratically in players.Effort: small for the 90-day version, medium with a rollup.
From an automated ideation pass; anchors verified against the source.