feat(phases): add live now/next to schedule#147
Conversation
Adds a pure now/next set classifier, a Live-only Now/Next section leading the Schedule tab (reusing MobileSetCard), and Live copy in the shared phase banner. Skipped below reveal level full; no background timer. Closes #138. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016AXf1EyBWLa985JwjYwvKX
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Pull request overview
Adds “Live” phase enhancements to the Schedule tab by introducing a Now/Next lead-in section (backed by a pure, injected-clock classifier) and Live-specific copy in the shared phase banner, while ensuring the Now/Next UI is only shown when schedule reveal level is full.
Changes:
- Introduces
classifyNowNext(sets, now)for Live-mode now/next classification, plus unit tests covering boundary conditions and tie-handling. - Adds a Live-only
NowNextSectionto the Schedule tab that renders “On now” / “Up next” groups using existingMobileSetCardbehavior. - Updates the shared
PhaseBannerto show Live copy when the festival phase islive.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/pages/EditionView/tabs/ScheduleTab/NowNextSection.tsx | Adds Live-only “On now / Up next” UI built from the classifier and existing set cards. |
| src/pages/EditionView/tabs/ScheduleTab.tsx | Renders the new Now/Next section above existing schedule navigation/content. |
| src/pages/EditionView/PhaseBanner.tsx | Adds Live-phase banner copy. |
| src/lib/nowNext.ts | Implements the pure now/next classifier with injected now. |
| src/lib/nowNext.test.ts | Adds unit tests for classifier behavior across edge cases and time boundaries. |
| })), | ||
| stageName: stage?.name ?? "", | ||
| stageColor: stage?.color ?? undefined, |
Falls back to the sets query's stage_name when the stage lookup misses, hides the stage badge entirely for stage-less sets, and loads stages non-blocking so the Now/Next section never suspends the Schedule tab. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016AXf1EyBWLa985JwjYwvKX
Leads the Schedule tab with "On now" / "Up next" sets when the edition is Live, built from a pure injected-clock classifier, plus Live copy in the shared phase banner. Skipped below reveal level
fullso hidden times never leak; no background timer. Closes #138.Verification
fulland dates spanning today, open the edition: it lands on the Schedule tab, shows the Live banner, and leads with "On now" (pulsing dot) and "Up next" sections for the current and nearest upcoming sets.fullwhile Live: the Now/Next section disappears, the banner remains, and no set times are visible anywhere.🤖 Generated with Claude Code
https://claude.ai/code/session_016AXf1EyBWLa985JwjYwvKX
Generated by Claude Code