feat: show refractor progress in post-game summary embed #147

Closed
opened 2026-04-08 00:19:56 +00:00 by cal · 1 comment
Owner

Problem

After a game completes, the summary embed shows POTG, box score, and rewards. There is no mention of refractor progress — even when tier-ups just happened. Players have no visibility into how their cards are progressing from game outcomes.

Proposal

Add a "Refractor Progress" field to the game summary embed showing:

  • Cards that tiered up during this game (with new tier name)
  • Cards that crossed a significant threshold (e.g., 80%+ toward next tier)

This connects game outcomes to the progression system and gives players a reason to pay attention to the summary after every game.

Impact

Medium UX value. Could defer to post-launch and ship based on player feedback. The tier-up notification (separate issue) covers the most important case — this is about ambient awareness of progression.

## Problem After a game completes, the summary embed shows POTG, box score, and rewards. There is no mention of refractor progress — even when tier-ups just happened. Players have no visibility into how their cards are progressing from game outcomes. ## Proposal Add a "Refractor Progress" field to the game summary embed showing: - Cards that tiered up during this game (with new tier name) - Cards that crossed a significant threshold (e.g., 80%+ toward next tier) This connects game outcomes to the progression system and gives players a reason to pay attention to the summary after every game. ## Impact Medium UX value. Could defer to post-launch and ship based on player feedback. The tier-up notification (separate issue) covers the most important case — this is about ambient awareness of progression.
Claude added the
ai-working
label 2026-04-08 18:31:08 +00:00
Claude removed the
ai-working
label 2026-04-08 18:36:56 +00:00
Collaborator

Implemented in PR #160.

Approach: The post-game refractor hook already runs evaluate-game and captures tier-ups. I made _run_post_game_refractor_hook return evo_result instead of discarding it, then added a _build_refractor_progress_text helper that:

  1. Formats tier-ups from that result (⬆ Name → Tier Name)
  2. Makes 2 API calls to refractor/cards?progress=close for both teams to find cards at ≥80% (◈ Name (pct%))

The field is omitted when there's nothing to show. Near-threshold failures are non-fatal. 11 new tests cover all branches.

Implemented in PR #160. **Approach**: The post-game refractor hook already runs `evaluate-game` and captures tier-ups. I made `_run_post_game_refractor_hook` return `evo_result` instead of discarding it, then added a `_build_refractor_progress_text` helper that: 1. Formats tier-ups from that result (⬆ **Name** → Tier Name) 2. Makes 2 API calls to `refractor/cards?progress=close` for both teams to find cards at ≥80% (◈ Name (pct%)) The field is omitted when there's nothing to show. Near-threshold failures are non-fatal. 11 new tests cover all branches.
Claude added the
ai-pr-opened
label 2026-04-08 18:37:04 +00:00
cal closed this issue 2026-04-08 23:21:59 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
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: cal/paper-dynasty-discord#147
No description provided.