Schedule Preemption Claims Lens / 档期抢占认领 Lens
This lens observes whether 档期抢占认领线 makes schedule choice change encounter and route availability instead of behaving like a passive calendar.
A passing implementation proves that two or more claims compete for a finite broadcast surface; the player sees the authority, on-slot effect, off-slot effect, displacement receipt, branch choice, counter deltas, and future reader. The winning claim must gain availability with cost. The losing claim must become delayed with receipt, missed, hostile, lawful-only, public-only, pirate-only, blackout-folded, recovery-only, or equivalent. If no valid receipt exists, 落档遭遇默认 must fire or arm.
The lens fails if entry depends on fixed turn number, fixed day/week interval, chapter quota, raw content count, dashboard health, or generic schedule pressure without a named collision.
Primary observation link
This lens observes:
- 档期抢占认领线;
- 档期抢占认领机制;
- Broadcast Schedule;
- Schedule Contract Slots;
- Schedule Contracts;
- Broadcast Reality;
- Route Assets and Custody;
- 制作分诊台机制;
- 直播现场班组负荷机制;
- 更正档期竞拍机制.
It is observed through:
Observable promise
The player must decide which claim receives a reality-making schedule surface and how the displaced claim remains playable, scarred, hostile, or lost.
The implementation must show:
- the finite schedule surface;
- at least two competing slot claims, or one claim plus a named live object that will be displaced;
- authority or explicit absence;
- if-on-slot and if-off-slot effects for each relevant claim;
- a branchy hearing with at least five divergent branch families;
- a durable default event when no valid displacement receipt exists;
- future reader effects for both the awarded and displaced claim.
Must pass
1. Entry is state-driven by slot collision
Required entry evidence:
entry_state:
trigger_kind: state_pressure
finite_schedule_surface_present: true
competing_slot_claims_min: 2
at_least_one_claim_changes_encounter_or_route_availability: true
slot_authority_present_or_explicit_absence: true
displaced_claim_can_default: true
future_reader_consumes_preemption_result: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: trueThe lens fails if the package opens because a numbered turn, day count, chapter quota, raw content count, or lens-health target has arrived.
2. Finite schedule surface is visible
The replay must name the schedule surface.
Valid surfaces include:
live_broadcast;rehearsal;legal_airing;apology_surface;public_testimony;route_debut;emergency_delay;counterbroadcast;blackout_containment;- equivalent.
The lens fails if the conflict is only described as general urgency.
3. Slot claims are visible
档期抢占案卷 must show at least two claims or one claim plus a named displaced live object:
claims_before:
- claim_id: <claim a>
claimant_surface: <surface>
requested_encounter_or_route: <id>
proof_or_authority: <proof or explicit_absence>
if_on_slot: <effect>
if_off_slot: <effect>
- claim_id: <claim b or displaced object>
claimant_surface: <surface>
requested_encounter_or_route: <id>
proof_or_authority: <proof or explicit_absence>
if_on_slot: <effect>
if_off_slot: <effect>The lens fails if there is only one claim and no named displaced object.
4. Authority or explicit absence is recorded
Valid authority includes:
- producer license;
- schedule contract;
- mirror or screen right;
- archive receipt;
- fan mandate;
- sponsor letter;
- inspector stamp;
- pirate packet;
- explicit absence.
A character’s status is not authority by itself. Han Yanshuang can stamp, Shen Luo can sell, Baiya can mask, Yu Lan can receipt, and 海盗频段童声 can relay, but the authority field must still be visible.
5. Hearing assignment slots are explicit
档期抢占听证 must require:
assignment:
docket: storyteller.card.schedule_preemption_docket.v1
slot_window: <slot id>
selected_claim: <claim id or explicit_absence>
preempting_authority: <authority or explicit_absence>
handler_or_absence: <handler or explicit_absence>
displaced_claims:
- claim_id: <claim id>
displacement_treatment: receipt | lawful_deferral | public_deferral | sponsor_clean | editor_mask | pirate_aperture | no_receipt | equivalent
future_reader: <route_or_reader id>
support_or_absence: <support or explicit_absence>Generic choices such as pick schedule, delay the other route, or handle later cannot satisfy this lens.
6. Branch families diverge
A satisfying implementation must expose at least five branch families, including one default branch:
award_official_slot;split_surface;lawful_deferral_with_receipt;sponsor_or_management_preemption;editor_mask_or_patch;pirate_or_public_off_slot_breach;blackout_or_default_selects.
Branches must not collapse to the same counter deltas or future availability.
7. Branch assertions
Official slot assertion
selected_branch: award_official_slot
selected_claim_state_after_any: [official_slot_awarded, encounter_available, route_unlocked_with_cost, lawful_use_unlocked]
displaced_claim_state_after_any: [delayed_with_receipt, hostile, missed, recovery_only, lawful_only, public_only]
relief_any: [slot_collision_down, selected_route_unlocked, broadcast_reality_stabilized]
cost_any: [off_slot_debt_up, displaced_claim_hostility_up, inspection_heat_up, sponsor_pressure_up]Split surface assertion
selected_branch: split_surface
selected_claim_state_after_any: [public_only, lawful_only, sponsor_only, split_surface]
displaced_claim_state_after_any: [public_only, lawful_only, contradiction_pending, recovery_only]
relief_any: [multiple_claims_partially_available, private_capture_blocked, legal_continuity_preserved]
cost_any: [source_ambiguity_up, schedule_pressure_up, audience_confusion_up, archive_review_required]Lawful deferral assertion
selected_branch: lawful_deferral_with_receipt
selected_claim_state_after_any: [official_slot_awarded, lawful_use_unlocked]
displaced_claim_state_after_any: [delayed_with_receipt, lawful_only, audit_required, route_costlier]
relief_any: [legal_breach_down, slot_collision_down, selected_slot_cleaner]
cost_any: [bureau_favor_debt_up, public_distrust_up, missed_encounter_pressure_up]Sponsor preemption assertion
selected_branch: sponsor_or_management_preemption
selected_claim_state_after_any: [sponsor_route_unlocked_with_capture, preempted_by_sponsor]
displaced_claim_state_after_any: [hostile, public_only, missed, recovery_only]
relief_any: [sponsor_stop_loss_pressure_down, immediate_slot_pressure_down, budget_strain_down]
cost_any: [contract_capture_up, public_receipt_distrust_up, fan_oxygen_resentment_up, artist_boundary_pressure_up]Editor mask assertion
selected_branch: editor_mask_or_patch
selected_claim_state_after_any: [encounter_available, continuity_patch, official_slot_awarded]
displaced_claim_state_after_any: [source_ambiguity, lawful_only, blackout_folded, recovery_only]
relief_any: [broadcast_reality_drift_down, immediate_slot_pressure_down, witness_or_source_exposure_down]
cost_any: [edit_debt_up, source_ambiguity_up, archive_signature_legitimacy_down, future_fraud_cost_up]Pirate or public breach assertion
selected_branch: pirate_or_public_off_slot_breach
selected_claim_state_after_any: [official_slot_awarded, sponsor_only, lawful_only]
displaced_claim_state_after_any: [public_only, pirate_only, counterbroadcast_chain_open]
relief_any: [hidden_claim_visible, private_capture_down, public_receipt_legitimacy_up]
cost_any: [inspection_heat_up, relay_custody_risk_up, black_screen_pressure_up, sponsor_retaliation_up]Default assertion
selected_branch: blackout_or_default_selects
event_seen_or_armed: storyteller.event.off_slot_encounter_default.v1
displaced_claim_state_after_any: [missed, hostile, blackout_folded, recovery_only]
cost_any: [black_screen_slots_up, broadcast_reality_drift_up, missed_encounter_pressure_up, off_slot_debt_up]8. Displaced claim mutates future availability
Every resolution must record at least one displaced claim state:
delayed_with_receipt;missed;hostile;lawful_only;public_only;pirate_only;blackout_folded;recovery_only;- equivalent.
The lens fails if losing claims simply remain available for later without cost.
9. Success has relief and cost
Every non-default branch must improve one pressure while worsening, spending, narrowing, or exposing another.
Valid costs include:
off_slot_debt;displacement_receipt_legitimacy_down;missed_encounter_pressure;hostile_recruit_pressure;recovery_only_window;contract_capture;inspection_heat;bureau_favor_debt;public_receipt_distrust;fan_oxygen_resentment;archive_review_required;source_ambiguity;relay_custody_risk;black_screen_slots.
Clean universal availability fails.
10. Off-slot default is durable
落档遭遇默认 must fire or arm when:
- no docket exists for a required collision;
- authority is missing or falsely filed;
- a losing claim has no displacement receipt;
- sponsor/inspector/editor/pirate/blackout narration hides displacement;
- future reader consumes the missing or off-slot state.
The event payload must identify source docket or explicit absence, displaced claim, preempting claim, missing receipt reason, default narrator, future reader, and recovery requirement.
11. Future reader consumes both sides
A passing replay must show at least one future reader for the awarded claim and one for the displaced claim.
Valid future readers include:
- route asset access;
- character encounter or recruit window;
- archive audit;
- fan oxygen audit;
- sponsor gate;
- inspection hearing;
- correction slot;
- production triage desk;
- broadcast reality drift reader;
- black-screen release;
- recovery-only route.
Flavor-only schedule dialogue fails.
Replay evidence shape
lens_id: storyteller.lens.schedule_preemption_claims.v1
session_id: lens-storyteller-schedule-preemption-claims-v1-<timestamp>
seed: <deterministic seed>
entry_state:
trigger_kind: state_pressure
finite_schedule_surface_present: true
competing_slot_claims_min: 2
slot_authority_present_or_explicit_absence: true
displaced_claim_can_default: true
future_reader_consumes_preemption_result: true
no_fixed_turn_trigger: true
offered_choices:
- card.schedule_preemption_docket
- award_official_slot
- split_surface
- lawful_deferral_with_receipt
- sponsor_or_management_preemption
- editor_mask_or_patch
- pirate_or_public_off_slot_breach
- blackout_or_default_selects
branch_result:
selected_branch: <branch>
awarded_claim_or_absence: <claim or explicit_absence>
displaced_claims_after:
- claim_id: <claim>
availability_after: <state>
displacement_receipt: present | missing | contested | impossible
event_seen_or_armed: storyteller.event.off_slot_encounter_default.v1 | none
future_reader_effects:
awarded_claim: <effect>
displaced_claim: <effect>
counter_deltas:
relief: []
cost: []Non-goals
- Not a raw-count content expansion.
- Not a fixed-turn trigger.
- Not a calendar cooldown.
- Not a generic production triage check.
- Not a correction slot after an aired version has settled.
- Not valid if one official slot keeps every encounter available for free.