Stage Light Cue Custody Lens / 舞台灯位证据羁押 Lens
This lens observes whether 舞台灯位证据羁押线 makes light cues playable as evidence instead of decorative staging.
A passing implementation proves that a spotlight, blackout mark, sponsor beauty wash, safety flood, camera crop, archive still, fan angle, or cue-board log cannot become universal proof unless the game names subject, operator or anchor, citing reader, harmed reader, selected posture, and future route effect.
Must pass
1. Entry is state-triggered
entry_state:
trigger_kind: state_pressure
cue_row_or_explicit_absence_present: true
lit_subject_or_disputed_subject_present: true
cue_claim_changes_body_safety_proof_or_public_visibility: true
citing_reader_present: true
harmed_or_excluded_reader_visible_or_explicit_absence: true
future_reader_or_route_consumes_cue_state: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_light_count_trigger: trueThe lens fails if it opens from a fixed concert beat, lighting-count threshold, dashboard state, generic power pressure, or lens health.
2. Cue row is concrete
舞台灯位账本 or equivalent evidence must include:
cue_row_required:
cue_id_or_absence: <cue id or explicit_absence>
cue_kind: spotlight | blackout_mark | safety_flood | beauty_wash | silhouette | handoff_light | proof_scan_light | fan_angle | camera_crop | explicit_absence | equivalent
lit_subject_or_absence: <subject or explicit_absence>
disputed_subject_or_absence: <subject or explicit_absence>
operator_or_anchor: light_board_operator | call_sheet | camera_log | archive_still | fan_recording | power_ledger | explicit_absence | equivalent
citing_reader: <reader>
harmed_or_excluded_reader: <reader or explicit_absence>
future_reader_or_route: <reader route or explicit_absence>The lens fails if evidence records only lights on, stage dark, cue passed, spotlight, or power restored.
3. Boundaries stay distinct
Emergency power success may explain why light was possible, but it cannot prove who was visible. A preair cue sheet may explain intended lighting, but it cannot prove the on-air cue without a final anchor.
Required evidence:
boundary_assertions:
emergency_power_is_not_cue_proof: true
preair_cue_sheet_is_not_on_air_cue: true
camera_crop_is_not_full_stage_proof: true
safety_flood_is_not_intact_wardrobe_trace: true4. Hearing branches diverge
舞台灯位听证 must expose at least five constructive or explicitly blocked branch families:
certify_raw_cue;certify_safety_cue;sponsor_beauty_light;split_light_and_camera;publish_public_angle;archive_escrow_cue;quarantine_cue;false_light_cue_default.
Each resolved branch must differ by cue state, cost profile, harmed reader state, and future route effect.
5. Default mutates future play
伪灯位证据默认 must fire or arm when cue custody is hidden or false-clean.
Minimum payload:
default_payload:
event: storyteller.event.false_light_cue_default.v1
cue_id_or_absence: <cue id or explicit_absence>
default_actor: <actor>
false_claim: <claim>
harmed_or_excluded_reader: <reader or explicit_absence>
cue_state_after: false_clean | sponsor_captured | safety_only | split_required | hostile | recovery_only | equivalent
future_reader_effect: blocked | costlier | sponsor_only | public_only | lawful_only | proof_rebuild_required | recovery_only | equivalent
counter_deltas_min: 3The default fails if it only changes mood, popularity, a light-board flag, or generic legal risk.
Progress metric
stageLightCueCustodyProgress =
concrete cue row +
reader divergence +
boundary distinction +
branch divergence +
durable default +
future reader consumptionTarget passing fixture:
stageLightCueCustodyProgress: 1.0Non-regression traps
- Sponsor beauty lighting cannot prove body presence for public, lawful, and archive readers at once.
- Safety lighting cannot preserve wardrobe or injury trace without a proof bridge.
- A fan angle can be public proof but not clean lawful proof.
- A camera crop cannot erase an unlit subject without default scar.
- A recruited operator, if later added, cannot become a universal cue witness.