Fan Oxygen Ledger Cell / 粉丝氧气账本群线

Fan Oxygen Ledger Cell is a faction-pressure storyline for the moment when fan oxygen, public receipt, refund, witness, or terminal scar state becomes something a future route wants to cite as public support.

The player is not asked whether fans are angry. The player is asked which fan/public ledger cell has standing, which public it represents, which public it omits, what demand it makes, and whether future play may rely on that demand as consent, public proof, faction commitment, or scarred ending legitimacy.

Gap this storyline fills

Storyteller already has strong oxygen and public-pressure lines:

The missing slice is the faction layer that ties these together. Without it, a route can cite fans accepted, public support, oxygen consent, or public scar legitimacy while hiding which ledger cell accepted and which fan public was omitted.

Primary playable question

When future play needs fan support, does the producer honor the ledger publicly, appoint a witness mandate, split the delegate, collar the refund, settle with a sponsor public copy, suppress the cell, or let a false representative become the public face?

Every answer must change faction state and future route or ending eligibility.

Bound content pack

This storyline binds:

State-triggered entry

Open this storyline only when all required state is visible:

entry_state_required:
  trigger_kind: state_pressure
  fan_oxygen_or_public_receipt_row_present: true
  future_route_or_ending_attempts_to_cite_fan_support: true
  represented_public_or_explicit_absence_visible: true
  omitted_public_or_explicit_absence_visible: true
  faction_demand_or_explicit_absence_visible: true
  proof_or_explicit_absence_visible: true
  delegate_state_or_explicit_absence_visible: true
  sponsor_capture_risk_or_explicit_absence_visible: true
  player_can_honor_witness_split_collar_settle_suppress_or_default: true
  no_fixed_turn_trigger: true
  no_fixed_day_or_week_trigger: true
  no_raw_fan_count_trigger: true
  no_raw_oxygen_count_trigger: true
  no_dashboard_or_lens_health_trigger: true

Valid entry is a live route, rite, public statement, sponsor settlement, oxygen relief, refund collar, witness mandate, faction promise, or terminal hearing trying to use fan support. It is not a general crowd mood pulse.

Storyline spine

Beat 1 — Fan support becomes authority

A future route, correction, public statement, sponsor package, oxygen relief, settlement, public recap, or ending family asks to rely on fan support.

The game names the source row: oxygen debt, fan delegate mandate, witness mandate, refund collar, public contrition receipt, faction commitment, sponsor oxygen active-hand card, ending scar ledger row, or equivalent.

Beat 2 — The ledger cell enters with represented and omitted publics

The source row creates or updates 粉丝委任账本 as a ledger-cell row.

The row must name:

  • represented public;
  • omitted public or explicit absence;
  • demand;
  • proof or explicit absence;
  • delegate state or explicit absence;
  • sponsor capture risk or explicit absence;
  • future route or ending that wants to read the cell.

Beat 3 — The producer chooses a posture

Run 粉丝委任听证 or an equivalent hearing.

Valid postures:

  • honor ledger publicly;
  • appoint witness mandate;
  • split delegate mandate;
  • collar refund;
  • sponsor settlement with public copy;
  • suppress or misrepresent;
  • let false representative default.

Beat 4 — The cell becomes route state

The selected posture changes the cell and the future route:

  • cooperative receipt cell;
  • refund mandate cell;
  • public audit cell;
  • delegate split cell;
  • witness protection cell;
  • oxygen strike cell;
  • hostile relay cell;
  • private clean veto cell;
  • false representative captured;
  • recovery-only public.

A route may become public-only, sponsor-only, accepted with public copy, witness-required, refund-gated, public-audit-required, costlier, blocked, hostile, or recovery-only.

Beat 5 — Future systems consume the cell

The storyline is complete only when at least one future reader consumes the ledger cell state:

Branch map

BranchReliefCostFuture effect
Honor ledger publiclypublic receipt and fan cooperation improvesponsor pressure, inspection heat, witness exposurepublic-only, public-audit-required, public-scar eligible
Appoint witness mandateoxygen concession or fan support becomes legiblewitness protection debt, delay, lawful/sponsor discomfortwitness-required or accepted-with-witness
Split delegate mandatefalse representative risk fallscontradiction pressure, handler burden, faction commitment debtsplit-required or delegate-recheck-required
Collar refundimmediate oxygen anger dropsrefund trigger, oxygen reserve strain, sponsor costrefund-gated, costlier, or recovery hook
Sponsor settlement with public copyslot/funding/oxygen bridge pressure dropscontract capture, public distrust, private-clean veto pressuresponsor-only unless public copy accepted
Suppress or misrepresentcurrent route becomes cleaner or fasterhostile relay, oxygen strike, false representative capturehostile, blocked, sponsor-only, public-only, recovery-only
False representative defaultno clean relief requiredomitted public hardens through captured representativeprivate clean challenged, public scar demanded, recovery-only

Counter contract

Every branch must mutate at least three durable surfaces:

  • one relief surface;
  • one cost surface;
  • one future route, public statement, oxygen relief, sponsor package, faction promise, or ending surface.

Primary surfaces:

  • fan_oxygen_ledger_standing
  • represented_public_legibility
  • omitted_public_pressure
  • public_receipt_legitimacy
  • public_receipt_distrust
  • fan_oxygen_resentment
  • oxygen_refund_trigger
  • oxygen_strike_pressure
  • witness_protection_debt
  • delegate_split_pressure
  • false_representative_capture
  • sponsor_stop_loss_pressure
  • contract_capture
  • inspection_heat
  • public_audit_required
  • private_clean_veto_pressure
  • ending_public_legitimacy
  • recovery_route_cost

Missability and recovery

This storyline is missed when fan support is cited as a clean boolean, when a sponsor-safe representative speaks without mandate, when public receipt is replaced by clean recap language, when an oxygen concession becomes consent without witness or refund collar, or when terminal ending eligibility seats fan support without represented and omitted publics.

Recovery requires visible scar:

  • reopen mandate;
  • publish public receipt;
  • split delegate;
  • collar refund;
  • protect witness;
  • attach anti-capture language;
  • make route public-only, witness-required, sponsor-only with public copy, blocked, costlier, or recovery-only;
  • allow 公开伤痕裁决 to block 私有洁净收编.

Replay/session evidence shape

storyline_id: storyteller.storyline.fan_oxygen_ledger_cell.v1
session_id: lens-fan-oxygen-ledger-cell-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
  trigger_kind: state_pressure
  fan_oxygen_or_public_receipt_row_present: true
  future_route_or_ending_attempts_to_cite_fan_support: true
  represented_public_or_explicit_absence_visible: true
  omitted_public_or_explicit_absence_visible: true
  no_fixed_turn_trigger: true
ledger_cell:
  faction: storyteller.faction.fan_oxygen_ledger_cell.v1
  mechanism: storyteller.mechanic.fan_oxygen_ledger_cell.v1
  row: storyteller.card.fan_delegate_mandate_ledger.v1
  source_surface: <surface>
  represented_public: <public or explicit_absence>
  omitted_public_or_absence: <public or explicit_absence>
  demand: <demand>
  proof_or_absence: <proof>
  delegate_state_or_absence: <state>
triage:
  rite: storyteller.rite.fan_delegate_mandate_hearing.v1
  selected_posture: honor_publicly | appoint_witness | split_delegate | collar_refund | sponsor_settlement_public_copy | suppress_or_misrepresent | false_representative_default
outcome:
  cell_state_after: <state>
  represented_public_state_after: <state>
  omitted_public_state_after: <state>
  future_route_or_ending_effect: <effect>
  emitted_event: storyteller.event.fan_mandate_false_representative_default.v1 | none
  counter_deltas:
    relief: []
    cost: []
    future: []
downstream_read:
  reader: public_contrition | oxygen_haircut | oxygen_clawback | oxygen_rebate | faction_commitment | ending_scar | route_asset | equivalent
  consumed_cell_state: <state>
  route_or_ending_effect_after_read: <effect>
assertions:
  - fan_public_is_not_faceless_counter
  - represented_and_omitted_public_visible
  - demand_proof_delegate_state_visible
  - branches_diverge
  - default_is_durable
  - future_reader_consumes_cell_state
  - no_fixed_turn_day_week_raw_count_dashboard_or_lens_health_trigger

Non-goals

  • Not a generic fan club scene.
  • Not an audience-size threshold.
  • Not a social feed mechanic.
  • Not a governance page.
  • Not a replacement for oxygen haircut, clawback, rebate, public contrition, delegate mandate, faction commitment, or ending scar ledger.
  • Not valid unless fan support changes represented public, omitted public, faction demand, proof, branch cost, and future route or ending state.