Answerability Seat Assignment / 应责席指派线

Answerability Seat Assignment is a pressure-system storyline for the moment after a prior route success still lacks a body that future play can pursue.

The current mesh already handles proof burden, public contrition, broadcast legality, management compression, operator contradiction, protected witness payroll, and route-asset custody. The remaining seam is answerability after those systems succeed: a route can have true proof, admissible legality, public apology, clean-enough metrics, or scoped operator rows and still have nobody seated as the target of the next counterclaim.

This storyline makes the accountable seat a playable surface. The player must choose who sits, who refuses, who sends a proxy, who is protected, who is scapegoated, and whether the empty chair itself becomes a public fact.

Primary playable question

After a proof, statement, legal conversion, operator conclusion, management report, or route-asset rescue becomes usable, who remains answerable for the next reader?

The answer must change future play. A producer seat, artist seat, sponsor proxy, inspector body, worker seat, public delegate, split seat, and empty seat cannot all satisfy the same future route.

Bound content pack

This storyline binds:

State-triggered entry

Open only from live state pressure:

entry_state:
  trigger_kind: state_pressure
  source_resolution_present: true
  source_resolution_has_future_reader: true
  unresolved_harm_or_obligation_present: true
  proposed_or_missing_answerable_body_visible: true
  future_route_or_reader_can_change: true
  at_least_one_candidate_or_explicit_absence: true
  no_fixed_turn_trigger: true
  no_fixed_day_or_week_trigger: true
  no_raw_count_trigger: true
  no_dashboard_or_lens_health_trigger: true

Valid source resolutions include:

  • public contrition that named harm but not who remains reachable;
  • proof-burden reassignment that made proof maintainable but not answerability targetable;
  • broadcast legality conversion that made a route lawful, public-only, sponsor-safe, or recovery-only without seating a body;
  • operator conclave that preserved staff contradiction but left the future counterclaim target unclear;
  • management compression that protected one metric while hiding who answers for the scar;
  • route-asset rescue that unblocked a branch while displacing the next harmed reader.

Invalid entries include fixed numbered turn, day interval, chapter quota, raw content count, dashboard status, lens-health state, generic aftermath phase, or reputation threshold without a future reader.

Storyline spine

Beat 1 — Success leaves an empty chair

A prior resolution succeeded enough that a future reader wants to consume it. The player can no longer hide behind the proof, apology, metric, legal seal, or route asset. The game asks who sits in the answerability chair.

The chair may be literal, legal, public, editorial, sponsor-facing, worker-facing, or route-facing. It must still be targetable by future play.

Beat 2 — The docket names the future reader

Create or update 应责席案卷. The docket names source resolution, unresolved harm, future reader, candidate seats, proposed holder, proxy or absence, proof anchor, refusal/coercion state, blocked future choices, and default risk.

A docket is invalid if it merely says someone should answer without future route effect.

Beat 3 — 阮停 records the chair

Empty-Seat Usher appears as the low-rank handler who can preserve the chair row. She can become encountered, recruited, missed, or hostile depending on whether the player protects the row, hides absence, uses a proxy, or scapegoats a worker.

Her role is not authority. Her role is replay evidence.

Beat 4 — The player assigns or preserves answerability

Run 应责席指派. Branch families:

  1. protect_recruit_usher;
  2. seat_producer_management;
  3. seat_artist_with_boundary;
  4. accept_sponsor_proxy_with_receipt;
  5. seat_inspector_lawful_body;
  6. guard_worker_from_scapegoat;
  7. publicize_absence;
  8. split_answerability;
  9. preserve_empty_seat;
  10. suppress_or_default.

Beat 5 — Future route acceptance changes

A valid branch changes at least one future route or reader:

  • producer body required before next clean report;
  • artist route unlocked with scar;
  • sponsor-only route or public unwind required;
  • lawful-only or archive-only acceptance;
  • worker protection required before reuse;
  • public audit required;
  • reader-specific acceptance after split;
  • correction or recovery required before clean route;
  • hostile, blocked, costlier, sponsor-only, lawful-only, or recovery-only default.

Beat 6 — Explicit suppression arms the empty-seat default

After all thirteen exact cards are assigned, choice suppress_or_default alone arms 应责空席默认. Missing input, passive omission, and two-day expiry leave the row unresolved and do not arm the event.

The default must name default filer, false clean claim, beneficiary, harmed reader, state after, future effect, and counter deltas.

Branch map

BranchImmediate reliefCost/scarFuture effect
Protect/recruit usheranswerability clarityworker exposure, counterclaim costbounded 阮停 counterclaim route asset
Producer/management seatroute continues; target clearproducer license pressure, management heatproducer body required before next clean report
Artist/harmed performer seattrust or public legitimacy improvesexposure, boundary risk, sponsor pressureartist route with scar; sponsor route costlier
Sponsor/proxy seatslot or funding pressure improvescontract capture, public distrustsponsor-only; public unwind required
Inspector/lawful body seatlawful appeal or custody improvesinspection heat, bureau debtlawful-only or archive-only
Worker/operator seatsource row legibleworker exposure, protection payrollworker protection required before reuse
Public delegate seatpublic audit unlocksqueue capture, oxygen liabilitypublic audit required
Split seatincompatible readers proceedsplit debt, delay, contradiction pressurereader-specific acceptance
Empty seat preservedfalse clean blockedpublic contradiction, correction costcorrection or recovery required
Defaultfastest clean claim files firstfalse clean, capture, scapegoat, hostilityblocked/costlier/sponsor-only/lawful-only/recovery-only

Character and faction hooks

  • Empty-Seat Usher records the visible empty chair, proxy, refusal, or worker scapegoat and can become recruited, missed, or hostile.
  • Shen Luo can seat management or sponsor proxy, but contract capture and public distrust must remain visible.
  • Han Yanshuang can narrow answerability to lawful body, but public and sponsor readers remain limited.
  • Baiya can make the seat legible in edit or checksum, but source ambiguity or edit debt remains.
  • Yu Lan can publish the empty chair or public delegate row, but exposure, contradiction, and sponsor retaliation rise.

Counter and state contract

Every branch must mutate at least three surfaces:

counter_deltas_required:
  relief: at_least_one
  cost: at_least_one
  future_route_or_reader_effect: at_least_one

Primary surfaces:

  • answerability_clarity
  • empty_seat_risk
  • false_answerability_clean
  • producer_license_pressure
  • management_pressure
  • public_receipt_legitimacy
  • public_receipt_distrust
  • sponsor_stop_loss_pressure
  • contract_capture
  • inspection_heat
  • bureau_favor_debt
  • artist_trust
  • artist_boundary_risk
  • worker_exposure
  • worker_scapegoat_risk
  • protected_witness_payroll_due
  • route_asset_integrity
  • seat_split_debt
  • future_counterclaim_cost
  • recovery_only_pressure

Missability and recovery

This storyline is missed when a future route consumes a prior success without an answerability docket.

Missed/default states include:

  • false_answerability_clean;
  • sponsor_proxy_capture;
  • lawful_only_body_default;
  • worker_scapegoat;
  • empty_seat_public_scar;
  • hostile_absent_claimant;
  • recovery_only_answerability;
  • ruan_ting_missed.

Recovery is allowed only with scar:

  • reopen the docket;
  • seat a body with cost;
  • publish the empty chair;
  • split public/lawful/sponsor/worker readers;
  • protect the worker or usher;
  • unwind sponsor proxy;
  • attach public delegate audit;
  • accept blocked, costlier, hostile, sponsor-only, lawful-only, or recovery-only route use.

Replay evidence expectation

storyline_id: storyteller.storyline.answerability_seat_assignment.v1
session_id: lens-answerability-seat-assignment-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
  trigger_kind: state_pressure
  source_resolution_id: <id>
  source_resolution_present: true
  source_resolution_has_future_reader: true
  unresolved_harm_or_obligation_present: true
  proposed_or_missing_answerable_body_visible: true
  future_route_or_reader_can_change: true
  no_fixed_turn_trigger: true
source_resolution:
  source_surface: public_contrition | proof_burden | management_metric | broadcast_legality | operator_conclave | route_asset | equivalent
  relief_or_success_recorded: <state>
  leftover_obligation: <obligation>
docket:
  card: storyteller.card.answerability_seat_docket.v1
  candidate_seats: []
  proposed_seat_holder: <holder_or_empty>
  proxy_or_absence: <proxy_or_absence>
  proof_anchor_or_absence: <anchor_or_absence>
  blocked_or_costlier_future_choices: []
offered:
  rite: storyteller.rite.answerability_seat_assignment.v1
  handler_or_absence: ruan_ting | shen_luo | han_yanshuang | baiya | yu_lan | production | public_witness | inspector | sponsor | none
branch_result:
  selected_posture: producer_seat | artist_seat | sponsor_proxy | inspector_body | worker_seat | public_delegate | split_seat | empty_seat_preserved | default
  seat_state_after: <state>
  ruan_ting_state_after: not_present | encountered | recruited_empty_seat_usher | missed | hostile_empty_seat_witness
  event_seen_or_armed: storyteller.event.empty_answerability_seat_default.v1 | explicit_absence
  future_reader_or_route_effect: <effect>
  counter_deltas:
    relief: []
    cost: []
    future: []
assertions:
  - entry_is_state_triggered
  - source_resolution_and_future_reader_named
  - answerable_body_or_explicit_empty_seat_visible
  - docket_and_rite_slots_are_assignable
  - branch_outcomes_diverge
  - ruan_ting_can_be_recruited_missed_or_hostile
  - every_success_has_relief_cost_and_future_effect
  - empty_seat_default_mutates_future_play
  - no_universal_clean_proxy
  - no_fixed_turn_day_week_raw_count_dashboard_or_lens_health_trigger

Runtime-backed content packet

The Storyteller runtime implements this line in three canonical files:

  • game-content/storyteller/cards/answerability-seat-assignment-cards.json5: thirteen exact starter assignments plus one default counterreceipt;
  • game-content/storyteller/rites/answerability-seat-assignment.json5: thirteen required slots and ten ordered branches;
  • game-content/storyteller/events/empty-answerability-seat-default.json5: five first-filer terminals.

The currently executable row is deliberately narrow: public_contrition.receipt.17 to public_counterclaim, with an empty proposed seat, explicit candidate absence, sponsor_proxy_17, public_receipt_17, harmed reader worker_protection, and accepted cost handler_burden. Broader source/reader enums above remain extension design, not replay-proven rows.

The constructive replay takes choice 0 and recruits 阮停. The destructive replay takes choice 9, then default option 3, producing a worker-scapegoat scar and hostile witness. Both are lens-scoped, integrity-backed Game CLI artifacts under lens/replays/ruan-ting-empty-seat-usher.*.replay.json; the focused test reexecutes both outcomes against the runtime objects.

Non-goals

  • Not a governance or design-method page.
  • Not a count-satisfaction pack.
  • Not a generic legal blame meter.
  • Not a public apology duplicate.
  • Not proof-burden reassignment.
  • Not management metric compression.
  • Not a clean proxy-selection shortcut.
  • Not fixed-turn content.