Access Caption Class Action / 无障碍字幕集体线

This storyline deepens the caption/access/reliance branch family by asking what happens after a caption reliance row stops being one complaint and becomes a collective access claim. It is not a raw escalation layer. It opens only when incompatible reader cohorts try to consume the same caption state as proof, remedy, sponsor reach, management metric, refund basis, lawful annex, or route unlock.

The line follows 无障碍字幕信赖线 and 字幕证词羁押线. It cross-feeds 呼吸追缴扣押线, 赞助补偿库存线, 经营压缩台, 召回认领优先级线, 播出合约回读线, and 播出署名反诉线.

Story premise

A caption that once protected the broadcast has become evidence against it.

The deaf access public says the caption was the only delivered performance. The foreign-language public says the subtitle altered consent. Fan translators claim their hardsub kept the route alive. Sponsor counsel wants the same caption counted as clean reach. Management wants the access metric filed as saved schedule. Archive readers want the caption escrowed as lawful proof. The caption operator refuses to be the silent signer for all of them.

The producer must decide whether this becomes a public class, split classes, callback settlement, sponsor notice class, operator witness class, quarantine, denied class, or defaulted record.

Entry state

entry_state:
  trigger_kind: state_pressure
  source_caption_row_or_explicit_absence_present: true
  source_reliance_rows_or_explicit_absence_present: true
  shared_caption_state_consumed_by_multiple_reader_scopes: true
  reader_cohorts_conflict_over_remedy_or_proof_scope: true
  constrained_surface_present_or_explicit_absence: true
  future_reader_or_route_consumes_class_state: true
  player_can_certify_split_settle_notice_protect_quarantine_deny_or_default: true
  no_fixed_turn_trigger: true
  no_fixed_day_or_week_trigger: true
  no_raw_complaint_count_trigger: true
  no_dashboard_or_lens_health_trigger: true

Core cast surfaces

This storyline can use existing character/card surfaces rather than requiring a new recruit:

  • producer as certification decision owner;
  • 沈洛 as callback carrier or settlement drafter;
  • 郁蓝 as public witness gatherer;
  • 韩砚霜 as lawful or inspection reader;
  • 白鸦 as edit checksum custodian;
  • fan delegate as oxygen/refund pressure carrier;
  • caption operator as witness, absent signer, protected worker, or defaulted liability holder;
  • sponsor counsel or management table as fastest-desk default narrator.

Any equivalent handler is acceptable if explicit absence is recorded.

Sequence of events

1. The caption becomes a class object

The player receives 无障碍字幕集体案卷 when a caption row is reused by incompatible readers.

Required beat payload:

beat_1:
  docket_created: storyteller.card.access_caption_class_docket.v1
  source_caption_row_or_absence: <row or explicit_absence>
  source_reliance_rows: []
  representative_reader: <reader>
  included_reader_cohorts: []
  excluded_or_conflicting_cohorts: []
  constrained_surface: <surface>
  future_reader_or_route: <reader or route>

2. Certification hearing

The player assigns 无障碍字幕集体认证听证.

The hearing must expose handler/proof/callback absence. A famous desk, a clean sponsor clause, or public sympathy cannot auto-certify the class.

3. Branch fork

The line must support these branch families:

  • certify public access class;
  • split public and lawful classes;
  • settle with callbacks;
  • sponsor notice class;
  • operator witness class;
  • quarantine shared caption;
  • deny with named harm;
  • default selects.

Each non-default branch must show relief, cost, and future effect. The default branch must fire or arm 无障碍字幕集体默认.

4. Downstream consumption

The class record must be consumed by at least one later reader:

  • fan oxygen refund or resentment state;
  • sponsor makegood inventory or unwind state;
  • management compression metric scar;
  • recall claim priority row;
  • broadcast contract readback clause;
  • signatory counterclaim release dispute;
  • route asset access state;
  • lawful caption annex;
  • public correction slot.

If the result stays local to the caption scene, the storyline is incomplete.

Branch outputs

branch_output_required:
  selected_posture: certify_public_class | split_classes | settle_with_callbacks | sponsor_notice_class | operator_witness_class | quarantine_shared_caption | deny_with_named_harm | default_selects
  class_state_after: <state>
  representative_reader_state_after: <state>
  excluded_or_conflicting_cohort_state_after: <state>
  constrained_surface_state_after: <state>
  callback_state_after_or_absence: <state or explicit_absence>
  future_reader_or_route_effect: public_only | lawful_only | sponsor_only | split_required | public_audit_required | sponsor_unwind_required | callback_required | operator_witness_required | blocked | hostile | recovery_only | contradiction_pending | equivalent
  counter_deltas:
    relief:
      - <at least one>
    cost:
      - <at least one>
    future_effect:
      - <at least one>

Miss/default shape

The line can be missed or defaulted if:

  • no representative reader is named;
  • excluded cohorts are hidden;
  • proof is missing without explicit absence;
  • callback carrier is hidden;
  • constrained surface is hidden;
  • sponsor or management files the class as clean reach;
  • public correction or fan refund is treated as universal settlement;
  • later route consumes the class as clean proof.

Default effect:

default_result:
  emitted_event: storyteller.event.access_caption_class_default.v1
  default_narrator: sponsor | management_table | archive | inspector | fan_delegate | public_table | lawful_reader | route_claimant | equivalent
  defaulted_class_state: sponsor_only_class | public_only_class | lawful_only_class | false_universal_access | management_metric_scar | operator_absence_liability | blocked | recovery_only | contradiction_pending
  future_route_effect: <effect>

Evidence shape

storyline_evidence:
  storyline_id: storyteller.storyline.access_caption_class_action.v1
  session_id: access-caption-class-action-<timestamp>
  seed: <deterministic-seed>
  entry_state:
    trigger_kind: state_pressure
    source_caption_row_or_explicit_absence_present: true
    reader_cohorts_conflict_over_remedy_or_proof_scope: true
    no_fixed_turn_trigger: true
  offered:
    card: storyteller.card.access_caption_class_docket.v1
    rite: storyteller.rite.access_caption_class_certification_hearing.v1
  branch_runs:
    constructive:
      selected_posture: <non-default posture>
      relief: []
      cost: []
      future_reader_or_route_effect: <effect>
    default:
      emitted_event: storyteller.event.access_caption_class_default.v1
      false_class_claim: <claim>
      default_narrator: <actor>
      future_reader_or_route_effect: <effect>
  assertions:
    - class_scope_named
    - excluded_cohorts_named_or_explicit_absent
    - constrained_surface_named
    - callback_carrier_named_or_absent
    - downstream_reader_consumes_class_state
    - no_universal_clean_caption_class

Non-goals

  • Not a raw complaint-count trigger.
  • Not a fixed-turn escalation.
  • Not a generic legal class action outside broadcast/access reality.
  • Not a bulk filler branch.
  • Not a clean accessibility KPI.