Mara Fen Custodian Pressure Storyline / Mara Fen 保管压力线

Bound character: Mara Fen.

Mara Fen Custodian Pressure is the character storyline that makes Mara more than the archive contact attached to Iris Vale’s memorial voice pack. She is the person at the edge of the ledger: the one who can clarify a chain, refuse a false use, be protected into route asset status, be captured into sponsor silence, or return later as a hostile witness.

Gap diagnosis

The surrounding Iris mesh is already strong: memorial voice probate, probate residue, afteruse citation, and custodian counterclaim all create rows that later readers can cite. The weak seam was Mara herself. If the corpus can require Mara’s acknowledgement but cannot change Mara’s state, the game has a hidden boolean instead of an RPG character.

This storyline closes that seam. Every Mara answer must show source voice row, Mara state, support need, future reader, answer posture, and branch cost.

Primary playable question

When an Iris voice custody row needs Mara’s answer, does the producer protect her, recruit her, expose her, narrow her into private affidavit, suppress her for sponsor relief, mask her through edit custody, or record absence/default?

A valid implementation must show that the selected answer changes future reader acceptance. A branch that leaves archive, sponsor, public, editor, route asset, and broadcast-reality readers all satisfied is invalid.

Bound content pack

State-triggered entry

Open this storyline only when all are true:

entry_state:
  trigger_kind: state_pressure
  source_iris_voice_row_present: true
  source_voice_row_scope_visible: true
  requested_use_or_breach_present: true
  mara_named_as_custodian_or_explicit_absence: true
  future_reader_or_route_asset_present: true
  support_need_or_absence_visible: true
  player_can_assign_protect_suppress_recruit_or_default: true
  no_fixed_turn_trigger: true
  no_fixed_day_or_week_trigger: true
  no_raw_count_trigger: true

This storyline must not open from chapter quota, generic schedule trouble, raw content count, or a fixed time interval. It opens because a custody row and a future reader now need Mara’s answer.

Storyline spine

Beat 1 — The archive contact becomes a person

A source row names Mara or records her explicit absence. The player receives Mara Fen 保管分岔案卷. The docket names the Iris voice row, requested use, Mara state before, chain proof or absence, support need or absence, and future reader.

Beat 2 — The support cost appears before the answer

Mara’s answer cannot be consumed before the cost surface is visible. Support can be safe room, payroll, escort, archive counter, editor mask, public shelter, sponsor release, or explicit absence.

The player must see whether the game is asking for a protected custodian, public witness, private affiant, sponsor silence, editor checksum, route asset keeper, or default.

Beat 3 — The player chooses an answer posture

The player opens Mara Fen 保管面谈. The rite assigns answer posture and accepted cost:

  • protect custodian;
  • recruit chain keeper;
  • public chain witness;
  • private affidavit;
  • suppress for sponsor;
  • editor masked answer;
  • record absence or default.

Beat 4 — Mara and the row diverge together

The result must mutate both Mara’s state and the source voice row. For example, public witness improves public legitimacy but does not become lawful proof without bridge; private affidavit improves lawful route but can increase public distrust; sponsor suppression lowers pressure but arms capture/default; editor mask protects source but requires checksum.

Beat 5 — A future reader consumes the scar

The storyline is complete only when a future reader or route asset uses the result. Valid effects include accepted_with_custodian, lawful_only, public_only, sponsor_only, checksum_required, payroll_required, split_record, blocked, hostile, or recovery_only.

Beat 6 — Hidden Mara becomes hostile law

If Mara is hidden, suppressed without release scar, exposed without support, filed as universal permission, or replaced by blank absence, Mara Fen 敌对证人默认 fires or is armed.

Branch map

BranchReliefCost / scarMara state afterFuture reader effect
Protect custodiancustody clarity, archive legitimacy, voice integritypayroll, escort, inspection heat, witness exposureprotected_custodianaccepted with custodian cost
Recruit chain keeperfuture chain reliability, route asset stabilityhandler burden, sponsor pressure, support dutyroute_asset_chain_keeperfuture rows can use Mara if support is paid
Public chain witnesspublic receipt, anti-capture pressurereprisal, sponsor heat, public contradictionpublic_chain_witnesspublic-only until lawful bridge
Private affidavitlawful admissibility, legal-body risk downpublic distrust, bureau debt, fan resentmentprivate_affiantlawful-only / public addendum required
Sponsor suppressionstop-loss, slot pressure, budget reliefcontract capture, Mara hostility, false-owner risksponsor_captured or suppressedsponsor-only / default armed
Editor masked answersource safety, continuity, checksum clarityedit debt, source ambiguity, public blockageeditor_masked_custodianchecksum required
Absence/defaultno clean relief requiredarchive debt, hostile witness, recovery scarhostile, missed, frightened, or explicit absenceblocked, hostile, captured, or recovery-only

Recruitment, suppression, missability

Recruitment

Mara becomes route_asset.mara_fen_custody_witness when the player assigns a source row, future reader, support need, and a cost-bearing branch such as protect custodian, recruit chain keeper, private affidavit with boundary, or split support through editor mask.

Recruitment does not create free permission. It creates a future keeper who can be asked again if support cost is paid.

Suppression

Suppressing Mara is a valid route-pressure answer only when it leaves sponsor capture, release record, public distrust, hostile witness risk, or future recovery cost. It is invalid if it silently converts her answer into clean consent.

Missability

Mara is missed when implementation:

  • consumes an Iris voice row without Mara state or explicit absence;
  • records only mara_present: true;
  • hides support need;
  • exposes her without payroll, shelter, escort, or public support;
  • treats public witness as lawful chain;
  • treats private affidavit as public truth;
  • treats editor mask as raw proof;
  • treats sponsor silence as consent;
  • leaves all future readers unchanged;
  • opens from fixed turn count, day/week interval, chapter quota, or raw count.

Counter contract

Every resolution must mutate at least three counters or durable states: one relief, one cost, and one future reader or route effect.

Core counters:

  • mara_fen_state
  • mara_trust
  • mara_fear
  • mara_hostility
  • custody_chain_integrity
  • custody_clarity
  • voice_integrity
  • archive_signature_legitimacy
  • archive_debt
  • public_receipt_legitimacy
  • public_receipt_distrust
  • witness_exposure
  • witness_payroll_due
  • inspection_heat
  • sponsor_stop_loss_pressure
  • contract_capture
  • edit_debt
  • source_ambiguity
  • false_owner_hardening_risk
  • route_asset_pressure
  • future_recovery_cost

Replay evidence expectation

storyline_id: storyteller.storyline.character.mara-fen.v1
session_id: lens-mara-fen-custody-branch-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
  trigger_kind: state_pressure
  source_iris_voice_row_present: true
  source_voice_row_scope_visible: true
  mara_named_as_custodian_or_explicit_absence: true
  future_reader_or_route_asset_present: true
  no_fixed_turn_trigger: true
offered:
  mechanic: storyteller.mechanic.mara_fen_custodian_pressure.v1
  card: storyteller.card.mara_fen_custody_branch_docket.v1
  rite: storyteller.rite.mara_fen_custody_interview.v1
branch_runs:
  valid_branch:
    selected_branch: protect_custodian | recruit_chain_keeper | public_chain_witness | private_affidavit | suppress_for_sponsor | editor_masked_answer
    source_voice_row_id: <stable id>
    mara_state_before: <state>
    custody_chain_evidence_or_absence: <proof or explicit_absence>
    support_need_or_absence: <support or explicit_absence>
    future_reader: <reader>
    accepted_cost_or_absence: <cost or explicit_absence>
    mara_state_after: <state>
    future_reader_effect: <effect>
    counter_deltas:
      relief: []
      cost: []
      future: []
  default_branch:
    event_seen_or_armed: storyteller.event.mara_fen_hostile_witness_default.v1
    missing_or_misfiled_surface: <surface>
    harmed_state_after: <state>
    future_reader_effect: <effect>
assertions:
  - source_voice_row_visible
  - mara_state_visible_or_explicit_absence
  - support_need_visible_or_explicit_absence
  - branch_changes_future_reader_acceptance
  - no_universal_permission
  - sponsor_suppression_not_clean_consent
  - public_witness_not_lawful_chain_without_bridge
  - private_affidavit_not_public_truth
  - editor_mask_not_raw_proof
  - default_is_durable
  - no_fixed_turn_trigger

Integration notes

Non-goals

  • Not a fresh Iris recruitment route.
  • Not a generic loyalty conversation.
  • Not a clean consent reset.
  • Not a universal archive key.
  • Not a fixed-turn encounter.
  • Not valid unless future reader acceptance changes because of Mara’s state.