Public Recap Capture Lens / 公开回顾捕获 Lens
This lens observes whether 公开回顾捕获线 and 公开回顾捕获机制 prevent the official recap from turning a scarred branch into clean public reality.
A passing implementation proves source relief, source scar, proposed recap wording, omitted scar, narrator, beneficiary, harmed reader, proof anchor, branch choice, future reader, and durable default. It fails if the recap is only PR flavor, public mood, sponsor approval, or a clean universal summary.
Primary observation link
This lens observes:
- 公开回顾捕获线;
- 公开回顾捕获机制;
- 公开回顾账本;
- 公开回顾定性;
- 回顾捕获默认;
- source scar lines: 私约违背线, 直播现场通行瓶颈线, 经营压缩台, 容量告知送达队列线, 应急供电优先线, 连续性后用藐视线, and 播出实在漂移审计;
- Broadcast Reality, Route Assets and Custody, and Producer License and Pressure.
It is observed through:
Gap this lens targets
The existing lens surface is already strong at making outcomes unclean. The uncovered regression risk is downstream: a recap, 上期提要, emergency explainer, or sponsor-safe continuity strip can say the outcome was clean, and later routes may consume that wording as truth.
The lens must now fail these shortcuts:
- private promise scope recapped as public consent;
- protected/deferred egress recapped as universal safe exit;
- partial capacity notice recapped as everyone served;
- emergency power priority recapped as general resilience;
- sacrificed management metric recapped as clean yield;
- scoped continuity copy recapped as reusable canon;
- drift contradiction recapped as stable reality;
- route asset split recapped as clean custody.
Must pass
1. Entry is state-triggered by scarred source needing recap
Required evidence:
entry_state:
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 lens fails if entry depends on fixed turn number, day/week interval, chapter quota, raw content count, raw recap count, dashboard state, lens health, or generic PR phase.
2. Source relief and source scar are visible
A valid replay must name both.
source_resolution:
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: <public sponsor schedule proof route character safety management lawful archive equivalent>
value: <counter state route asset or receipt>
factual_scar:
kind: private_scope | deferred_flow | unserved_notice | power_priority_loss | sacrificed_metric | contempt_risk | drift_contradiction | route_asset_split | equivalent
value: <counter state reader route asset or receipt>The lens fails if the source is only “previous success,” “audience informed,” “PR ready,” or “broadcast stabilized.”
3. Recap claim, omitted scar, narrator, beneficiary, and harmed reader are visible
公开回顾账本 or equivalent must show:
recap_wording:
recap_id: <stable id>
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
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 | equivalentOne recap narrator plus vague public reaction fails.
4. Proof anchor or explicit absence is visible
The implementation must name what makes the recap citeable, or explicitly show the absence.
Accepted anchors include:
- public receipt;
- caption log;
- oxygen queue log;
- power ledger;
- promise row;
- metric report;
- edit checksum;
- lawful seal;
- explicit absence.
The lens fails if a sponsor, manager, editor, archive clerk, or broadcast surface can file clean recap proof without this slot.
5. Future reader consumes recap state
A future public, lawful, sponsor, archive, character, route, producer-license, broadcast-reality, access-caption, fan-oxygen, or ending reader must consume the recap state.
The lens fails if the recap is isolated flavor and no later branch reads it.
6. Ledger records three locks separately
The card or equivalent must separate source, wording, and reader locks.
ledger_required:
source_lock:
source_resolution_id: <id>
source_surface: <surface>
relief_recorded: <relief>
factual_scar: <scar>
wording_lock:
recap_claim: <claim>
omitted_or_softened_scar: <scar or explicit_absence>
recap_narrator: <narrator>
proof_anchor_or_absence: <anchor or explicit_absence>
reader_lock:
beneficiary_of_clean_wording: <beneficiary or explicit_absence>
harmed_reader: <reader>
future_reader_or_route: <future consumer>
recap_state: pending | qualified | split | corrected | sponsor_clean | public_contrition | quarantined | captured | breached | recovery_onlyThe lens fails if factual scar, recap claim, harmed reader, and future route effect are collapsed into a single public-opinion row.
7. Rite assignment slots are explicit
公开回顾定性 or equivalent must require:
assignment:
docket: storyteller.card.public_recap_ledger.v1
recap_id: <stable id>
source_resolution_id: <source id>
source_surface: <surface>
factual_scar: <scar>
recap_claim: <claim>
omitted_or_softened_scar: <scar or explicit_absence>
recap_narrator: <narrator>
harmed_reader: <reader>
beneficiary_of_clean_wording: <beneficiary or explicit_absence>
proof_anchor_or_absence: <anchor or explicit_absence>
selected_posture: qualify_scar | split_reader_recap | publish_correction | public_contrition_recap | quarantine_recap | sponsor_clean_recap | silent_clean_default
future_reader_or_route: <reader route slot ending scar or explicit_absence>Generic options like issue statement, make apology, ask sponsor, call legal, or edit recap fail unless these fields are present.
8. Branch families diverge
A satisfying implementation must expose six constructive branch families plus default, or explicitly block unavailable families with state reasons:
qualify_scar;split_reader_recap;publish_correction;public_contrition_recap;quarantine_recap;sponsor_clean_recap;silent_clean_default.
Branches must differ by recap state, harmed reader state, beneficiary state, proof/absence handling, counter deltas, and future route effect.
9. Branch assertions
Qualify scar assertion
selected_branch: qualify_scar
recap_state_after: qualified
relief_any: [public_receipt_legitimacy_up, future_reader_acceptance_up, broadcast_reality_drift_down]
cost_any: [sponsor_stop_loss_pressure_up, management_pressure_up, audience_stability_down, route_asset_pressure_up]
future_effect_any: [accepted_with_scar, scoped_public_proof, future_reader_warned]Split reader recap assertion
selected_branch: split_reader_recap
recap_state_after: split
relief_any: [reader_contradiction_pressure_down, selected_reader_acceptance_up, lawful_or_public_scope_up]
cost_any: [edit_debt_up, handler_burden_up, correction_pressure_up, source_ambiguity_up]
future_effect_any: [split_required, public_lawful_sponsor_routes_diverge, no_universal_acceptance]Publish correction assertion
selected_branch: publish_correction
recap_state_after: corrected
relief_any: [false_public_memory_down, lawful_or_public_addendum_up, recap_capture_down]
cost_any: [public_receipt_distrust_up, producer_license_pressure_up, correction_pressure_up]
future_effect_any: [correction_required_before_reuse, addendum_required, route_costlier]Public contrition assertion
selected_branch: public_contrition_recap
recap_state_after: public_contrition
relief_any: [public_repair_route_open, harmed_reader_acknowledged, caption_or_oxygen_reliance_repair_up]
cost_any: [sponsor_stop_loss_pressure_up, management_pressure_up, archive_debt_up]
future_effect_any: [public_repair_with_cost, sponsor_route_narrowed, ending_scar_pressure_down]Quarantine assertion
selected_branch: quarantine_recap
recap_state_after: quarantined
relief_any: [false_clean_reuse_down, breach_risk_down, drift_hardened_down]
cost_any: [black_screen_pressure_up, schedule_pressure_up, fan_oxygen_resentment_up, route_blocked_up]
future_effect_any: [blocked_until_recap, proof_or_notice_required, recovery_only_if_ignored]Sponsor clean assertion
selected_branch: sponsor_clean_recap
recap_state_after: sponsor_clean
relief_any: [sponsor_stop_loss_pressure_down, immediate_slot_pressure_down, management_pressure_down]
cost_any: [public_receipt_distrust_up, access_or_oxygen_erasure_up, confidant_trust_down, broadcast_reality_drift_up]
future_effect_any: [sponsor_only, public_addendum_required, lawful_route_costlier, reader_hostile]Default capture assertion
selected_branch: silent_clean_default
event_seen_or_armed: storyteller.event.recap_capture_default.v1
recap_state_after_any: [captured, breached, recovery_only]
relief_any: [immediate_assignment_burden_down, sponsor_or_management_narrative_stabilized]
cost_any: [recap_capture_up, false_public_memory_up, excluded_reader_hostility_up, future_recovery_cost_up]
future_effect_any: [correction_required, public_addendum_required, route_blocked, recovery_only, ending_scar]10. Every success has relief, cost, and future effect
Every non-default branch must mutate at least:
counter_contract:
relief_min: 1
cost_min: 1
future_reader_or_route_effect_min: 1A recap that simply improves public mood, satisfies sponsor, or reduces management pressure fails.
11. Recap capture default is durable
回顾捕获默认 must record:
default_payload:
recap_id_or_absence: <row id or explicit_absence>
source_resolution_id: <source id or explicit_absence>
source_surface: <surface or explicit_absence>
factual_scar_or_absence: <scar or explicit_absence>
clean_recap_claim: <claim>
default_narrator: <narrator>
captured_reader: <reader>
excluded_or_harmed_reader: <reader or explicit_absence>
missing_or_hidden_inputs:
factual_scar: present | hidden | absent
harmed_reader: present | hidden | absent
proof_anchor: present | hidden | absent
source_scope: present | hidden | absent
future_reader: present | hidden | absent
default_state_after: 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 | equivalent
future_route_effect: correction_required | public_addendum_required | lawful_rehearing_required | sponsor_only | route_blocked | reader_hostile | recovery_only | ending_scar | equivalentThe default fails if it only changes prose, mood, generic reputation, or money.
12. No universal clean recap
No branch may cause all of the following to accept the same recap as clean: public reader, lawful reader, sponsor, archive, harmed character, route asset, producer license, and broadcast reality.
At least one scope, reader split, addendum, correction, cost, route block, recovery hook, or ending scar must survive.
Replay evidence expectation
lens_id: storyteller.lens.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
beneficiary_of_clean_wording_visible_or_explicit_absence: true
proof_anchor_visible_or_explicit_absence: 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
ledger:
source_lock:
source_resolution_id: <id>
relief_recorded: <relief>
factual_scar: <scar>
wording_lock:
recap_claim: <claim>
omitted_or_softened_scar: <scar or explicit_absence>
recap_narrator: <narrator>
proof_anchor_or_absence: <anchor or explicit_absence>
reader_lock:
beneficiary_of_clean_wording: <beneficiary or explicit_absence>
harmed_reader: <reader>
future_reader_or_route: <future consumer>
branch_runs:
constructive_branch:
selected_posture: qualify_scar | split_reader_recap | publish_correction | public_contrition_recap | quarantine_recap | sponsor_clean_recap
recap_state_after: <state>
harmed_reader_state_after: <state>
beneficiary_state_after: <state>
future_reader_effect: <effect>
counter_deltas:
relief: []
cost: []
future: []
default_branch:
event_seen_or_armed: storyteller.event.recap_capture_default.v1
default_narrator: <narrator>
captured_reader: <reader>
excluded_or_harmed_reader: <reader or explicit_absence>
default_state_after: <state>
future_route_effect: <effect>
assertions:
- primary_links_exist
- entry_is_state_triggered_by_scarred_source_needing_recap
- source_relief_and_source_scar_are_visible
- recap_claim_omitted_scar_narrator_beneficiary_and_harmed_reader_are_visible
- proof_anchor_or_explicit_absence_is_visible
- future_reader_or_route_consumes_recap_state
- ledger_records_source_wording_and_reader_locks_separately
- rite_assignment_slots_are_explicit
- branch_families_diverge
- every_success_has_relief_cost_and_future_effect
- recap_capture_default_records_false_clean_memory_captured_reader_excluded_reader_missing_inputs_and_future_effect
- no_universal_clean_recap
- no_fixed_turn_day_week_raw_count_dashboard_or_lens_health_triggerProgress metric
publicRecapCaptureProgress = 0..10:
0: no public recap pressure.1: scarred source resolution exists.2: recap claim, narrator, beneficiary, and harmed reader are visible.3: proof anchor or explicit absence is visible.4: future reader or route consumes recap state.5: 公开回顾账本 enters play with source, wording, and reader locks.6: 公开回顾定性 offers explicit assignment slots.7: at least four constructive branch families diverge.8: every constructive branch has relief, cost, and future reader effect.9: 回顾捕获默认 fires or arms with durable state.10: future reader consumes the recap result and no universal clean recap exists.
Non-goals
- Not a generic PR scene.
- Not a social mood meter.
- Not a governance or dashboard lens.
- Not raw count expansion.
- Not a replacement for any source scar line.
- Not valid unless public wording changes future playable state.
- Not valid if the clean recap becomes universal acceptance.