Public Recap Capture / 公开回顾捕获机制
Public Recap Capture is the mechanism that prevents a scarred branch from being converted into clean public reality by an official recap, 上期提要, emergency explainer, sponsor-safe continuity strip, or management-facing recap copy.
The existing mesh is strong at generating scars: private promises, bottlenecked egress, capacity notices, emergency power priority, metric compression, and continuity afteruse all create scoped results. This mechanism targets the next regression risk: the broadcast recap can make the scar disappear for later readers.
Mechanic promise
A passing implementation must prove:
- a source resolution exists;
- that resolution contains relief and scar;
- a recap claim is being prepared or has aired;
- one reader benefits from clean wording;
- one reader is harmed or excluded by clean wording;
- a proof anchor is visible or explicitly absent;
- a future reader or route consumes the recap state;
- branches diverge by recap state, reader state, cost, and future effect;
- default capture is durable;
- no fixed turn, day/week, raw count, dashboard, or lens-health trigger exists.
Entry rule
entry_state_required:
trigger_kind: state_pressure
source_resolution_present: true
source_resolution_has_relief: true
source_resolution_has_scar: true
public_recap_claim_present: true
harmed_reader_or_explicit_absence_visible: true
beneficiary_of_clean_wording_visible_or_explicit_absence: true
proof_anchor_visible_or_explicit_absence: true
future_reader_or_route_consumes_recap_state: true
player_can_qualify_split_correct_contrit_quarantine_clean_or_default: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_recap_count_trigger: true
no_dashboard_or_lens_health_trigger: trueThe mechanism fails if eligibility comes from a fixed sequence position, chapter quota, raw number of recaps, global lens health, dashboard state, generic PR phase, or generic post-broadcast cleanup.
State model
公开回顾账本 records the state row.
recap_state_model:
source_lock:
source_resolution_id: <stable id>
source_surface: confidant_promise | live_floor_egress | capacity_notice | emergency_power | management_compression | continuity_afteruse | broadcast_reality_drift | route_asset | equivalent
relief_recorded: <surface and delta>
factual_scar: private_scope | deferred_flow | unserved_notice | power_priority_loss | sacrificed_metric | contempt_risk | drift_contradiction | route_asset_split | equivalent
wording_lock:
recap_claim: clean_success | qualified_success | partial_failure | public_apology | sponsor_safe_story | lawful_notice | silent_omission | equivalent
omitted_or_softened_scar: <scar or explicit_absence>
recap_narrator: producer | sponsor | management | archive | fan_delegate | editor | inspector | character | broadcast_reality | equivalent
proof_anchor_or_absence: public_receipt | caption_log | oxygen_queue_log | power_ledger | promise_row | metric_report | edit_checksum | lawful_seal | explicit_absence
reader_lock:
beneficiary_of_clean_wording: sponsor | management | producer_license | archive | public_stability | route_claimant | character | equivalent | explicit_absence
harmed_reader: public | lawful | sponsor | archive | access_caption_class | fan_oxygen_queue | confidant_character | route_asset | future_audience | equivalent
future_reader_or_route: <route reader slot ending scar or explicit_absence>
recap_state: pending | qualified | split | corrected | sponsor_clean | public_contrition | quarantined | captured | breached | recovery_onlyThe mechanism fails if source relief, factual scar, recap wording, harmed reader, and future reader are collapsed into one public-opinion line.
Resolution rule
Run 公开回顾定性 before a future route treats the public recap as proof.
Valid branches:
qualify_scar— keep recap usable while naming the scar.split_reader_recap— separate public, lawful, sponsor, archive, route, or character readers.publish_correction— amend a clean claim and accept correction pressure.public_contrition_recap— admit harm and open repair at sponsor, management, or producer-license cost.quarantine_recap— block false public memory until proof, notice, service, or custody catches up.sponsor_clean_recap— accept sponsor/slot stability while public/lawful/character readers inherit capture or distrust.silent_clean_default— allow the fastest narrator to file clean memory.
Every constructive branch must include relief, cost, and future reader effect. A clean universal recap is invalid.
Default rule
回顾捕获默认 must fire or arm when:
- the recap row is absent;
- the scar is hidden;
- the harmed reader is hidden;
- proof anchor absence is hidden;
- one narrator files before qualification;
- a future reader consumes clean recap state without reading the source scar.
Required durable outcomes include recap_captured, false_public_memory, sponsor_clean_memory, lawful_notice_lie, access_or_oxygen_erasure, private_consent_breach, false_clean_yield, continuity_overwrite, drift_hardened, correction_required, public_addendum_required, route_blocked, reader_hostile, recovery_only, or ending_scar.
The default fails if it only modifies audience mood or generic reputation.
Cross-system reads
- Broadcast Reality reads whether the recap wording becomes the next reality.
- Route Assets and Custody reads whether a scarred asset was falsely recapped as clean.
- Producer License and Pressure reads whether the producer signed clean memory without proof.
- 无障碍字幕集体线 reads access or caption harm erased by recap.
- 无障碍字幕信赖线 reads whether users relied on a false recap.
- 播出容量责任级联线 reads false capacity closure.
Replay evidence expectation
mechanic_id: storyteller.mechanic.public_recap_capture.v1
session_id: lens-public-recap-capture-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
trigger_kind: state_pressure
source_resolution_id: <id>
source_resolution_has_relief: true
source_resolution_has_scar: true
public_recap_claim_present: true
harmed_reader_or_explicit_absence_visible: true
future_reader_or_route_consumes_recap_state: true
no_fixed_turn_trigger: true
offered:
card: storyteller.card.public_recap_ledger.v1
rite: storyteller.rite.public_recap_qualification.v1
branch_result:
selected_posture: qualify_scar | split_reader_recap | publish_correction | public_contrition_recap | quarantine_recap | sponsor_clean_recap | silent_clean_default
recap_state_after: <state>
reader_states_after: {}
counter_deltas:
relief: []
cost: []
future: []
default:
event_seen_or_armed: storyteller.event.recap_capture_default.v1 | explicit_absence
assertions:
- entry_is_state_triggered
- source_relief_and_scar_are_visible
- recap_claim_and_omitted_scar_are_visible
- harmed_reader_and_beneficiary_are_visible
- future_reader_consumes_recap_state
- branches_diverge_by_reader_state_and_future_effect
- default_capture_is_durable
- no_universal_clean_recap
- no_fixed_turn_day_week_raw_count_dashboard_or_lens_health_triggerNon-goals
- Not a PR governance page.
- Not a generic audience mood mechanism.
- Not a replacement for the source scar mechanism.
- Not valid unless the recap creates playable state for future readers.
- Not valid if the recap becomes clean universal permission.