Removing Inactive Content from All Surfaces
Tracks and albums no longer eligible for display are now consistently filtered across browse, library, playback queue, and sleep sessions, with visibility logic unified under a single rule set.
Inactive content was persisting across surfaces inconsistently: removed from browse but still visible in the library, excluded from lists but remaining in the playback queue where it would play as the next track. Each surface applied its own visibility rules independently. Rapid repeated calls to the preview sheet also caused duplicate instances to stack on screen.
This update consolidates the "is this content currently eligible for display" decision into a single rule set. Inactive albums and tracks are now filtered consistently across browse, library, and recommendations, and the same criteria extend to the playback queue and sleep sessions. Tracks already loaded into the queue are dropped from the playback flow, and inactive content is also removed from sleep session pre-selection lists. Album image visibility rules based on entitlement are aligned to the same standard, and the preview sheet now blocks duplicate presentation when already active.
Misalignment between visibility and playback eligibility creates a directly perceptible quality gap. With this change, content removed from the UI is removed from the playback path as well.