Capacity Notice Service Queue / 容量告知送达队列机制

Capacity Notice Service Queue prevents a finite broadcast capacity row from becoming clean just because its harmed claimant was named somewhere else.

播出容量责任级联机制 proves that capacity rows carry claimants and future scars. This mechanism adds the operational proof that the excluded claimant was served, explicitly absent, or durably defaulted before that row is reused.

Mechanic premise

A capacity row can be lawful, sponsor-safe, public-serving, archived, borrowed forward, or blackout-folded. It cannot be all of those at once, and it cannot claim service by implication.

When capacity changes state, create or update 容量告知送达案卷 if any claimant is omitted, deferred, harmed, or required by a future reader.

Entry contract

entry_state_required:
  trigger_kind: state_pressure
  source_capacity_row_present: true
  capacity_state_change_pending: true
  capacity_state_any:
    - reserved
    - occupied
    - borrowed_forward
    - pledged
    - converted
    - folded
    - defaulted
    - explicit_absence
  source_surface_any:
    - broadcast_slot_contract
    - schedule_preemption
    - sponsor_makegood
    - recovery_inventory
    - management_compression
    - broadcast_insolvency
    - correction_slot
    - fan_oxygen
    - blackout_incident
    - route_asset_bridge
  claimant_to_serve_present: true
  omitted_or_deferred_claimant_present_or_explicit_absence: true
  notice_carrier_or_explicit_absence_visible: true
  proof_of_service_possible_or_explicit_absence: true
  future_reader_or_route_consumes_service_state: true
  player_can_serve_split_hold_suppress_or_default: 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

Entry fails if it is driven by turn number, chapter position, content count, dashboard health, lens health, or generic claimant anger without a source capacity row.

Row lifecycle

capacity_notice_lifecycle:
  1_open:
    required: [source_capacity_row, claimant_to_serve, omitted_or_deferred_claimant, future_reader_or_route]
    creates: storyteller.card.capacity_notice_service_docket.v1
  2_assign:
    required: [selected_notice_row, selected_service_route, carrier_or_absence, proof_or_absence, accepted_cost]
    uses: storyteller.rite.capacity_notice_service_hearing.v1
  3_resolve:
    mutates: [notice_state, served_claimant_state, omitted_claimant_state, capacity_state_after, future_route_effect]
  4_default:
    if_missing_any: [docket, claimant_to_serve, omitted_claimant, carrier_or_absence, proof_or_absence, future_route_effect]
    event: storyteller.event.unserved_capacity_notice.v1

Branch rules

A satisfying implementation supports at least five constructive branch families plus default or suppression:

  • serve excluded first;
  • sponsor desk service;
  • lawful or archive service;
  • public or fan notice;
  • proxy runner service;
  • split service;
  • hold capacity pending service;
  • suppress or false service.

Each branch must differ by notice state, omitted claimant state, capacity state after, cost profile, and future route effect.

Character hooks

  • Maturity Notice Runner can carry proxy service, but her protection, capture, hostile, or absent state must change the future route.
  • Desk Liaison Counteroffer Broker can arrange desk service, but the counteroffer must name the omitted claimant and cost.
  • Exclusion Adjuster can narrow the served scope, but exclusion cannot become universal notice.
  • Shen Luo can sponsor-route service, raising capture risk.
  • Han Yanshuang can lawful-route service, raising public delay or sponsor conflict.
  • Yu Lan can public or fan notice, raising exposure and audit heat.
  • Baiya can preserve proof or mask a carrier, raising ambiguity or checksum debt.

Counter surfaces

Every resolved or defaulted branch mutates at least three surfaces:

counter_deltas_required:
  relief: at_least_one
  cost: at_least_one
  future_reader_or_route_effect: at_least_one

Relevant surfaces:

  • capacity_notice_service_pressure
  • capacity_state_integrity
  • claimant_hostility
  • omitted_claimant_scar
  • service_proof_legibility
  • carrier_exposure
  • sponsor_stop_loss_pressure
  • public_receipt_legitimacy
  • public_receipt_distrust
  • fan_oxygen_resentment
  • inspection_heat
  • archive_debt
  • edit_debt
  • route_asset_pressure
  • blackout_pressure
  • management_pressure
  • future_route_acceptance

Default rule

未送达容量告知 fires or arms when service is absent, false, wrong-first, hidden, captured, proofless, split-filed-as-universal, blackout-hidden, or cleanly reused.

Default must record source capacity row, failed requirement, served claimant or absence, omitted claimant, harmed reader, default actor, false service claim, capacity state after, and future route effect.

Future consumption

At least one downstream reader must consume the service state:

  • capacity row can be accepted only with notice debt;
  • sponsor route becomes sponsor-only or requires unwind;
  • lawful route requires annex or rehearing;
  • public/fan route requires audit;
  • route asset becomes split-required, captured, blocked, costlier, or recovery-only;
  • blackout fold keeps a service scar;
  • recall claim priority receives the omitted claimant as a queue row;
  • reader rebuttal notice receives the failed service as cited authority.

Replay evidence shape

mechanic_id: storyteller.mechanic.capacity_notice_service_queue.v1
session_id: mechanic-capacity-notice-service-queue-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
  trigger_kind: state_pressure
  source_capacity_row_present: true
  capacity_state_change_pending: true
  claimant_to_serve_present: true
  omitted_or_deferred_claimant_present_or_explicit_absence: true
  future_reader_or_route_consumes_service_state: true
  no_fixed_turn_trigger: true
objects:
  docket: storyteller.card.capacity_notice_service_docket.v1
  rite: storyteller.rite.capacity_notice_service_hearing.v1
branch_result:
  selected_service_route: <route>
  notice_state_after: <state>
  served_claimant_state_after: <state>
  omitted_claimant_state_after: <state or explicit_absence>
  capacity_state_after: <state>
  event_seen_or_armed: storyteller.event.unserved_capacity_notice.v1 | none
  future_route_effect: <effect>
assertions:
  - source_capacity_row_visible
  - service_claimants_visible
  - hearing_slots_explicit
  - branches_diverge
  - every_success_has_cost
  - unserved_notice_default_durable
  - downstream_reader_consumes_service_state
  - no_clean_universal_capacity_service
  - no_fixed_turn_day_week_raw_count_dashboard_or_lens_health_trigger

Non-goals

  • Not a governance checklist.
  • Not a raw count target.
  • Not a duplicate of maturity notice routing; this mechanism serves capacity rows, not only stabilization tickets.
  • Not a duplicate of reader rebuttal notice; this mechanism decides service before capacity reuse, not rebuttal after authority citation.
  • Not valid if a single notice counts for sponsor, lawful, archive, public, fan, route claimant, management, and broadcast reality readers at once.