Default Recovery Triage / 默认恢复分诊机制

This mechanism converts one already-durable Storyteller default scar into a reader-scoped recovery result. It cannot recreate or re-decide the Audience grievance merge. Its authority starts at storyteller.event.overmerged_grievance_default.v1#broadcast_reality_false_closure and ends after the recovery state and future reader effect are recorded.

Executable input contract

fixed_input:
  row_id: default_recovery.audience_overmerge.09
  source_incident: audience.merge.blackout.09
  source_default: storyteller.event.overmerged_grievance_default.v1#broadcast_reality_false_closure
  source_surface: audience_grievance_merge
  default_narrator: blackout_system
  source_state: recovery_only
  harmed_party: caption_user
  preserved_relief: broadcast_stability_relief
  paid_cost: [broadcast_reality_contradiction:+2, future_recovery_cost:+1]
  later_reader: public_contrition
  requested_action: convert_to_recovery_route
  recoverability_class: public_only
  receipt_bridge: storyteller.card.overmerged_grievance_counterreceipt.v1
  handler_reference: storyteller.card.audience_grievance_merge_handler.v1
  protected_boundary: caption_log_09

The stable playable identity is audience.merge.blackout.09 plus the event terminal. The timestamped session is evidence provenance only, never an in-world key, trigger, slot value, or playable condition. The mechanism is invalid if any playable field is replaced by generic debt, mood, urgency, or an inferred clean repair.

Exact assignment contract

The hearing requires all eleven cards below to be assigned from hand with exact slot/card identity:

SlotExact accepted card
docketstoryteller.card.default_recovery_docket.v1
source_defaultstoryteller.card.default_recovery_source_default.v1
source_surfacestoryteller.card.default_recovery_source_surface.v1
harmed_partystoryteller.card.default_recovery_harmed_party.v1
preserved_reliefstoryteller.card.default_recovery_preserved_relief.v1
paid_coststoryteller.card.default_recovery_paid_cost.v1
later_readerstoryteller.card.default_recovery_later_reader.v1
recoverability_classstoryteller.card.default_recovery_recoverability_class.v1
receipt_bridgestoryteller.card.default_recovery_receipt_bridge.v1
handlerstoryteller.card.default_recovery_handler.v1
boundarystoryteller.card.default_recovery_boundary.v1

storyteller.card.default_recovery_collapse_counterreceipt.v1 is not a starter assignment. It is gained only from a resolved collapse terminal.

Resolution contract

The seven ordered choices are:

choices:
  0: reopen_with_scar
  1: substitute_carrier
  2: convert_public_receipt
  3: convert_lawful_review
  4: sponsor_management_buyout
  5: quarantine_or_memorialize_close
  6: false_recovery_or_no_answer

Choices 0..5 resolve without arming collapse. Only choice 6 arms the exact four-flag gate: default_recovery.default_pending, storyteller.event.default_recovery_collapse.v1.armed, future_route.default_recovery_collapse_pending, and broadcast_reality.false_clean_recovery_claimed. Invalid, incomplete, substituted, off-hand, choiceless, or repeated hearing attempts fail without arming any of them.

The event has exactly five exclusive terminals: hidden_source_default, harmed_party_omitted, substitute_false_original, reader_scope_breach, and quarantine_false_repair. Every terminal clears pending state, preserves the source scar, changes future play, and grants the collapse counterreceipt.

Reader-scope rules

  • public_only is not lawful authority.
  • A substitute is not the original source.
  • Sponsor capture remains discoverable.
  • Quarantine is not repair.
  • Preserved relief and already-paid cost are not recomputed.
  • caption_log_09 remains a protected boundary, not universal proof.

Authority boundary

This mechanism decides only the recovery posture for default_recovery.audience_overmerge.09. It does not merge grievances, choose the original default terminal, change the original cohort/harm/proof rows, grant consent, grant universal proof or reader authority, resolve public contrition, or erase the Audience merge scar.

Evidence

The source packet is game-content/storyteller/cards/default-recovery-docket.json5, game-content/storyteller/rites/default-recovery-hearing.json5, and game-content/storyteller/events/default-recovery-collapse.json5. The focused proof is lens/storyteller-default-recovery-triage.runtime.test.ts; the constructive and collapse proofs are the two replay files named in front matter; evaluator coverage is scripts/evaluate_lenses.mjs#storyteller.lens.default_recovery_triage.v1.