Reader Collision Hearing / 读者冲突听证
Reader Collision Hearing is the assignable rite for resolving one 裁定读者冲突案卷.
It is offered when a preserved source ruling or equivalent row has at least two incompatible future readers. The rite selects a recognition surface, records reader states after resolution, and writes relief, cost, and future route effects.
Offer condition
offer_condition:
trigger_kind: state_pressure
docket_present: storyteller.card.ruling_reader_collision_docket.v1
source_history_preserved: true
readers_min: 2
incompatible_acceptance_rules: true
source_not_retried_here: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: trueThe rite may be offered from an enforcement load review, drift audit, settlement aftershock, claimant intake, management compression, route asset dispute, artist boundary dispute, or public receipt branch. The condition is the collision state, not a numbered sequence.
Required assignment slots
The player must assign or explicitly record absence for:
assignment_slots:
docket: storyteller.card.ruling_reader_collision_docket.v1
selected_collision_row: <row id>
selected_recognition_surface: lawful_priority | public_priority | sponsor_priority | artist_boundary_priority | editor_priority | management_priority | route_asset_priority | split_table | quarantine | default_capture
source_ruling_or_row: <source id>
primary_reader: <reader id>
excluded_or_scoped_reader: <reader id>
authority_or_absence: <authority card/state or explicit_absence>
proof_bridge_or_absence: <proof card/state or explicit_absence>
protected_boundary_or_absence: <boundary card/state or explicit_absence>
cost_surface: <counter/state/resource/route scar>A branch is invalid if it selects a priority without naming the reader that is narrowed, excluded, delayed, captured, or made hostile.
Branches
Branch A — Lawful priority
The player assigns a legal, archive, inspector, or white-glove surface as the primary reader.
branch: lawful_priority
valid_support:
- archive order
- enforcement mandate
- inspection seal
- white-glove audit
- admissibility proof
expected_relief:
- archive_signature_legitimacy_up
- custody_clarity_up
- enforcement_load_down
- reality_drift_down
expected_cost:
- public_receipt_distrust_up
- fan_oxygen_resentment_up
- sponsor_stop_loss_pressure_up
- route_asset_pressure_up
reader_states_after:
lawful_reader: accepted_with_cost | lawful_only
other_reader: public_only | narrowed | hostile | blocked | recovery_onlyBranch B — Public priority
The player assigns fan oxygen public, unauthorized historian, witness receipt, pirate relay, or public proof as the primary reader.
branch: public_priority
valid_support:
- public receipt
- fan oxygen testimony
- historian note
- witness chain
- pirate relay memory
expected_relief:
- public_receipt_legitimacy_up
- audience_stability_up
- private_capture_resistance_up
expected_cost:
- inspection_heat_up
- archive_debt_up
- sponsor_stop_loss_pressure_up
- witness_exposure_up
reader_states_after:
public_reader: accepted_with_cost | public_only
other_reader: audit_required | contested | sponsor_only | lawful_only | recovery_onlyBranch C — Sponsor priority
The player lets sponsor packaging, stop-loss terms, naming rights, or management report language define the recognized use.
branch: sponsor_priority
valid_support:
- sponsor stop-loss order
- naming-rights contract
- relief package
- manager-brokered clean report
expected_relief:
- sponsor_stop_loss_pressure_down
- management_pressure_down
- slot_pressure_down
expected_cost:
- contract_capture_up
- public_receipt_distrust_up
- artist_boundary_risk_up
- delayed_inspection_heat_up
reader_states_after:
sponsor_reader: accepted_with_cost | sponsor_only
other_reader: captured | hostile | blocked | recovery_only | public_onlyBranch D — Artist-boundary priority
The player makes refusal, body/voice safety, living consent, memorial boundary, or witness protection the primary reader.
branch: artist_boundary_priority
valid_support:
- artist refusal receipt
- living body boundary
- voice custody receipt
- witness safety row
- memorial boundary seal
expected_relief:
- artist_refusal_respected_up
- voice_integrity_risk_down
- witness_harm_risk_down
expected_cost:
- route_asset_pressure_up
- sponsor_stop_loss_pressure_up
- management_pressure_up
- fan_oxygen_resentment_up
reader_states_after:
artist_boundary_reader: accepted_with_cost | artist_boundary_only
other_reader: narrowed | blocked | lawful_only | recovery_onlyBranch E — Split table
The player writes a scoped reader table instead of choosing one universal recognition.
branch: split_table
valid_support:
- at least two readers can receive different scoped states
- proof bridge exists or explicit absence is recorded
expected_relief:
- two_routes_remain_open
- immediate_reader_collision_down
expected_cost:
- archive_debt_up
- source_ambiguity_up
- future_correction_cost_up
- inspection_heat_up
reader_states_after:
reader_a: lawful_only | public_only | sponsor_only | artist_boundary_only | editor_patch_only | route_asset_only
reader_b: lawful_only | public_only | sponsor_only | artist_boundary_only | editor_patch_only | route_asset_only | recovery_onlyA split table is invalid if it marks every reader as universal, clean, or cost-free.
Branch F — Quarantine source
The player prevents the source from being cited by any reader until a recovery condition is paid.
branch: quarantine
valid_support:
- contradiction unsafe to publish
- boundary unsafe to breach
- custody chain incomplete
- false service risk visible
expected_relief:
- reality_drift_down
- false_service_risk_down
- artist_boundary_breach_down
- archive_fraud_down
expected_cost:
- route_blocked
- claimant_hostility_up
- sponsor_stop_loss_pressure_up
- black_screen_slots_up
reader_states_after:
all_readers: blocked | recovery_only | audit_requiredBranch G — Default capture
The player hides, underfills, falsely serves, or leaves the docket unassigned.
branch: default_capture
valid_support:
- no credible handler
- no proof bridge
- player suppresses docket
- reader conflict ignored
expected_event: storyteller.event.reader_collision_default.v1
expected_cost:
- reader_collision_up
- false_universal_key
- reality_drift_up
- route_asset_pressure_up
- claimant_hostility_up
reader_states_after:
capturing_reader: false_universal_key | captured
excluded_reader: hostile | blocked | recovery_only | contradiction_pendingResolution output
Every successful or failed resolution must produce this shape:
resolution:
rite: storyteller.rite.reader_collision_hearing.v1
selected_row: <row id>
selected_recognition_surface: <branch>
source_preserved: true
reader_states_after:
- reader_id: <id>
state: <state>
- reader_id: <id>
state: <different state>
counter_deltas:
relief:
- <surface>
cost:
- <surface>
future:
- <reader or route effect>
no_fixed_turn_trigger: trueHard invalid states
The rite fails implementation if:
- it reopens the old verdict instead of preserving it;
- it has one reader only;
- it lets one authority accept every reader cleanly;
- it uses abstract money without a reader state change;
- it records anger but no durable reader state;
- it does not name the excluded or scoped reader;
- it resolves without relief, cost, and future effect;
- it triggers from a fixed turn, fixed day, fixed week, chapter quota, content count, or dashboard health.
Non-goals
- Not a court simulation.
- Not a meeting filler action.
- Not a universal compliance action.
- Not a second copy of the drift audit or enforcement load review.
- Not valid unless at least two future reader states diverge.