Oxygen Reserve Gap Discharge Receipt Lens

This lens observes whether an assigned oxygen reserve gap can be discharged only through a scoped receipt rather than a clean closure flag.

Entry Oracle

The packet must open from a future reader trying to consume a claimed discharge:

entry_state:
  trigger_kind: state_pressure
  source_gap_assignment_row_present: true
  discharge_claim_visible: true
  assigned_gap_holder_visible: true
  paid_or_released_scope_visible: true
  protected_reader_visible_or_explicit_absence: true
  burdened_reader_visible_or_explicit_absence: true
  future_reader_consumes_gap_discharge_state: true
  no_fixed_turn_trigger: true
  no_fixed_day_or_week_trigger: true
  no_raw_gap_amount_trigger: true
  no_raw_oxygen_count_trigger: true
  no_dashboard_or_lens_health_trigger: true

The lens fails if the trigger is a fixed timer, raw oxygen refill, generic sponsor payment, dashboard state, or lens-health state.

Bound Packet

The lens expects these pages:

Checks

1. Docket separates assignment from discharge

oxygen_reserve_gap_discharge_docket:
  source_gap_assignment_row: required
  source_provenance_row_or_absence: required
  discharge_claim: required
  assigned_gap_holder: required
  payment_or_release_proof_or_absence: required
  protected_reader_or_absence: required
  burdened_reader_or_absence: required
  discharge_scope: required
  selected_discharge_posture: required
  gap_discharge_state_after: required
  future_reader_or_route_effect: required

2. Branches diverge

The review must expose all branch families:

  • certify_scoped_gap_discharge;
  • public_queue_discharge;
  • sponsor_true_up_discharge;
  • archive_lawful_discharge;
  • route_asset_care_discharge;
  • split_gap_discharge_escrow;
  • refuse_or_quarantine_discharge;
  • false_oxygen_gap_discharge_default;
  • future_effect_any.

3. Default mutates future play

false_oxygen_gap_discharge_default:
  false_gap_discharge_claim: true
  source_gap_assignment_row: required
  hidden_or_invalid_discharge_scope: required
  capturing_reader: required
  burdened_or_omitted_reader: required
  gap_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. It is bound for evaluator coverage now and should be promoted into playable game-content objects when the oxygen reserve runtime rollup is refreshed.

Adjacency

This lens owns only claimed discharge of an already assigned reserve gap.