Lin Xi Future Broadcast Witness Lens / 林夕未来广播见证 Lens

This lens observes whether 林夕未来广播见证线 and 林夕未来广播见证机制 turn a future-broadcast signal into playable character evidence instead of a clean lore flag.

The lens exists because the older Lin Xi surface was thin: she could appear after a future broadcast and affect a black-box ending, but the game did not have to prove encounter/miss/recruit states, witness boundary, excluded reader, or future route effect. This lens makes Lin Xi testable as a character-route pack.

This lens observes:

It is observed through:

Observable promise

A future broadcast is not a clean flag and Lin Xi is not a cutscene.

A passing implementation proves:

  • the future broadcast opens from state pressure, not numbered turn or fame threshold;
  • the signal row has a carrier and contradiction surface;
  • Lin Xi has explicit encounter, witness, miss, recruit, hostile, and recovery states;
  • at least one future reader wants to consume the signal;
  • at least one excluded reader or explicit absence is recorded;
  • the interview branch changes Lin Xi state, signal state, future reader state, and route or ending effect;
  • the black-box route or ending reader cannot accept the signal without a witness boundary;
  • default erasure is durable and replayable.

The lens fails if the implementation only sets future_broadcast_heard, lin_xi_seen, black_box_clue_found, ending_unlocked, or mystery_progress_up.

Entry oracle

entry_state_required:
  trigger_kind: state_pressure
  future_broadcast_row_present: true
  signal_has_route_or_ending_relevance: true
  contradiction_surface_present: true
  lin_xi_candidate_or_explicit_absence_visible: true
  future_reader_present: true
  witness_boundary_unresolved: true
  player_can_interview_echo_checksum_quarantine_silence_recruit_or_default: true
  no_fixed_turn_trigger: true
  no_fixed_day_or_week_trigger: true
  no_fame_threshold_trigger: true
  no_raw_count_trigger: true
  no_dashboard_or_lens_health_trigger: true

The lens must fail if entry comes from fixed turn count, day/week interval, fame number, raw audience count, chapter quota, dashboard status, lens health, generic mystery escalation, or a clean future-broadcast phase without a signal row and future reader.

Docket oracle

林夕未来广播案卷 or equivalent must record:

docket_required:
  signal:
    source_event: event.future_broadcast
    signal_row_id: <stable id>
    heard_state: unheard | heard | replayed | contradicted | archived | equivalent
    source_carrier: radio_leak | black_box_recording | archive_echo | pirate_relay | edit_checksum | witness_memory | explicit_absence | equivalent
    contradiction_surface: black_box | broadcast_reality_drift | patch_custody | continuity_afteruse | ending_scar | asset_provenance | equivalent
  lin_xi:
    encounter_state: unoffered | reachable | protected | missed | recruited | hostile | explicit_absence
    witness_state: unassigned | private_witness | public_echo | lawful_checksum | archive_quarantine | sponsor_silenced | route_ally | hostile_future_reader
    risk_state: exposed | protected | captured | proxy_only | false_absence | recovery_only | explicit_absence
    recruit_window: open | narrow | closed | recovery_only | explicit_absence
  reader:
    future_reader: public | lawful | archive | sponsor | management | route_asset | broadcast_reality | black_box_ending | equivalent
    intended_use: route_unlock | ending_eligibility | proof_bridge | public_receipt | lawful_annex | sponsor_release | patch_validation | contradiction_closure | equivalent
    excluded_reader_or_absence: <reader or explicit_absence>
  assignment:
    proposed_handler_or_absence: producer | baiya | yu_lan | han_yanshuang | shen_luo | archive_clerk | pirate_relay | explicit_absence | equivalent
    proof_bridge_or_absence: raw_signal | black_box_fragment | edit_checksum | lawful_seal | public_counterline | archive_stamp | explicit_absence | equivalent
    default_if_unassigned: storyteller.event.lin_xi_signal_erasure_default.v1
  future_effect:
    route_effect: accepted_with_witness_cost | public_only | lawful_only | archive_quarantined | sponsor_captured | contradiction_pending | blocked | recovery_only
    ending_effect: black_box_opened_costlier | black_box_opened_blocked_until_reproof | ending_scar_added | none

The lens fails if the card lacks signal carrier, contradiction surface, Lin Xi state, future reader, excluded reader, proof bridge, default, or future effect.

Rite oracle

林夕信号问询 or equivalent must require explicit assignments:

assignment_required:
  docket: storyteller.card.lin_xi_future_broadcast_docket.v1
  source_event: event.future_broadcast
  signal_row_id: <stable id>
  source_carrier: <carrier or explicit_absence>
  contradiction_surface: <surface>
  lin_xi_encounter_state: <state>
  lin_xi_witness_state_before: <state>
  future_reader: <reader>
  intended_use: <use>
  excluded_reader_or_absence: <reader or explicit_absence>
  handler_or_absence: <handler or explicit_absence>
  proof_bridge_or_absence: <proof or explicit_absence>
  selected_response: private_interview | public_echo | lawful_checksum | archive_quarantine | sponsor_silence | recruit_route_ally | refuse_or_default
  accepted_cost_surface_or_absence: <cost or explicit_absence>
  future_effect: <effect>

The lens fails if Lin Xi can be used as public, lawful, archive, sponsor, route, ending, or broadcast-reality proof without these assignments.

Branch divergence oracle

A satisfying implementation must prove at least five non-equivalent branch families plus default or explicit blocked state.

Branch familyRequired reliefRequired costRequired future effect
Private interviewwitness preserved; lead narrowedhandler burden; public receipt absent; route delayprivate-only; public addendum required
Public echoarchive capture falls; contradiction visiblewitness exposure; sponsor pressure; inspection heatpublic-only; lawful checksum required
Lawful checksumproof chain improves; false summary blockedarchive debt; edit debt; public distrustlawful-only; black-box route costlier
Archive quarantinesource integrity preserved; exposure fallsroute block or delay; archive debt; ending pressurearchive quarantined; recovery-only until release
Sponsor silenceslot/report pressure fallssponsor capture; false absence; reader hostilitysponsor-only; default armed
Recruit route allynarrow black-box route opensprotection debt; license pressure; ending scarroute ally; accepted with witness cost
Erasure defaultfastest summary moves firstsignal erased; hostile future reader; drift risesblocked, recovery-only, or reproof required

No branch may produce clean acceptance across public, lawful, archive, sponsor, route asset, broadcast reality, and black-box ending readers.

Default oracle

林夕信号抹除默认 or equivalent must fire or be armed when:

  • a future-broadcast signal is filed as clean memory;
  • Lin Xi’s absence is assumed without explicit absence proof;
  • sponsor, management, archive, or edit summary replaces witness boundary;
  • the black-box route consumes the signal without a witness state;
  • public echo, lawful checksum, or archive quarantine is treated as universal proof;
  • an excluded reader is omitted;
  • the signal’s contradiction surface is hidden.

Required default payload:

default_required:
  event: storyteller.event.lin_xi_signal_erasure_default.v1
  signal_source:
    source_event: event.future_broadcast
    signal_row_id: <stable row id>
    contradiction_surface: <surface>
  lin_xi_state:
    encounter_state_before: <state>
    witness_state_before: <state>
    reason_missing_or_hidden: <reason>
  default_author:
    actor: archive | sponsor | management | editor | inspector | broadcast_reality | player | equivalent
    false_claim: <claim>
  affected_reader:
    reader: <reader>
    reader_state_after: hostile | contradiction_pending | lawful_only | public_only | blocked | recovery_only | false_clean_hardened
  future_effect: <effect>

The default must mutate future play, not just text.

Future consumption oracle

The storyline is incomplete until a later route, proof bridge, black-box ending, broadcast-reality reader, or public/lawful/archive/sponsor reader consumes the witness state.

Required evidence:

future_consumption:
  consuming_surface: route_asset | black_box_ending | broadcast_reality | public_receipt | lawful_annex | archive_release | sponsor_release | equivalent
  consumed_witness_state: <Lin Xi witness state>
  accepted_or_rejected_because: <reason>
  route_or_ending_effect_after: <effect>

If the implementation only resolves the interview but never proves future reader consumption, the lens is incomplete.

Replay evidence expectation

lens_id: storyteller.lens.lin_xi_future_broadcast_witness.v1
session_id: lens-lin-xi-future-broadcast-witness-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
  trigger_kind: state_pressure
  future_broadcast_row_present: true
  signal_has_route_or_ending_relevance: true
  contradiction_surface_present: true
  lin_xi_candidate_or_explicit_absence_visible: true
  future_reader_present: true
  no_fixed_turn_trigger: true
  no_fame_threshold_trigger: true
offered:
  card: storyteller.card.lin_xi_future_broadcast_docket.v1
  rite: storyteller.rite.lin_xi_signal_interview.v1
branch_runs:
  valid_branch:
    selected_response: private_interview | public_echo | lawful_checksum | archive_quarantine | sponsor_silence | recruit_route_ally
    lin_xi_encounter_state_after: <state>
    lin_xi_witness_state_after: <state>
    signal_state_after: <state>
    future_reader_state_after: <state>
    route_or_ending_effect: <effect>
    counter_deltas:
      relief: []
      cost: []
      future: []
  default_branch:
    event_seen_or_armed: storyteller.event.lin_xi_signal_erasure_default.v1
    default_author: <actor>
    affected_reader: <reader>
    lin_xi_witness_state_after: false_absence | hostile_future_reader | recovery_only
    future_effect: blocked | recovery_only | black_box_opened_blocked_until_reproof | equivalent
future_consumption:
  consuming_surface: <surface>
  consumed_witness_state: <state>
  route_or_ending_effect_after: <effect>
assertions:
  entry_is_state_triggered: true
  future_broadcast_not_clean_flag: true
  lin_xi_encounter_witness_and_recruit_states_distinct: true
  branch_outcomes_diverge: true
  default_is_durable: true
  future_reader_consumes_witness_state: true
  no_fixed_turn_trigger: true

Failure cases

The lens must fail if any of these are true:

  • future broadcast uses turn_gte, fixed day/week, fame threshold, raw count, dashboard state, or lens health as entry;
  • Lin Xi appears only as a lore note;
  • Lin Xi can be recruited without a witness boundary;
  • future broadcast becomes a clean flag;
  • the docket lacks future reader or excluded reader;
  • public echo counts as lawful proof;
  • lawful checksum counts as public truth;
  • sponsor silence counts as consent or absence;
  • archive quarantine opens a clean ending route;
  • black-box ending unlocks without witness state;
  • default has no default author, affected reader, or durable future effect;
  • replay evidence has no deterministic seed, branch state, and future consumption record.

Progress metric

Progress is measured by witness-state continuity, not by number of Lin Xi scenes.

  • 20%: state-triggered future-broadcast row creates or refreshes Lin Xi docket.
  • 40%: docket records signal, contradiction surface, Lin Xi state, future reader, excluded reader, proof bridge, default, and future effect.
  • 60%: at least three non-equivalent interview branches resolve with different witness and reader states.
  • 80%: default erasure mutates future route, ending, or broadcast-reality state.
  • 100%: a future reader consumes Lin Xi witness state and accepts, narrows, blocks, or makes the route/ending recovery-only.

Non-goals

  • Not a character biography.
  • Not a prophecy scene.
  • Not a raw content-count target.
  • Not a fixed-turn appearance.
  • Not a clean black-box ending key.
  • Not valid unless Lin Xi’s witness boundary is observable and changes future play.