Prep Action Budget Overdraft Lens
This lens observes whether daily prep work is implemented as visible budget authority instead of raw action count or clean readiness.
Entry Oracle
The packet must open from a future reader trying to consume prep work whose day budget is contested:
entry_state:
trigger_kind: state_pressure
source_prep_day_row_present: true
base_action_budget_visible: true
consumed_actions_visible: true
frozen_or_borrowed_actions_visible: true
requested_future_slot_visible: true
harmed_reader_or_explicit_absence_visible: true
future_reader_consumes_prep_budget_state: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_action_count_trigger: true
no_dashboard_or_lens_health_trigger: trueThe lens fails if the entry is a timer, calendar cleanup, raw action count, dashboard warning, or lens-health check.
Bound Packet
The lens expects these pages:
- Prep Action Budget Overdraft;
- Prep Action Budget Overdraft;
- Daily Preparation Actions;
- Prep Action Budget Docket;
- Prep Action Budget Readback;
- Unbudgeted Prep Default;
- executable sibling
prep-action-budget-overdraft.lens.ts; - evaluator registration
storyteller.lens.prep_action_budget_overdraft.v1.
Checks
1. Budget and output are separate
The docket must name:
prep_action_budget_docket:
source_prep_day_row: required
base_action_budget: required
actions_spent_this_day: required
frozen_action_source_or_absence: required
borrowed_action_source_or_absence: required
requested_future_slot: required
prep_output_claimed: required
harmed_reader_or_absence: required
budget_state_after: required
future_reader_or_route_effect: required2. Branches diverge
The readback must expose all branch families:
certify_remaining_budget;freeze_contaminated_action;borrow_next_day_action;convert_to_rehearsal_debt;split_budget_by_slot;publish_overdraft_scar;unbudgeted_prep_default;future_effect_any.
3. Default mutates future play
The default event must record:
unbudgeted_prep_default:
false_prep_budget_claim: true
hidden_or_invalid_budget_state: required
capturing_reader: required
harmed_or_omitted_reader: required
budget_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. It is bound for evaluator coverage now and should be promoted into playable game-content objects when the preparation action runtime rollup is refreshed.
Adjacency
- Daily Preparation Actions owns the list of possible prep action types.
- Prep Action Receipt Carryover owns later transfer of a prepared output.
- Live-Floor Crew Load owns crew coverage burden after prep is accepted.
- Weekly Broadcast Cycle Audit owns week closure and next-day budget pressure.
This lens owns only the missing read between the day’s prep budget and future consumption.