Preair Rehearsal Contamination / 预播排练污染机制
Preair Rehearsal Contamination covers the dangerous gap between a planned broadcast and the broadcast that becomes reality.
Storyteller already has strong surfaces for after-the-fact reality drift, copy provenance, package authorship, claimant notice, and faction commitments. This mechanism handles an earlier seam: a rehearsal, scratch cut, sponsor preview, inspector blocking note, cue sheet, or fan-door recording can start being cited before the final broadcast airs.
The player is not choosing a generic prep action. The player is deciding whether a not-yet-real version remains draft, becomes official, is quarantined, is rewritten, is privately captured, is publicly admitted, or leaks into reality as a false proof.
Entry contract
Open this mechanism only from live state pressure.
entry_state:
trigger_kind: state_pressure
planned_broadcast_or_rite_present: true
rehearsal_trace_present: true
authoritative_broadcast_not_yet_resolved: true
trace_holder_present: true
claimants_min: 2
final_air_decision_can_change_future_route: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: trueValid rehearsal traces include:
- rehearsal cue sheet;
- scratch cut or temp edit;
- sponsor preview wording;
- inspector-safe blocking map;
- stage mark or live-floor call sheet;
- artist refusal rehearsal;
- witness protection rehearsal;
- fan-door recording;
- pirate relay echo;
- AI continuity rehearsal memory;
- editor checksum preview;
- route-asset test handoff.
A trace is eligible only while it is not yet an accepted final broadcast, public package, lawful copy, or fully resolved derivative asset.
Core question
When a rehearsal trace can be mistaken for reality, who controls the boundary between draft and broadcast?
Every branch must answer:
rehearsal_row:
source_rite_or_scene: <id>
planned_broadcast_version: <version>
rehearsal_trace_kind: <kind>
trace_holder: sponsor | inspector | editor | fan_public | artist | witness | pirate_relay | production | explicit_absence
trace_claim: <what the trace appears to prove>
conflict_with_final_intent: <conflict>
selected_boundary: seal_draft | air_corrected | sponsor_preview_lock | inspector_hold | editor_checksum_rewrite | public_witness_admission | quarantine | default_leak
final_air_state_after: <state>
future_route_effect: <effect>State machine
preair_rehearsal_states:
no_trace:
meaning: no rehearsal record can be cited
trace_recorded:
meaning: a draft trace exists but has no claimant pressure yet
trace_contested:
meaning: at least two claimants can cite or suppress the trace
draft_sealed:
meaning: trace is sealed as non-real but costs time, proof, or trust
corrected_airing_prepared:
meaning: final broadcast will explicitly override the rehearsal trace
sponsor_preview_locked:
meaning: sponsor can cite the preview as promise or leverage
inspector_hold_attached:
meaning: lawful hold prevents false use but narrows schedule or public route
editor_checksum_rewrite:
meaning: cutroom can make final airing legible while increasing edit debt
public_witness_admitted:
meaning: public receipt acknowledges trace before final air
trace_quarantined:
meaning: route use delayed or recovery-only until boundary is decided
trace_leaked:
meaning: trace is being cited as if it already aired
false_rehearsal_reality:
meaning: unbroadcast version has contaminated future route acceptance
rehearsal_recovered_with_scar:
meaning: boundary is repaired but leaves cost or narrower future useBranch families
Seal draft
The player locks the rehearsal trace as non-broadcast proof.
relief_any:
- rehearsal_contamination_down
- false_rehearsal_reality_blocked
- future_route_boundary_clearer
cost_any:
- schedule_pressure_up
- proof_burden_up
- public_receipt_distrust_up
- handler_burden_up
future_effect_any:
- final_air_requires_boundary_note
- route_accepts_only_after_sealAir corrected version
The player spends a slot, proof bridge, or public line to make the final broadcast override the rehearsal.
relief_any:
- reality_drift_down
- public_receipt_legitimacy_up
- rehearsal_trace_claim_resolved
cost_any:
- sponsor_stop_loss_pressure_up
- inspection_heat_up
- cutroom_pressure_up
- audience_churn_up
future_effect_any:
- corrected_airing_becomes_required_bridge
- rehearsal_trace_rejected_by_future_readerSponsor preview lock
The player accepts sponsor control of the rehearsal boundary.
relief_any:
- budget_strain_down
- sponsor_stop_loss_pressure_down
- slot_pressure_down
cost_any:
- contract_capture_up
- sponsor_preemption_up
- public_receipt_distrust_up
- artist_boundary_risk_up
future_effect_any:
- sponsor_preview_citable
- public_route_costlier
- route_asset_sponsor_onlyInspector hold
The player attaches lawful hold or safety blocking to the trace.
relief_any:
- false_rehearsal_reality_blocked
- custody_clarity_up
- archive_fraud_down
cost_any:
- inspection_heat_up
- bureau_favor_debt_up
- schedule_pressure_up
future_effect_any:
- lawful_only_until_airing
- public_route_requires_addendumEditor checksum rewrite
The player lets cutroom rewrite the boundary between rehearsal and final airing.
relief_any:
- continuity_hazard_down
- slot_legibility_up
- audience_churn_down
cost_any:
- edit_debt_up
- source_ambiguity_up
- future_raw_proof_cost_up
future_effect_any:
- checksum_required_for_future_use
- raw_rehearsal_claim_costlierPublic witness admission
The player tells the public that the rehearsal exists before final air.
relief_any:
- public_receipt_legitimacy_up
- private_capture_blocked
- fan_trust_up
cost_any:
- witness_exposure_up
- public_panic_up
- sponsor_stop_loss_pressure_up
- pirate_heat_up
future_effect_any:
- public_only_until_lawful_bridge
- final_air_faces_witness_challengeQuarantine or hold route
The player delays route use until the trace boundary is settled.
relief_any:
- false_route_unlock_blocked
- contempt_risk_down
cost_any:
- route_delay_up
- missed_encounter_pressure_up
- audience_churn_up
future_effect_any:
- recovery_only_if_unresolved
- route_requires_containment_riteDefault leak
The player ignores the trace, lacks proof or handler, hides the trace holder, or lets one claimant cite it first.
event_seen_or_armed: storyteller.event.rehearsal_trace_leak.v1
cost_any:
- rehearsal_contamination_up
- reality_drift_up
- sponsor_preemption_up
- inspection_heat_up
- public_panic_up
future_effect_any:
- false_rehearsal_reality
- route_blocked
- route_captured
- route_costlier
- recovery_onlyCounters and durable states
Every branch must mutate at least three counters or durable states. At least one must be relief, one cost, and one future-route or broadcast-reality effect.
Primary counters and states:
rehearsal_contaminationfalse_rehearsal_realityrehearsal_trace_pressuretrace_holder_leveragefinal_air_integrityreality_driftcontinuity_hazardpublic_receipt_legitimacypublic_receipt_distrustsponsor_stop_loss_pressuresponsor_preemptioncontract_captureinspection_heatbureau_favor_debtedit_debtsource_ambiguitywitness_exposurepublic_panicpirate_heatschedule_pressureroute_delayfuture_raw_proof_costfuture_route_acceptance
Integration boundaries
- With 播出实在漂移, this mechanism occurs before final broadcast reality has settled.
- With 剪辑室优先队列机制, a rewrite can contain the trace but creates edit debt.
- With 认领告知顺序机制, briefing is about who learns first; rehearsal contamination is about whether the trace itself becomes pseudo-real.
- With 稳播包装队列机制, package authorship happens after a crisis becomes packageable; this mechanism handles draft traces before final broadcast.
- With 派系承诺账本机制, faction leverage can fund containment but cannot erase trace-holder consequences.
Non-goals
- Not a generic preparation system.
- Not a fixed rehearsal phase.
- Not a turn-count or day-count trigger.
- Not a replacement for broadcast asset provenance afterlife, which handles derivative copies after public or institutional use.
- Not satisfied by a lore note that a rehearsal happened.
- Not a free way to preview every branch before paying broadcast cost.
- Not valid unless future route acceptance or broadcast reality changes.