Audience Survey Pencil Afteruse Receipt Lens
This lens checks that a prior audience survey pencil cannot be consumed later as universal survey, fan-oxygen, or artist-safety authority after the pencil batch, signer, reheating route, respondent list, or usher tally witness has changed.
Entry Oracle
entry_state:
trigger_kind: state_pressure
source_audience_survey_pencil_visible: true
pencil_batch_id_or_absence_visible: true
original_service_span_visible: true
original_survey_steward_visible: true
original_survey_sheet_version_visible: true
requested_afteruse_service_visible: true
afteruse_caller_visible: true
current_survey_sheet_version_or_absence_visible: true
current_survey_steward_or_absence_visible: true
displaced_guest_or_usher_tally_witness_visible_or_absence: true
proof_bridge_or_absence_visible: true
player_can_certify_attach_split_checksum_notice_quarantine_or_default: true
no_fixed_turn_trigger: true
no_dashboard_or_lens_health_trigger: trueChecks
1. Docket Separates Prior Audience Survey Pencil From Current Service Authority
audience_survey_pencil_afteruse_docket:
surveyRows: required
source_pencil_tag: required
pencil_batch_id_or_absence: required
original_service_span: required
original_survey_steward: required
original_survey_sheet_version: required
requested_afteruse_service: required
afteruse_caller: required
current_survey_sheet_version_or_absence: required
current_survey_steward_or_absence: required
displaced_guest_or_usher_tally_witness: required
proof_bridge_or_absence: required
selected_afteruse_posture: required
future_route_effect: required2. Review Branches Diverge
Required branch families:
certify_current_survey_steward;attach_audience_survey_pencil_afteruse_receipt;split_original_and_later_audience_survey_table_readers;require_editor_checksum_before_reuse;publish_usher_tally_witness_notice;quarantine_pencil_tag_afteruse_claim;false_clean_pencil_default;future_effect_any.
3. False-Clean Default Mutates Future Play
false_clean_pencil_default:
stale_pencil_claim: true
state_before_resolution: false_clean_pending
terminal_state_exactly_one:
- false_clean_survey_route
- caption_liaison_notice_required
- recovery_only
future_route_effect_exactly_one:
# alias: future_gate_effect_exactly_one
- audience_survey_pencil_afteruse_route_costlier
- audience_survey_pencil_editor_checksum_required
- audience_survey_pencil_afteruse_recovery_only
counter_deltas_min: 3
durable_mutation: trueEvidence Shape
Playable satisfaction is now backed by focused game content, the runtime test lens/storyteller-audience-survey-pencil-afteruse.runtime.test.ts, and the lens-scoped durable session exported to lens/replays/storyteller-lens-audience-survey-pencil-afteruse-receipt-v1.replay.json with seed 20260721.
The runtime proof exercises all seven review branches, verifies the false-clean default arms the follow-up event, and checks that each default resolution clears pending flags while leaving exactly one durable terminal state and one matching future route effect.