Balcony Seat Stub Afteruse Receipt Lens
This lens checks that a torn balcony seat stub preserved from audience seating cannot later be consumed as universal attendance, consent, custody, sponsor immunity, or memorial witness authority unless the game preserves source stub, row marker, usher tear ledger, disputed holder or explicit absence, requested afteruse, future reader, selected posture, after-state, and future route effect.
Entry Oracle
entry_state:
trigger_kind: state_pressure
source_stub_visible: true
row_marker_or_explicit_absence_visible: true
usher_tear_or_changeover_visible: true
disputed_holder_visible_or_explicit_absence: true
requested_afteruse_visible: true
future_reader_consumes_stub_state: true
player_can_certify_bind_reopen_split_quarantine_or_default: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_stub_count_trigger: true
no_dashboard_or_lens_health_trigger: trueChecks
1. Docket Preserves Seat Provenance
balcony_seat_stub_docket:
source_stub: required
row_marker_or_absence: required
usher_tear_or_changeover: required
disputed_holder_or_absence: required
requested_afteruse: required
future_reader_or_route: required
selected_stub_posture: required
stub_afteruse_state_after: required
future_reader_or_route_effect: required
counter_deltas: required
universal_clean_stub: false2. Review Branches Diverge
Required branch families:
certify_seat_scope;bind_usher_tear;reopen_disputed_holder;split_attendance_from_custody;quarantine_stub_afteruse;false_clean_stub_default;future_effect_any.
Each branch must name relief, cost, counters, and future route effects.
3. Default Mutates Future Play
false_balcony_seat_stub_default:
false_clean_stub: true
source_stub_or_absence: required
hidden_or_overbroad_attendance_scope: required
capturing_reader_or_route: required
disputed_holder_or_absence: required
stub_afteruse_state_after: false_clean_default
future_reader_effect: recovery_only
counter_deltas_min: 3
durable_mutation: trueProgress Metric
Satisfied when the sibling TypeScript binding, focused card/rite/event content, runtime Jest assertions, and a lens-scoped durable replay show one selected branch changing named counters and future route state without treating the seat stub as universal attendance, consent, or custody authority.