Skip to content

feat(genre-tree): distinguish catalogue and playlist selections - #491

Merged
Andreas-Garcia merged 7 commits into
developfrom
feature/explicit-genre-counts
Nov 7, 2026
Merged

Andreas-Garcia merged 7 commits into
developfrom
feature/explicit-genre-counts

Conversation

@Andreas-Garcia

Copy link
Copy Markdown
Member

Summary

Reference genre panels now distinguish catalogue songs from actual playlist members and use explicit genre/subgenre counts. A parent with songs only in descendants remains playable, while catalogue-only songs do not inflate playlist counts.

Changes

  • Require separate reference catalogue and playlist summaries; preserve the historical personal (me) response contract.
  • Share canonical/regional/all selection defaults, count lookup and tree sizing. Carry selection, artist and anchor through playback and pagination.
  • Show all selection counts in shared detail/tree panels and pass the real nested playlist summary to Play.
  • Queue catalogue rows through the playable catalogue independently of membership; the genre Play action still queues members.
  • Update schemas, artist projections, cache keys, regression tests, README and Unreleased changelog.

Compatibility and recovery

BREAKING CHANGE: reference genre parsers require the explicit contract delivered by Grow API PR415 (merged). Existing personal scope is unchanged. Consumer source migration uses the new count helper; package publication and dependency updates require a separate authorized release. No versions, tags, publication or production changes are included. To recover before publication, revert this feature PR; no data migration is involved.

Test plan

  • Passed: pnpm lint, pnpm build, full headless suite (636 tests, coverage gate) and UI suite (443 tests, coverage gate). Final provider regression run: 60 tests; lint rerun after the test-only addition.
  • Intent: change; depth: deep (shared API/player/consumer contract).
  • Fresh independent review of 4d89f75..a6b1de8, then focused verification through 965a829. Confirmed catalogue/member playback finding fixed; no remaining correctness findings. Final changes through eca1313 add migration documentation and a reviewed country-recovery regression test; no additional runtime changes.
  • Tests cover distinct populations, child-only songs, explicit canonical/regional/all counts, selection/artist/anchor persistence and catalogue queue pagination.

Copilot AI balanced review requested due to automatic review settings November 7, 2026 11:50

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request due to rate limiting. Please try again later. See Usage limits for GitHub Copilot for details.

@Andreas-Garcia
Andreas-Garcia merged commit 04c7386 into develop Nov 7, 2026
3 of 4 checks passed
@Andreas-Garcia
Andreas-Garcia deleted the feature/explicit-genre-counts branch November 7, 2026 11:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants