Theater
Theater rooms. Each room plays one rotation at a time.
About this section: Theater zoneTheater rooms grouped by package.
Purpose
Each theater room represents one curated rotation channel. Customers see the active rotation pattern's items in the THEATER section on sites that include this room.
Fields
- Room
- A Theater room. Each room is paired with one Theater package.
- Pattern
- A theater_rotation_pattern. Each room can have many patterns but only one is active at a time.
- Schedule
- theater_room_release_schedule rows. Each row marks when the room's rotation enters a new release window.
- Site membership
- theater_room_site_membership row per (site, room). Without a row the room is not surfaced on that site.
Consequences
- Soft-deleting a room cascades pattern, schedule, and site membership rows.
- Activating a new pattern automatically deactivates other patterns for the same room.
- A room with lifecycle != active is not eligible for customer-serving renders even if patterns and memberships exist.
Deeper dive
Decision log
Theater treatment is locked per Decisions 42, 46. Per Decision 644 the editor framework is shared across the eight zone pages.
About this section: Editing room identityCode, slug, sort order, lifecycle.
Purpose
These fields define how the room is identified and ordered. Pattern items, schedule, and site membership are managed under their own sub-tabs.
Consequences
- Renaming room_code or slug after other rows reference them can confuse tooling even if the database accepts it.