Aisle-Light Fuse Afteruse Receipt Lens
This lens checks that a circuit-assignment tag from one aisle-flow correction cannot be consumed later as clean current authority after the fuse inventory row, circuit-map version, cue schedule, responsible electrician, or displaced patron has changed. The observable object is circuitAttributionRows, not rosin-cloth cleanliness and not the physical fuse/clip or performer-control cue.
Entry Oracle
entry_state:
trigger_kind: state_pressure
source_aisle_light_fuse_visible: true
source_tag_is_circuit_attribution_not_physical_fuse: true
fuse_inventory_id_or_absence_visible: true
original_aisle_row_visible: true
original_house_electrician_visible: true
original_circuit_or_absence_visible: true
original_desk_or_cue_visible: true
original_circuit_map_version_visible: true
requested_afteruse_visible: true
afteruse_caller_visible: true
circuit_change_or_absence_visible: true
current_circuit_or_absence_visible: true
current_circuit_map_version_or_absence_visible: true
current_electrician_or_absence_visible: true
current_cue_schedule_or_absence_visible: true
displaced_patron_visible_or_absence: true
future_aisle_consumes_fuse_state: true
rosin_cloth_cannot_substitute_for_circuit_attribution: true
physical_fuse_clip_cannot_substitute_for_electrician_authority: true
player_can_certify_attach_split_reopen_notice_quarantine_or_default: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_aisle_count_trigger: true
no_dashboard_or_lens_health_trigger: trueChecks
1. Docket Separates Prior Aisle-Light Fuse From Current Aisle Authority
aisle_light_fuse_afteruse_docket:
circuitAttributionRows: required
row_fields:
source_aisle_light_fuse: required
fuse_inventory_id_or_absence: required
original_aisle_row: required
original_desk_or_cue: required
original_house_electrician: required
original_circuit_or_absence: required
original_circuit_map_version: required
current_circuit_or_absence: required
current_circuit_map_version_or_absence: required
current_electrician_or_absence: required
current_cue_schedule_or_absence: required
aisle_light_fuse_state_before: required
requested_afteruse: required
afteruse_caller: required
circuit_change_or_absence: required
proof_bridge_or_absence: required
blocked_patron: required
selected_afteruse_posture: required
aisle_light_fuse_afteruse_state_after: required
future_gate_or_route_effect: required
counter_deltas: required2. Review Branches Diverge
Required branch families:
certify_current_aisle_electrician;attach_aisle_light_fuse_afteruse_receipt;split_original_and_afteruse_aisle_electricians;reopen_aisle_safety_hearing;publish_circuit_change_notice;quarantine_aisle_light_fuse_afteruse_claim;false_aisle_light_fuse_afteruse_default;future_effect_any.
The six clean branches must expose exactly one of these evidence-specific effects:
aisle_light_fuse_current_electrician_certification_available;aisle_light_fuse_afteruse_requires_notice;aisle_light_fuse_electrician_split_required_before_recap;aisle_light_fuse_attribution_hearing_blocks_clean_afteruse;aisle_light_fuse_circuit_change_notice_required_before_reuse;aisle_light_fuse_claim_quarantined_until_bridge.
The default branch may set only false_claim_pending as its aisle-light-fuse state. It may arm future_route.false_aisle_light_fuse_afteruse_default_pending, but it may not preselect any terminal state.
3. Default Mutates Future Play
false_aisle_light_fuse_afteruse_default:
false_clean_fuse_claim: true
source_aisle_light_fuse_or_absence: required
hidden_or_stale_aisle_conflict: required
false_claim_caller: required
blocked_patron: required
state_before_resolution: false_claim_pending
stable_options:
- record_house_electrician_false_claim
- force_public_circuit_notice
- restore_blocked_patron
terminal_state_exactly_one:
- false_clean_aisle
- circuit_change_notice_required
- recovery_only
future_gate_effect_exactly_one:
- aisle_light_fuse_afteruse_route_costlier
- aisle_light_fuse_public_notice_required_after_false_afteruse
- aisle_light_fuse_afteruse_recovery_only
counter_deltas_min: 3
durable_mutation: true4. Runtime Rollup Status Is Explicit
The runtime packet must include seven exact starter cards, a state-pressure review rite with seven divergent branches, a false-afteruse default event with three durable outcomes, a focused Jest runtime test, and a durable lens-scoped replay exported from the gameplay CLI. The replay must exercise the default event itself: selecting rite choice 6 and merely arming the event does not demonstrate a durable outcome.
5. Durable Replay Evidence
lens_id: storyteller.lens.aisle_light_fuse_afteruse_receipt.v1
session_id: lens-storyteller-lens-aisle-light-fuse-afteruse-receipt-v1-20260720t0632z-runtime-default
seed: aisle-light-fuse-afteruse-20260717b
replay_path: lens/replays/aisle-light-fuse-afteruse.default.replay.json
expected:
source_aisle_light_fuse_visible: true
afteruse_caller_visible: true
false_afteruse_default_can_be_armed: true
default_event_choice_recorded: true
default_event_resolved_flag: true
false_claim_pending_cleared: true
pending_default_flags_cleared: true
default_event_not_left_unresolved: true
exactly_one_terminal_state_visible: true
exactly_one_terminal_future_effect_visible: trueThe accepted final state clears aisle_light_fuse.state.false_claim_pending, aisle_light_fuse.default_pending, event.false_aisle_light_fuse_afteruse_default.armed, and future_route.false_aisle_light_fuse_afteruse_default_pending; sets event_resolved.storyteller.event.false_aisle_light_fuse_afteruse_default.v1; and preserves exactly one selected terminal state plus its one aisle-light-fuse-prefixed future-route effect.