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: true

The 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: required

2. 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: true

4. 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.