Lobby Scent Diffuser Cross-Zone Afteruse
This mechanic keeps four surfaces separate: where scent was intentionally released, where its concentration later traveled, which physical egress route remained legible without scent, and whether an exposed claimant was cleared. A familiar atmosphere cue cannot silently become route safety.
Runtime gate
pressure_intake:
rite_id: storyteller.rite.lobby_scent_diffuser_pressure_intake.v1
choice: 0
option_id: record_cross_zone_scent_pressure
exact_slots:
source_diffuser_row: storyteller.card.lobby_scent_diffuser_source_row.v1
batch_scope: storyteller.card.lobby_scent_diffuser_batch_scope.v1
harm_claim: storyteller.card.lobby_scent_diffuser_harm_claim.v1
future_route: storyteller.card.lobby_scent_diffuser_future_route.v1
records:
- lobby_scent_diffuser.pressure_intake_recorded
- lobby_scent_diffuser.pressure.batch_route_changed
- lobby_scent_diffuser.pressure.future_reader_claimed_clearance
- lobby_scent_diffuser.pressure.harm_claim_visible
cross_zone_entry:
event_id: storyteller.event.lobby_scent_diffuser_cross_zone_pressure.v1
option: 0
option_id: open_cross_zone_plume_review
requires:
- lobby_scent_diffuser.pressure_intake_recorded
- lobby_scent_diffuser.pressure.batch_route_changed
- lobby_scent_diffuser.pressure.future_reader_claimed_clearance
- lobby_scent_diffuser.pressure.harm_claim_visible
- all_seven_exact_cards
sets:
- lobby_scent_diffuser.afteruse_pressure_opened
- lobby_scent_diffuser.cross_zone_plume_visible
- lobby_scent_diffuser.future_clearance_claim_pending
- lobby_scent_diffuser.harm_claim_pending
scent_state_after: contested_cross_zone_cue
counter_deltas: { crossZonePlumeRisk: 2, crowdCueLegibility: 1, audienceScentClaimPressure: 1, futureRouteCost: 1 }
review:
rite_id: storyteller.rite.lobby_scent_diffuser_afteruse_review.v1
repeatable: false
requires_all_entry_flags: true
exact_slot_count: 7Neither a starter catalog nor a raw diffuser count satisfies this gate. The sequence is incident intake, cross-zone entry, then review.
Scent state and future-route outputs
branches:
pin_scent_to_original_zone:
scent_state_after: original_zone_only
future_effect: original_zone_scent_only
ventilate_and_break_the_cue:
scent_state_after: cue_ventilated_offline
future_effect: scent_cue_offline
reroute_crowd_by_unscented_signage:
scent_state_after: unscented_egress_bridge
future_effect: visual_egress_bridge_required
trace_cross_zone_plume:
scent_state_after: cross_zone_plume_traced
future_effect: plume_map_required
reopen_tao_yu_exposure_claim:
scent_state_after: claimant_exposure_reopened
future_effect: claimant_clearance_required
quarantine_citrus_batch_b17:
scent_state_after: batch_b17_quarantined
future_effect: batch_b17_quarantine_required
broadcast_safehouse_scent_as_clearance:
scent_state_after: false_safe_route_aired_pending
future_effect: false_scent_default_pendingEach branch must expose its exact runtime counter deltas on scent concentration, ventilation or zone cost, egress legibility, exposure-claim pressure, or broadcast-reality recovery. Generic ambience progress is not a substitute for those scent-specific surfaces.
Default arming
Only broadcast_safehouse_scent_as_clearance may arm all three controls:
default_triple:
lobby_scent_diffuser.default_pending: true
event.false_lobby_scent_diffuser_default.armed: true
future_route.false_scent_default_pending: trueThe default event must require the full triple and broadcast_reality.scent_safehouse_claim_aired, clear the triple on every terminal, and preserve the aired false-route scar.
default_terminals:
purge_hvac_and_issue_unscented_correction:
scent_state_after: purged_corrected
future_effect: unscented_egress_only
counter_deltas: { airExchange: 4, claimantProtection: 2, publicRouteConfusion: 2, sponsorAmbienceValue: -2 }
seal_north_lobby_for_plume_audit:
scent_state_after: north_lobby_quarantined
future_effect: plume_audit_before_reopen
counter_deltas: { plumeEvidencePreserved: 3, lobbyCapacity: -3, inspectionHeat: 2, futureRouteCost: 2 }
accept_scent_as_safe_route_reality:
scent_state_after: false_safe_route_hardened
future_effect: scent_recovery_only
counter_deltas: { broadcastRealityDrift: 3, falseSafeRoutePressure: 3, claimantExposure: 2, futureRouteCost: 3 }Authority and non-overlap
The mechanism proves only zone-scoped scent chronology, plume movement, HVAC or ventilation handling, unscented egress, and claimant visibility. It grants no evacuation authority, performer consent, sponsor hospitality clearance, archive ownership, or universal broadcast permission. Cosmetic-contact allergy, medical-air supply, and poster-quote rights remain separate mechanisms.