Declined Offer Receipts / 未采纳报价回执线

Declined Offer Receipts is a pressure-system storyline for the aftermath of a meaningful management choice.

Storyteller already makes selected branches costly. The next gap is that unchosen but material offers can vanish after the selected branch resolves. A sponsor offer not chosen, an archive lien not accepted, a fan oxygen receipt not published, a schedule claim not awarded, an edit checksum not used, or a management clean-report not filed may still have a future reader. This storyline makes those declined offers durable.

Primary playable question

After the producer chooses one offer, which rejected offers receive receipts, which are deferred or countercredited, which are publicly tabled or voided, and which return later as afterbids?

The answer must change future play. A declined offer that cannot affect a later route, desk, claimant, proof object, or schedule reader does not belong in this storyline.

Why this expansion is high-value

The current green mesh is strong locally:

The fresh gap is offer-set continuity. Existing systems can show the chosen result, but a future route often needs to know what was refused. Without this storyline, a replay can fake branch consequence by proving only the selected path and deleting the opportunity cost.

Declined Offer Afteruse Receipt handles the downstream seam after this line has already preserved a declined offer: a later reader may cite the receipt as clean waiver, consent, settlement, schedule clearance, archive release, management cleanliness, route proof, or ending eligibility. The non-overlap is exact: this lane preserves the offer at selection-time; afteruse governs later reuse.

Exact runtime binding

The executable packet is game-content/storyteller/cards/declined-offer-receipt-docket.json5 (storyteller.card.declined_offer_receipt_docket.v1), game-content/storyteller/rites/declined-offer-reconciliation.json5 (storyteller.rite.declined_offer_reconciliation.v1), and game-content/storyteller/events/unanswered-offer-afterbid.json5 (storyteller.event.unanswered_offer_afterbid.v1). lens/storyteller-declined-offer-receipts.runtime.test.ts proves all six rite branches and all three event terminals; lens/replays/declined-offer-receipts.replay.json preserves the three-action harmful path.

Content pack

Mechanic

Card

  • 未采纳报价回执案卷 — stores the offer set, selected offer, declined offers, reasons, receipt statuses, future readers, and afterbid risks.

Rite

Event

  • 未答报价追喊 — fires or arms when a material declined offer is ignored, hidden, underfilled, or falsely voided.

State-triggered entry

Open this storyline when all of the following are true:

entry_state:
  trigger_kind: state_pressure
  contested_surface_present: true
  source_surface_any:
    - oxygen_claim_exchange
    - schedule_preemption
    - faction_commitment
    - management_compression
    - scar_convergence
    - route_asset_custody
    - public_contrition
    - archive_custody
    - equivalent
  offer_set_visible: true
  offered_choice_count_min: 2
  offers_have_distinct_relief_and_cost: true
  selected_offer_present: true
  declined_offer_can_mutate_future_play: true
  future_reader_or_route_present: true
  player_can_reconcile_or_record_absence: true
  no_fixed_turn_trigger: true
  no_fixed_day_or_week_trigger: true
  no_raw_count_trigger: true

The storyline never opens from fixed turn count, calendar interval, chapter quota, raw offer count, dashboard status, or lens health.

Storyline spine

Beat 1 — A contested surface receives multiple offers

A payable wound, schedule slot, route asset, public receipt, archive custody row, management report, faction commitment, or scarred stabilizer receives at least two material offers.

Each offer names its offered relief and demanded control or cost.

Examples:

  • sponsor escrow can stabilize a slot but demands private wording;
  • fan public receipt can improve legitimacy but exposes sponsor and archive pressure;
  • archive lien can protect proof but delays oxygen payment;
  • schedule award can unlock one route while making another hostile;
  • edit checksum can reduce drift while increasing edit debt;
  • management clean-report can lower sponsor pressure while hiding a scar.

Beat 2 — The player selects one offer

The selected offer resolves the immediate branch. It must still carry relief, cost, and future effect.

Beat 3 — The docket preserves material declined offers

Create or update 未采纳报价回执案卷.

The docket records only declined offers with future readers. It does not store inert menu options.

Beat 4 — The player reconciles or neglects the declined offer

Run 未采纳报价复核 for at least one material declined offer.

The player may:

  • acknowledge the offer with a receipt;
  • defer it into a dated obligation;
  • countercredit it with substitute proof or narrower route;
  • publish the offer table;
  • void it with proof;
  • ignore it and let afterbid pressure form.

Beat 5 — A future reader consumes the receipt or afterbid

The storyline is not complete until a later route, desk, claimant, proof object, public table, archive reader, schedule surface, or route asset reads the receipt state.

Valid future effects include:

  • costlier but open route;
  • deferred hearing required;
  • split reader required;
  • public table required;
  • retaliation armed;
  • hostile afterbid;
  • coalition offer;
  • schedule surcharge;
  • archive freeze;
  • proof quarantine;
  • sponsor-only, lawful-only, public-only, or recovery-only gate.

Branch map

BranchImmediate reliefCost/scarFuture route effect
Acknowledge receiptafterbid risk or ambiguity fallsclaimant pressure, handler burden, future route costcostlier but open; receipt required
Defer obligationcurrent surface remains stableschedule, sponsor, archive, fan, or bureau debt riseslater hearing or surcharge required
Countercredithostility or coalition pressure fallsroute narrowness, proof debt, ambiguity risesnarrow route or split reader required
Publish tableprivate capture falls; public legitimacy risessponsor pressure, inspection heat, witness exposurepublic/lawful table required; retaliation armed
Void with prooffalse claim or afterbid risk fallsproof spent, archive/edit debt, claimant hostilityvoid citable; hostile claim possible
Ignore afterbidno immediate reconciliation costafterbid, coalition, freeze, surcharge, or recovery-only pressure risesblocked, costlier, hostile, sponsor-only, lawful-only, public-only, or recovery-only

Character and desk hooks

  • Shen Luo can acknowledge or defer sponsor/management offers, but contract capture or handler burden rises.
  • Yu Lan can publish a table or countercredit a fan/public offer, but exposure and sponsor retaliation rise.
  • Han Yanshuang can void or defer through lawful proof, but inspection heat and bureau debt rise.
  • Baiya can countercredit with checksum or edit proof, but edit debt and source ambiguity rise.

Named handlers must mutate receipt status, proof state, future reader, or cost. They cannot erase declined offers by authority alone.

Integration notes

  • With Oxygen Claim Exchange Storyline, declined sponsor, fan, archive, pirate, or default settlement offers become receipt rows.
  • With 档期抢占认领线, displaced slot claims can become acknowledged displacement receipts or schedule afterbids.
  • With 派系承诺账本, declined commitments preserve what the faction spent and what control it demanded.
  • With 经营压缩台, declined report language can later become metric capture or public scar pressure.
  • With 伤痕汇流台线, declined stabilizer solutions can become future reader contradictions rather than disappearing.

Missability and recovery

The storyline is missed when implementation:

  • records only the selected offer;
  • treats unchosen offers as UI history instead of in-world pressure;
  • lets a declined offer with a future reader disappear;
  • omits offered relief, demanded cost, reason declined, receipt status, or future reader;
  • voids an offer without proof;
  • ignores a declined offer without afterbid risk;
  • triggers from fixed turn, day, week, raw count, dashboard, or lens health.

Recovery is allowed only through visible cost:

  • late acknowledgement with surcharge;
  • public offer-table publication with retaliation;
  • archive or inspection proof to void a false afterbid;
  • schedule displacement receipt;
  • fan oxygen compensation;
  • sponsor carve-out;
  • route split or quarantine;
  • recovery-only route.

Replay evidence expectation

storyline_id: storyteller.storyline.declined_offer_receipts.v1
session_id: lens-declined-offer-receipts-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
  trigger_kind: state_pressure
  contested_surface_present: true
  source_surface: oxygen_claim_exchange | schedule_preemption | faction_commitment | management_compression | scar_convergence | route_asset_custody | equivalent
  offer_set_visible: true
  offered_choice_count_min: 2
  selected_offer_present: true
  declined_offer_future_reader_present: true
  no_fixed_turn_trigger: true
offer_set:
  contested_surface_id: <id>
  material_offers:
    - offer_id: <id>
      offered_by: <faction_or_actor>
      proposed_relief: <relief>
      demanded_control_or_cost: <cost>
      proof_or_collateral: <proof>
      future_reader: <reader>
selected_resolution:
  selected_offer_id: <id>
  selected_offer_effect:
    relief: <delta>
    cost: <delta>
    future_route_effect: <effect>
offered:
  card: storyteller.card.declined_offer_receipt_docket.v1
  rite: storyteller.rite.declined_offer_reconciliation.v1
branch_result:
  declined_offer_id: <id>
  selected_response: acknowledge_receipt | defer_obligation | countercredit_offer | publish_offer_table | void_offer_with_proof | ignore_afterbid
  receipt_status_after: acknowledged | deferred | countercredited | published | voided | ignored
  event_seen_or_armed: storyteller.event.unanswered_offer_afterbid.v1 | none
  future_route_effect: <effect>
  counter_deltas:
    relief: []
    cost: []
    future: []
assertions:
  offer_set_visible_before_selection: true
  selected_and_declined_offers_recorded: true
  declined_offer_has_future_reader: true
  reconciliation_or_afterbid_visible: true
  future_reader_consumes_receipt_state: true
  no_fixed_turn_trigger: true

Non-goals

  • Not a UI menu history system.
  • Not a generic faction relationship tracker.
  • Not a legal/governance page.
  • Not a fixed-turn callback.
  • Not raw branch-count content.
  • Not valid unless declined offers change future routes, readers, claimants, proof, schedule, or custody state.