Refining Content Visibility Rules
Consolidated content visibility logic into a single data-level attribute across all surfaces, and updated display rules to handle ownership exceptions correctly.
The same album or moment could appear or disappear depending on which surface a user was browsing — search, recommendations, or the player flow. When visibility logic is spread across individual screens, the result is inconsistency that has no apparent reason from the user's perspective.
To address this, content visibility status was defined as a first-class data attribute. Active state, time-limited availability, and open/close schedules are now centralized properties. All surfaces — moments, insts, albums, recommendations, and browse — reference this single source to determine whether content is displayed. State changes propagate to affected screens in real time.
Premium content required an additional condition. Blanket-hiding time-limited content would also hide items already owned by a user. The display rule was updated so that owned items are exempt from the filter and remain visible. The ops-side interface for toggling content between active and time-limited states was also aligned to the same attribute model, ensuring that what operators configure and what users see remain consistent.