Concession Raincheck Afteruse Receipt Lens
This lens checks that a concession raincheck, refund chit, or replacement snack voucher cannot later be spent as clean fan endorsement, dietary/allergy waiver, sponsor proof, archive attendance proof, or broadcast reenactment consent unless the game preserves the source service row, patron or explicit absence, stall/date context, cited service scope, requested afteruse, harmed claimant, proof bridge, selected posture, after-state, and future route effect.
Entry Oracle
entry_state:
trigger_kind: state_pressure
source_raincheck_row_visible: true
patron_visible_or_explicit_absence: true
stall_date_context_visible: true
cited_service_scope_visible: true
requested_afteruse_visible: true
harmed_claimant_visible_or_explicit_absence: true
proof_bridge_or_explicit_absence_visible: true
future_reader_consumes_raincheck_state: true
player_can_certify_restrict_bridge_reopen_split_quarantine_or_default: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_voucher_count_trigger: true
no_dashboard_or_lens_health_trigger: trueThe lens fails if entry is driven by fixed time, raw voucher totals, dashboard health, or a raincheck with no named future reader trying to consume it.
Checks
1. Docket Preserves Raincheck Custody And Afteruse
raincheck_docket:
source_raincheck_row: required
patron_or_absence: required
stall_date_context: required
cited_service_scope: required
requested_afteruse: required
future_reader_or_route: required
harmed_claimant_or_absence: required
proof_bridge_or_explicit_absence: required
selected_raincheck_posture: required
raincheck_afteruse_state_after: required
future_reader_or_route_effect: required
counter_deltas: required2. Review Branches Diverge
Required branch families:
certify_raincheck_scope;restrict_raincheck_reader;attach_patron_bridge;reopen_harmed_raincheck_claimant;split_service_from_likeness_custody;quarantine_raincheck_afteruse;false_raincheck_default;future_effect_any.
3. Default Mutates Future Play
false_raincheck_default:
false_clean_raincheck: true
source_raincheck_row_or_absence: required
hidden_or_overbroad_service_scope: required
capturing_reader_or_route: required
harmed_claimant_or_absence: required
raincheck_afteruse_state_after: required
future_reader_effect: required
counter_deltas_min: 3
durable_mutation: trueProgress Metric
Satisfied when the sibling TypeScript binding, focused card/rite/event content, and a lens-scoped durable replay show one selected branch changing named counters and future route state without treating a concession raincheck as universal fan endorsement, dietary waiver, sponsor proof, archive attendance proof, or broadcast reenactment consent.