Custody Oracle Crossread / 羁押判读交叉线
Custody Oracle Crossread is a pressure-system storyline for the moment after Storyteller has already created a custody scar and before a future route is allowed to reuse it.
The player is not choosing the original custody outcome again. The player is choosing which in-world oracle gets to answer what that outcome means now: archive, public receipt, cutroom checksum, sponsor readback, fan oxygen memory, or stability table.
Primary playable question
When a prior route asset, voice, archive copy, memorial claim, stability table, or public receipt has become durable but not clean consensus, who may answer its current state, who is excluded by that answer, and what future route becomes opened, narrowed, hostile, captured, blocked, or recovery-only?
Why this is the next useful expansion
The current satisfied lens corpus already covers many first-order decisions. What remains thin is the replay-facing readout. A player can protect a voice, suppress a docket, publish a receipt, or carry proof across the floor; later, the game still needs a concrete way to ask what that choice means without turning it into hidden flag prose.
This storyline provides that playable readout seam. It connects:
It is not another ruling. It is the moment a prior ruling, custody row, voice probate, fan ledger, or stability table is read by the world.
State-triggered entry
Open the storyline when all are true:
entry_state:
trigger_kind: state_pressure
prior_state_family_any:
- route_asset_custody
- archive_voice_custody
- memorial_voice_probate
- availability_reader_result
- reality_drift_docket
- stability_clearance_table
- fan_oxygen_ledger_row
- memorial_air_chain_row
- blackbox_patch_row
prior_state_is_durable: true
prior_state_not_clean_consensus: true
future_route_requires_answer: true
oracle_surfaces_available_min: 2
player_can_select_or_record_default: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_count_trigger: trueValid source states include protected, missed, hostile, captured, sacrificed, false_owner, lawful_only, public_only, sponsor_only, fan_only, editor_masked, stability_only, recovery_only, double_reality_hardened, or an explicit absence.
Content pack
Mechanic
- 羁押判读交叉机制 defines the oracle state model, branch costs, counter contract, and invalid shortcuts.
Existing docket cards used as oracle carriers
- 可用性读者冲突案卷 — when the question is which future reader may cite a scarred availability state.
- Iris Vale 纪念声权验讫案卷 — when the question is how a deceased voice can be carried without becoming ownership.
- 稳播清算案卷 — when the question is whether a public version is stable enough to air and who pays the later repricing.
- 实在漂移案卷 — when incompatible oracle answers become a contradiction object.
- 粉丝委任账本 and 纪念空气链案卷 — when public grief, fan oxygen, or memorial air memories become the answering surface.
- 白鸦洁净悲伤补丁案卷 — when a cutroom checksum or clean-grief edit is asked to answer without raw custody exposure.
Existing rites used as crossread actions
A crossread may be implemented by scoped variants of:
The rite must record the queried prior state, selected oracle, excluded reader, cost, and future route effect.
Existing events used as default or answer pressure
- 可用性读者冲突默认 when a loud reader captures a scarred availability state.
- Iris 声权验讫默认 when memorial voice use proceeds without a valid readout.
- 清算台重估 when a stability table answer is suppressed, underfilled, or contradicted.
- 实在漂移介入 when two oracle answers harden into incompatible public reality.
Storyline spine
Beat 1 — A prior state asks to be read
A future route needs to know what a scarred object is now. It may be a protected witness, a captured proof packet, a memorial voice row, a sponsor-cleared version, a public-only receipt, a fan oxygen debt, an editor-masked checksum, or a recovery-only route asset.
The game must not answer silently. The player sees a crossread row or equivalent docket refresh.
Beat 2 — Oracles disagree before the player chooses
At least two answer surfaces are live. For example:
- archive says
lawful_only, but public receipt wants visible legitimacy; - fan oxygen says the debt was paid, but sponsor readback calls it a stop-loss breach;
- cutroom checksum says the broadcast can continue, but archive sees source ambiguity;
- stability table says the audience can keep watching, but reality drift remains unresolved;
- memorial voice probate says the chain is scoped, but future sponsor use tries to treat it as a universal license.
Beat 3 — The player selects, splits, or refuses an oracle
Offer a rite or equivalent action that forces the player to pick one of:
- archive answer;
- public receipt answer;
- cutroom checksum answer;
- sponsor readback answer;
- fan oxygen answer;
- stability table answer;
- split answer;
- refusal/default.
The chosen oracle must not erase the others. It scopes them, excludes them, makes them hostile, or feeds them into a future contradiction.
Beat 4 — The answer changes a route
The selected answer must be consumed by at least one future route or reader.
Valid future effects:
- lawful route opens but public addendum is required;
- public route opens but lawful annex is required;
- sponsor route opens with capture;
- fan route opens with queue retaliation risk;
- broadcast route opens with stability escrow debt;
- archive reader contests checksum source;
- future drift audit gets a contradiction object;
- route asset becomes narrowed, hostile, captured, blocked, or recovery-only.
Beat 5 — Default answer becomes a scar
If the player refuses or hides the crossread, the loudest oracle answers by default. The event must name the answering surface and the harmed/excluded surface.
Default answer examples:
- sponsor readback captures a public receipt;
- archive seal blocks fan oxygen legitimacy;
- cutroom checksum masks a voice without lawful probate;
- stability table delays contradiction into later drift;
- fan oxygen ledger makes an archive-only state publicly volatile.
Branch map
| Branch | Relief | Cost/scar | Future state |
|---|---|---|---|
| Archive answer | custody clarity, lawful route, false-owner pressure down | inspection heat, archive debt, public distrust | lawful-only; public addendum required |
| Public receipt answer | public legitimacy, private capture blocked, audience stability | sponsor pressure, witness exposure, inspection heat | public-only; lawful annex required |
| Cutroom checksum answer | continuity, slot survival, source protection | edit debt, source ambiguity, public distrust | checksum-required; archive contested |
| Sponsor readback answer | stop-loss relief, slot pressure relief, money pressure down | contract capture, public distrust, recovery cost | sponsor-only; neutrality contested |
| Fan oxygen answer | fan balance, grief stability, mutual-aid legitimacy | fan resentment, queue retaliation, sponsor pressure | fan route opens; lawful route costlier |
| Stability table answer | churn relief, broadcast legibility, schedule survival | stability debt, clearance premium, delayed contradiction | broadcast route opens; drift audit costlier |
| Split answer | two futures remain playable with scope | handler burden, ambiguity, inspection or drift pressure | scoped dual route; later reader collision |
| Refusal/default | immediate assignment burden falls | hostile reader, captured answer, false owner, recovery cost | blocked, hostile, captured, or recovery-only |
Counter contract
Every resolved branch must mutate at least three durable surfaces:
counter_contract:
relief_min: 1
cost_min: 1
future_route_or_reader_effect_min: 1Core counters and states:
custody_clarityarchive_signature_legitimacyarchive_debtinspection_heatpublic_receipt_legitimacypublic_receipt_distrustfan_oxygen_balancefan_oxygen_resentmentfan_oxygen_liabilitysponsor_stop_loss_pressurecontract_capturecontinuity_hazardsource_ambiguityedit_debtaudience_stabilityaudience_churnstability_escrow_debtclearance_premiumreality_driftfuture_recovery_costroute_asset_pressure
Missability and recovery
This storyline is missed when implementation:
- shows the player a prior custody state as a clean tooltip;
- lets one answer surface satisfy all future readers;
- hides the excluded reader;
- lets sponsor, archive, public, fan, editor, or stability answer erase the others;
- lets memorial voice probate become universal permission;
- lets stability clearance become truth;
- triggers from fixed turn, fixed day/week, chapter quota, raw count, dashboard state, or lens health.
Recovery must be scarred:
- reopen crossread with higher inspection heat;
- publish an addendum and accept sponsor/fan cost;
- file lawful annex and accept delay;
- attach checksum correction and accept edit debt;
- unwind sponsor readback and accept contract capture residue;
- split the answer and accept later reader collision;
- quarantine the route asset and accept recovery-only access.
Replay/session evidence shape
storyline_id: storyteller.storyline.custody_oracle_crossread.v1
session_id: lens-custody-oracle-crossread-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
trigger_kind: state_pressure
prior_state_family: <family>
prior_state_id: <stable id>
prior_state_value: protected | missed | hostile | captured | false_owner | lawful_only | public_only | sponsor_only | editor_masked | fan_only | stability_only | recovery_only | equivalent
future_route_requires_answer: true
oracle_surfaces_available_min: 2
no_fixed_turn_trigger: true
crossread_row:
queried_object: <route asset voice docket receipt patch table or explicit_absence>
oracle_surfaces:
- <oracle-a>
- <oracle-b>
selected_oracle: archive | public_receipt | cutroom_checksum | sponsor_readback | fan_oxygen | stability_table | split | refusal_default
excluded_or_contested_surface: <surface>
future_route_or_reader: <route or reader>
branch_runs:
resolved_branch:
selected_oracle: <oracle>
answer_state_after: <state>
future_effect: <effect>
counter_deltas:
relief: []
cost: []
future: []
default_branch:
event_seen_or_armed: availability_reader_collision_default | iris_voice_probate_default | clearance_desk_repricing | reality_drift_intervention | equivalent
loudest_oracle: <oracle>
harmed_surface: <surface>
false_or_captured_answer: <state>
assertions:
- entry_is_state_triggered
- prior_state_history_preserved
- multiple_oracles_visible
- selected_oracle_scopes_not_erases
- excluded_surface_visible
- answer_consumed_by_future_route
- success_has_cost
- refusal_or_default_is_durable
- no_fixed_turn_triggerNon-goals
- Not a turn-count package.
- Not generic governance.
- Not raw count expansion.
- Not a lore recap of old choices.
- Not a universal truth oracle.
- Not valid if the crossread answer is not consumed by a route, reader, event, counter, or route-asset state.