Custody Oracle Crossread Lens / 羁押判读交叉 Lens

This lens observes 羁押判读交叉线, 羁押判读交叉机制, Route Assets and Custody, Archive Voice Custody, 可用性读者冲突线, 播出实在漂移审计, and Iris Vale 纪念声权验讫线.

It is observed through concrete dockets, rites, and events: 可用性读者冲突案卷, Iris Vale 纪念声权验讫案卷, 稳播清算案卷, 实在漂移案卷, 可用性读者冲突听证, Iris Vale 纪念声权验讫听证, 稳播清算听证, 实在漂移审计, 可用性读者冲突默认, Iris 声权验讫默认, 清算台重估, and 实在漂移介入.

Observable promise

Storyteller must not let old custody decisions collapse into hidden flags. When a future route needs to know whether a prior asset, voice, proof, memorial row, stability table, fan ledger, or archive state is usable, the game must surface a concrete oracle answer with cost.

The lens is satisfied only when a replay proves that:

  • the queried prior state already exists;
  • at least two oracle surfaces can answer differently;
  • the player selects, splits, or defaults an oracle through a concrete card/rite/event surface;
  • the answer scopes rather than erases excluded surfaces;
  • the answer is consumed by a future route, reader, event, counter, or route-asset state.

Scope

This lens covers:

  • route assets marked protected, missed, hostile, captured, sacrificed, false-owner, or recovery-only;
  • archive and voice custody rows;
  • memorial voice probate outcomes;
  • availability-reader results;
  • reality-drift dockets;
  • stability-clearance tables;
  • fan oxygen, memorial air, and public receipt rows;
  • black-box and cutroom patch rows;
  • future routes attempting to reuse any of those rows.

It does not cover first discovery of a route asset. It observes the later readout of an already-scarred state.

State-triggered entry oracle

A valid replay or state inspection must open the surface from state pressure, not from a fixed numbered sequence.

Minimum entry evidence:

entry_state:
  trigger_kind: state_pressure
  prior_state_id: <stable id>
  prior_state_family: 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 | equivalent
  prior_state_value: protected | missed | hostile | captured | false_owner | lawful_only | public_only | sponsor_only | editor_masked | fan_only | stability_only | recovery_only | explicit_absence | equivalent
  future_route_requires_answer: true
  oracle_surfaces_available_min: 2
  no_fixed_turn_trigger: true
  no_fixed_day_or_week_trigger: true
  no_raw_count_trigger: true

Required observable content

Prior state memory

A satisfying implementation must preserve the source row. The lens fails if the queried state is reconstructed from prose or guessed from a branch label.

The source row must record at least:

  • source family;
  • source object or explicit absence;
  • prior state value;
  • owning or excluded claimant if any;
  • future route or reader requesting the answer.

Concrete oracle surfaces

At least two oracle surfaces must be visible before resolution. Accepted surfaces:

  • archive oracle;
  • public receipt oracle;
  • cutroom checksum oracle;
  • sponsor readback oracle;
  • fan oxygen oracle;
  • stability table oracle;
  • equivalent in-world docket, hearing, ledger, checksum, permit, or event.

An oracle cannot be a tooltip, narrator aside, dashboard field, or generic debug state.

Assignable crossread action

The action may be a scoped variant of an existing rite, but it must record:

  • queried prior state;
  • selected oracle;
  • excluded or contested surface;
  • handler or explicit absence;
  • proof bridge, cost object, or explicit absence;
  • future route effect.

Default pressure

If the player refuses, hides, underfills, or lacks an oracle, an event or durable state must name the loudest answering surface and the harmed surface.

Valid default outcomes include sponsor capture, archive block, fan volatility, cutroom mask, stability delay, false owner, hostile reader, blocked route, or recovery-only route.

Branch divergence oracle

Archive answer branch

Expected evidence:

  • selected oracle is archive, lawful, inspector, probate, or white-glove facing;
  • custody clarity, admissibility, archive signature legitimacy, or false-owner pressure improves;
  • inspection heat, archive debt, public distrust, or lawful-only routing worsens;
  • future effect is scoped to lawful use or requires public addendum.

Public receipt branch

Expected evidence:

  • selected oracle is public, historian, fan witness, delegate, memorial air, or receipt facing;
  • public legitimacy, audience stability, anti-capture pressure, or fan balance improves;
  • sponsor pressure, witness exposure, inspection heat, or fan liability worsens;
  • future effect is scoped to public use or requires lawful annex.

Cutroom checksum branch

Expected evidence:

  • selected oracle is editor, cutroom, black-box, checksum, or continuity facing;
  • continuity hazard, slot pressure, or source retaliation risk improves;
  • edit debt, source ambiguity, archive debt, public distrust, or double-reality risk worsens;
  • future effect requires checksum, annotation, or archive contest.

Expected evidence:

  • selected oracle is sponsor, contract, stop-loss, slot, or manager facing;
  • sponsor or slot pressure improves;
  • contract capture, public distrust, recovery cost, or ownership debt worsens;
  • future effect is sponsor-only, neutrality-contested, or hostile to archive/public reader.

Fan oxygen branch

Expected evidence:

  • selected oracle is fan oxygen, mutual-aid, delegate, grief ledger, queue receipt, or memorial public facing;
  • fan balance, grief stability, or public legitimacy improves;
  • fan resentment, queue retaliation, sponsor pressure, or lawful conversion cost worsens;
  • future effect opens fan route while making lawful or sponsor route costlier.

Stability table branch

Expected evidence:

  • selected oracle is stability, clearance, audience, or broadcast-legibility facing;
  • audience churn, schedule pressure, or broadcast legibility improves;
  • stability escrow debt, clearance premium, delayed contradiction, or reality drift risk worsens;
  • future effect opens broadcast route while making drift audit or crossread costlier.

Split/refusal/default branch

Expected evidence:

  • multiple answers remain visible, or no valid answer is selected;
  • one surface may become temporarily readable;
  • handler burden, reality drift, excluded-reader hostility, capture, false owner, block, or recovery cost rises;
  • future route is scoped dual-route, hostile, blocked, captured, or recovery-only.

Oracle assertions

A binding check should fail unless all assertions below are true.

  1. Primary links exist — the lens has populated observes and observed_through arrays pointing to concrete Storyteller pages.
  2. Entry is state-triggered — no fixed turn, day/week, chapter quota, raw count, dashboard state, or lens-health state opens the surface.
  3. Prior state history exists — a source row, card, route asset, event, or explicit absence is preserved before the crossread.
  4. Multiple oracle surfaces are visible — at least two in-world surfaces can answer differently.
  5. Selected oracle is concrete — the chosen answer is carried by a card, rite, event, ledger, docket, checksum, permit, or equivalent playable object.
  6. Excluded surface is visible — the answer names who is scoped, excluded, contradicted, made hostile, or made liable.
  7. Answer is consumed — the result changes a route, reader, event, counter, offer set, or route-asset state.
  8. Success has cost — any relief creates or spends a visible cost.
  9. No universal truth answer — archive, public, sponsor, fan, editor, and stability answers cannot all accept the same state for free.
  10. Default is durable — refusal, hidden conflict, or loudest-surface capture creates hostile, blocked, captured, false-owner, recovery-only, or costlier future state.
  11. Voice/memorial answers remain scoped — a memorial voice probate answer cannot become living consent or universal sponsor permission.
  12. Stability answer is not truth — keeping broadcast legible cannot erase proof, custody, public memory, or drift pressure.
  13. Replay provenance exists — evidence includes session id, seed, prior state, candidate oracles, selected oracle, excluded surface, future effect, event/default state, and counter deltas.

Progress metric

custodyOracleCrossreadProgress = 0..8:

  • 0: no prior custody/route-asset state is preserved.
  • 1: prior state exists and a future route requires a readout.
  • 2: at least two oracle surfaces are visible.
  • 3: a concrete docket/card/ledger or equivalent crossread row is active.
  • 4: a rite or equivalent action lets the player select, split, or refuse an oracle.
  • 5: the selected oracle records excluded or contested surface plus cost.
  • 6: at least two successful oracle branches produce different counter deltas and future effects.
  • 7: refusal/default/loudest-surface capture produces durable hostile, blocked, captured, false-owner, recovery-only, or costlier state.
  • 8: replay/session evidence proves at least three oracle families, including one success and one default or split outcome.

Evidence shape

lens_id: storyteller.lens.custody_oracle_crossread.v1
session_id: lens-storyteller-lens-custody-oracle-crossread-v1-<timestamp>
seed: <deterministic-seed>
state_context:
  prior_state_family: <family>
  prior_state_id: <stable id>
  prior_state_value: <state>
  future_route_or_reader: <route or reader>
  available_oracles:
    - archive | public_receipt | cutroom_checksum | sponsor_readback | fan_oxygen | stability_table | equivalent
    - second_oracle
active_objects:
  source_docket_or_ledger: <card/event/route-asset/explicit_absence>
  crossread_action: <rite or equivalent>
offered_choices:
  - ask_archive
  - ask_public_receipt
  - ask_cutroom_checksum
  - ask_sponsor_readback
  - ask_fan_oxygen
  - ask_stability_table
  - split_answer
  - refuse_or_default
branch_runs:
  archive_answer:
    outcome: archive_answer_scoped
    counter_deltas:
      relief: [custody_clarity_up]
      cost: [inspection_heat_up]
      future: [public_addendum_required]
  public_answer:
    outcome: public_answer_scoped
    counter_deltas:
      relief: [public_receipt_legitimacy_up]
      cost: [sponsor_stop_loss_pressure_up]
      future: [lawful_annex_required]
  sponsor_answer:
    outcome: sponsor_answer_scoped
    counter_deltas:
      relief: [slot_pressure_down]
      cost: [contract_capture_up]
      future: [neutrality_contested]
  default_answer:
    outcome: false_answer_hardened | oracle_refused | captured_answer | recovery_only
    event_seen_or_armed: availability_reader_collision_default | iris_voice_probate_default | clearance_desk_repricing | reality_drift_intervention | equivalent
    loudest_oracle: <oracle>
    harmed_or_excluded_surface: <surface>
assertions:
  - entry_is_state_triggered
  - prior_state_history_preserved
  - multiple_oracles_visible
  - selected_oracle_concrete
  - selected_oracle_scopes_not_erases
  - excluded_surface_visible
  - answer_consumed_by_future_route
  - success_has_cost
  - default_is_durable
  - no_fixed_turn_trigger

Non-goals

  • Not a UI debug view.
  • Not a lore oracle.
  • Not a universal truth table.
  • Not raw content-count satisfaction.
  • Not a fixed-turn package.
  • Not governance or methodology.
  • Not valid if the answer is not consumed by route access, reader state, event pressure, counter delta, or route-asset state.

Runtime evidence added 2026-07-03

The executable surface is now also backed by a dedicated crossread docket, hearing, and default event:

Required replay exports:

  • lens/replays/custody-oracle-crossread.archive.replay.json
    • session: lens-storyteller-lens-custody-oracle-crossread-v1-20260703t0955z-archive2
    • seed: custody-oracle-crossread-archive-20260703
    • branch: archive_answer / choice 0
  • lens/replays/custody-oracle-crossread.default.replay.json
    • session: lens-storyteller-lens-custody-oracle-crossread-v1-20260703t0955z-default
    • seed: custody-oracle-crossread-default-20260703
    • branch: refuse_or_default / choice 6

Both come from durable sessions whose ids begin with lens-storyteller-lens-custody-oracle-crossread-v1-.