Lou Ke Caption Switch Hearing / 楼刻字幕切换听证
storyteller.rite.lou_ke_caption_switch_hearing.v1 is the strict character overlay for Lou Ke. It proves that the operator is the actual person card and that a complete caption row reaches a selected branch. It does not replace Caption Witness Hearing, whose generic and explicit-absence paths remain part of the reusable Caption Witness mechanism.
Exact assignment contract
All eleven slots are required, exact-ID checked, and in-hand checked:
rite_id: storyteller.rite.lou_ke_caption_switch_hearing.v1
requires:
ledger: storyteller.card.caption_witness_ledger.v1
switchboard_key: storyteller.card.caption_switchboard_key.v1
source_surface: storyteller.card.lou_ke_source_surface.v1
source_holder_or_absence: storyteller.card.lou_ke_source_holder.v1
source_proof_or_absence: storyteller.card.lou_ke_source_proof.v1
caption_text_or_absence: storyteller.card.lou_ke_caption_text.v1
caption_language_channel: storyteller.card.lou_ke_caption_channel.v1
caption_operator_or_absence: storyteller.card.lou_ke_caption_switcher.v1
excluded_or_harmed_reader: storyteller.card.lou_ke_harmed_reader.v1
pressure_actor: storyteller.card.lou_ke_pressure_actor.v1
future_reader_or_route: storyteller.card.lou_ke_future_reader.v1No generic operator, famous handler, explicit-absence card, parent-mechanism tag, or off-hand object may substitute for storyteller.card.lou_ke_caption_switcher.v1. Missing one support row or omitting a selected option must fail resolution. Every option repeats the eleven required slot/card IDs, so the selected branch is validated against the exact assigned packet.
The overlay is a one-shot quick rite with duration_days: 0, repeatable: false, and no implicit expiry hook. It opens from caption state pressure, not a fixed turn, day, raw caption count, dashboard, or lens-health trigger.
Durable branch boundary
The exact ordered choice IDs are:
| Index | Choice ID |
|---|---|
0 | recruit_switcher |
1 | protect_access_operator |
2 | retain_one_run |
3 | sponsor_safe_switch |
4 | split_language_tracks |
5 | archive_escrow |
6 | publish_fan_relay |
7 | suppress_or_autoclean |
Choice index 0 leaves lou_ke.state.recruited_caption_switcher, unlocks only route_asset.lou_ke_caption_switcher, records visible cost, and cannot certify source truth or universal caption acceptance. Choice index 7 removes any clean Lou Ke route asset, records suppression, emits or arms storyteller.event.lou_ke_false_caption_default.v1, and writes exactly lou_ke.default_pending, storyteller.event.lou_ke_false_caption_default.v1.armed, and future_route.lou_ke_recovery_pending.
Passive delay, an unassigned rite, or the parent generic hearing does not arm that character pending triple. Durable proof is recorded in lens/replays/lou-ke-caption-switcher.recruit.replay.json, lens/replays/lou-ke-caption-switcher.hostile-default.replay.json, and lens/storyteller-lou-ke-caption-switcher.runtime.test.ts.