Blackout Residue Discharge Receipt Lens
This lens checks that a claimed blackout residue cannot later be discharged as clean recovery without a receipt.
Entry Oracle
entry_state:
trigger_kind: state_pressure
source_blackout_residue_claim_row_present: true
discharge_claim_visible: true
assigned_residue_owner_visible: true
discharged_scope_visible: true
proof_or_payment_or_absence_visible: true
future_reader_consumes_discharge_state: true
harmed_or_owed_reader_visible_or_explicit_absence: true
player_can_certify_publish_makegood_hold_convert_split_quarantine_or_default: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_residue_count_trigger: true
no_dashboard_or_lens_health_trigger: trueThe lens fails if entry is driven by fixed turn, fixed day/week, raw residue count, dashboard state, or lens health.
Checks
1. Docket Preserves Claim, Owner, Scope, Reader, And Future Effect
blackout_residue_discharge_docket:
source_blackout_residue_claim_row: required
source_blank_surface: required
assigned_residue_owner: required
discharge_claim: required
proof_or_payment_or_absence: required
discharged_scope: required
future_reader: required
harmed_or_owed_reader: required
selected_discharge_posture: required
residue_discharge_state_after: required
future_reader_or_route_effect: required
counter_deltas: required2. Review Branches Diverge
Required branch families:
certify_scoped_discharge;publish_public_discharge;sponsor_makegood_discharge;lawful_hold_discharge;route_stub_discharge;split_discharge_by_reader;quarantine_discharge;false_blackout_residue_discharge_default;future_effect_any.
3. Default Mutates Future Play
false_blackout_residue_discharge_default:
false_residue_discharge_claim: true
source_claim_row: required
hidden_or_invalid_discharge_scope: required
capturing_reader: required
harmed_or_omitted_reader: required
residue_discharge_state_after: required
future_reader_effect: required
counter_deltas_min: 3
durable_mutation: true4. Runtime Rollup Status Is Explicit
This is a direct-wiki contract bound to an evaluator entry. Runtime source objects and durable replay can be added later if the blackout-residue discharge lane becomes executable in the game-content rollup.