Oxygen Reserve Provenance Lens / 呼吸储备来源 Lens
This lens observes whether 呼吸储备来源线 and 呼吸储备来源机制 prevent multiple oxygen-like sources from being merged into a clean universal pool.
The oracle is: a mixed oxygen reserve must preserve source provenance and excluded-reader scar. If fan oxygen, sponsor makegood, ward air, archive-held reserve, public receipt credit, recovery-air, route-asset care, or broadcast-stability credit are combined to pay one obligation, the implementation must expose source rows, source scope, holder/authority, protected reader, excluded reader, conversion rule, branch outcome, and future route effect.
Primary observation link
This lens observes:
It is observed through:
Gap this lens targets
Existing oxygen content is strong at local surfaces:
- 粉丝氧气账本群线 makes cells visible;
- 呼吸优先梯线 ranks senior and junior claimants;
- 呼吸追缴扣押线 handles later clawback;
- 赞助补偿库存线 prices sponsor substitution.
The uncovered regression risk is cross-source payment. A later route can treat several scoped reserves as a single pool and claim oxygen paid without naming the fan cell, sponsor credit, ward reserve, archive hold, recovery row, public receipt, or route-asset care source that was consumed.
This lens fails that shortcut.
Must pass
1. Entry is state-triggered by multi-source payment or hidden mix
Required evidence:
entry_state:
trigger_kind: state_pressure
obligation_being_paid_visible: true
two_or_more_oxygen_like_source_rows_visible_or_hidden_mix_detected: true
at_least_two_source_scopes_or_default_actor_visible: true
requesting_reader_visible: true
protected_reader_visible_or_explicit_absence: true
excluded_or_subordinated_reader_visible_or_explicit_absence: true
future_reader_or_route_effect_possible: true
player_can_segregate_match_opt_in_escrow_convert_ringfence_refuse_or_default: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_pool_size_trigger: true
no_dashboard_or_lens_health_trigger: trueThe lens fails if entry is driven by fixed turn, day/week interval, raw pool size, dashboard state, lens health, generic financial review, or generic fan anger.
2. Ledger records obligation and source rows
呼吸储备来源账本 or equivalent must record:
ledger_required:
obligation_being_paid: sponsor_makegood | fan_refund | ward_air | public_receipt | recovery_air | route_asset_care | archive_lien | broadcast_stability | equivalent
source_rows:
- source_id: <stable source id>
source_kind: fan_oxygen_cell | sponsor_makegood | ward_air_reserve | archive_escrow | recovery_inventory | public_receipt_credit | route_asset_care | broadcast_stability_credit | equivalent
source_scope_before: fan_only | sponsor_only | ward_only | archive_only | public_only | recovery_only | route_asset_only | lawful_only | split_required | explicit_absence | equivalent
source_holder_before: <holder or explicit_absence>
consent_or_authority: consented | disputed | inferred | sponsor_directed | public_mandate | archive_hold | worker_carried | explicit_absence | equivalent
amount_or_share: <quantity share or explicit_absence>The lens fails if the record says only oxygen paid, reserve spent, sponsor covered, fans accepted, or pool balanced.
3. Reader and future effect are visible
Required fields:
reader_scope_required:
requesting_reader: sponsor | fan_public | ward_reader | archive | lawful_reader | route_asset | producer_license | broadcast_reality | equivalent
protected_reader: <reader or explicit_absence>
excluded_or_subordinated_reader: <reader or explicit_absence>
future_reader_or_route: <reader route rite ending memorial audit recall or explicit_absence>
conversion_rule_or_absence: segregate | match | opt_in | haircut | escrow | pledge | refuse_mix | explicit_absenceA source ledger with no excluded reader fails. A payment ledger with no future consumer fails.
4. Rite assignment slots are explicit
呼吸储备分账 or equivalent must require:
assignment_required:
ledger: storyteller.card.oxygen_reserve_provenance_ledger.v1
selected_posture: segregated_sources | sponsor_match | fan_opt_in | archive_escrow | haircut_conversion | route_asset_ringfence | refuse_mix | hidden_mix_default
source_rows: []
conversion_rule_or_absence: <rule or explicit_absence>
handler_or_absence: <handler or explicit_absence>
proof_bridge_or_absence: <proof receipt archive stamp public queue route asset hold or explicit_absence>
protected_reader: <reader or explicit_absence>
excluded_or_subordinated_reader: <reader or explicit_absence>
future_reader_or_route: <reader route rite ending or explicit_absence>Sponsor money, fan goodwill, public support, archive stamp, ward urgency, or producer authority cannot resolve the mix unless these fields are present.
5. Branch families diverge
A satisfying implementation must expose at least six constructive branch families plus default, or explicitly block unavailable families with state reasons:
segregated_sources;sponsor_match;fan_opt_in;archive_escrow;haircut_conversion;route_asset_ringfence;refuse_mix;hidden_mix_default.
Branches must differ by mixed reserve state after, protected reader state, excluded reader state, cost, and future route effect.
6. Branch assertions
Segregated sources assertion
selected_posture: segregated_sources
mixed_reserve_state_after: segregated
relief_any: [source_legibility_up, false_universal_pool_blocked, clawback_pressure_down]
cost_any: [obligation_underfunded, obligation_delayed, split_required, sponsor_makegood_cost_up]
future_effect_any: [source_gated_reuse, split_required, costlier]Sponsor match assertion
selected_posture: sponsor_match
mixed_reserve_state_after_any: [sponsor_matched, sponsor_only]
relief_any: [sponsor_stop_loss_pressure_down, immediate_slot_pressure_down]
cost_any: [contract_capture_up, public_receipt_distrust_up, fan_oxygen_resentment_up]
future_effect_any: [sponsor_only, public_addendum_required, unwinding_required]Fan opt-in assertion
selected_posture: fan_opt_in
mixed_reserve_state_after_any: [opt_in_pool, public_only]
relief_any: [public_receipt_legitimacy_up, fan_participation_up]
cost_any: [fan_mandate_split_pressure_up, fan_oxygen_resentment_up, audit_standing_pressure_up]
future_effect_any: [fan_audit_required, public_receipt_scar, delegate_mandate_review]Archive escrow assertion
selected_posture: archive_escrow
mixed_reserve_state_after: escrowed
relief_any: [double_use_blocked, false_payment_blocked, source_rows_preserved]
cost_any: [archive_debt_up, inspection_heat_up, public_delay_up, sponsor_hostility_up]
future_effect_any: [lawful_only, bridge_required, release_gated]Haircut conversion assertion
selected_posture: haircut_conversion
mixed_reserve_state_after: converted_with_haircut
relief_any: [obligation_partly_paid, current_route_partly_unblocked]
cost_any: [junior_reader_scope_down, oxygen_clawback_pressure_up, consent_debt_up]
future_effect_any: [costlier, split_required, recovery_only_for_junior]Route-asset ringfence assertion
selected_posture: route_asset_ringfence
mixed_reserve_state_after: ringfenced
relief_any: [route_asset_care_protected, ward_air_capacity_protected, worker_carried_source_protected]
cost_any: [sponsor_pressure_up, fan_pressure_up, archive_pressure_up, production_pressure_up]
future_effect_any: [protected_scope_only, cannot_be_cited_outside_scope, route_asset_debt_carried]Refuse mix assertion
selected_posture: refuse_mix
mixed_reserve_state_after: refused
relief_any: [false_clean_payment_prevented, source_loss_blocked]
cost_any: [current_obligation_blocked, sponsor_makegood_cost_up, public_pressure_up]
future_effect_any: [priority_ladder_required, clawback_route_open, recovery_only]Hidden mix default assertion
selected_posture: hidden_mix_default
event_seen_or_armed: storyteller.event.oxygen_source_mixing_default.v1
mixed_reserve_state_after_any: [captured, false_clean, blocked, recovery_only]
relief_any: [immediate_assignment_burden_down, sponsor_or_management_claim_stabilized]
cost_any: [excluded_reader_hostility_up, source_loss_up, oxygen_clawback_pressure_up, broadcast_reality_drift_up]
future_effect_any: [sponsor_only, public_only, archive_only, blocked, split_required, recovery_only]7. No mixed reserve universal clean pool
Required assertion:
no_universal_clean_pool:
source_rows_preserved_or_hidden_mix_explicit: true
at_least_one_source_scope_remains_scoped: true
protected_or_excluded_reader_visible: true
future_reader_or_route_effect_not_clean_universal: trueThe lens fails if one mixed reserve can satisfy sponsor, fan public, ward, archive, lawful, route asset, producer license, and broadcast-reality readers cleanly.
8. Default is durable
呼吸来源混用默认 must record:
default_required:
event: storyteller.event.oxygen_source_mixing_default.v1
ledger_row_or_absence: <row or explicit_absence>
obligation_being_paid: <obligation>
source_rows_visible_count: <count or explicit_absence>
default_actor: sponsor | management | fan_delegate | archive | lawful_reader | producer_license | route_asset | broadcast_reality | handler_absence | equivalent
false_clean_claim: <claim>
captured_or_lost_source: <source or explicit_absence>
hidden_excluded_reader: <reader or explicit_absence>
mixed_reserve_state_after: captured | false_clean | sponsor_only | public_only | archive_only | recovery_only | blocked | hostile | split_required | equivalent
future_reader_or_route_effect: <effect>A warning with no captured/lost source and no future effect fails.
9. Replay evidence expectation
storyline_id: storyteller.storyline.oxygen_reserve_provenance.v1
session_id: lens-oxygen-reserve-provenance-v1-<timestamp>
seed: <deterministic-seed>
entry_state:
trigger_kind: state_pressure
obligation_being_paid_visible: true
source_rows_or_hidden_mix_visible: true
no_fixed_turn_trigger: true
ledger:
card: storyteller.card.oxygen_reserve_provenance_ledger.v1
source_rows: []
requesting_reader: <reader>
protected_reader: <reader or explicit_absence>
excluded_or_subordinated_reader: <reader or explicit_absence>
branch_result:
rite: storyteller.rite.oxygen_reserve_segregation.v1
selected_posture: segregated_sources | sponsor_match | fan_opt_in | archive_escrow | haircut_conversion | route_asset_ringfence | refuse_mix | hidden_mix_default
mixed_reserve_state_after: <state>
future_reader_or_route_effect: <effect>
emitted_event: storyteller.event.oxygen_source_mixing_default.v1 | none_if_valid
counter_deltas:
relief: []
cost: []
future: []
assertions:
- entry_is_state_triggered
- source_rows_or_hidden_mix_visible
- source_scope_preserved
- protected_and_excluded_readers_visible
- branch_outcomes_diverge
- every_constructive_branch_has_relief_cost_and_future_effect
- hidden_mix_default_is_durable
- no_universal_clean_oxygen_pool
- downstream_reader_consumes_provenance_state
- no_fixed_turn_triggerProgress metric
oxygenReserveProvenanceProgress = 0..10:
0: no obligation or source rows visible.1: obligation being paid is visible.2: two source rows or hidden mix is visible.3: source scopes, holders, and authority are visible or explicitly absent.4: requesting, protected, and excluded readers are visible.5: Oxygen Reserve Provenance Ledger enters play.6: Oxygen Reserve Segregation exposes assignment slots.7: at least three constructive branches produce reserve state, relief, cost, and future effect.8: ringfence/refuse/haircut branches preserve excluded-reader scar.9: Oxygen Source-Mixing Default creates durable false-pool scar.10: downstream sponsor, fan, ward, archive, lawful, route-asset, producer-license, or broadcast-reality reader consumes the result.
Non-goals
- Not a universal oxygen health bar.
- Not a global economy dashboard.
- Not raw count satisfaction.
- Not a fixed upkeep phase.
- Not a replacement for priority ladder, clawback, rebate, haircut, or sponsor makegood.
- Not valid unless source provenance changes future playable state.