Repository navigation
Description
Product boundary to decide
A positive compute allocation whose current allowance is fully spent can still produce should_run=true / run_now for vision_checkpoint_missing. Ordinary delivery remains prohibited. Please clarify whether this replan exception is intended: compute quota is described as the allocation of automatic agent time, so exhausted quota is easy to interpret as a stop on further model work.
This is an observed product behavior, not a Windows-specific diagnosis or an Agent command failure. Confirmed with synthetic source packets on main beff0f3e55d1f70eceebbd8e78c11f1cff34643b; the behavior was also observed on release 2.3.0.
Minimal counts-only reproduction
Use a disposable active Goal with one registered Agent and exactly one blocked advancement Todo, zero executable Todos and no due monitor, user gate or owed prior settlement. Use the public synthetic status/checkpoint shapes from examples/control_plane/quota-replan-decision-plane-smoke.py.
Set compute positive, allowance 1 slot, spent 1 slot, and quota state throttled. Compare the same source with zero versus one retained checkpoint reporting a missing per-Agent Vision baseline; call build_quota_should_run with explicit generic_cli scheduler context.
| Input / output | No missing checkpoint | One missing-baseline checkpoint |
|---|---|---|
| Allowed / spent slots | 1 / 1 | 1 / 1 |
| Blocked / executable Todos | 1 / 0 | 1 / 0 |
| Quota state | throttled | throttled |
| Effective action | throttled_skip | autonomous_replan_required |
| should_run | false | true |
| Agent delivery allowed | false | false |
| Quiet no-op allowed | true | false |
| Scheduler action | backoff_until_state_change | run_now |
These are source decision results. No model turn, spend, fabricated receipt or sustained host loop was executed for this reproduction.
Existing ownership and related work
- The existing quota decision owner receives the throttled state and scoped replan facts through
resolve_quota_run_decision. - Quota allocation distinguishes a zero-compute hard pause from current-window throttling and describes replan precedence. quota: isolate autonomous replan decision plane #1156 and Align quota smoke with replan precedence #1182 intentionally preserve replan ahead of lane waits; this report asks about the exhausted compute allowance boundary specifically.
- fix(quota): wait when the only scoped work is blocked #8511 waits only when there is no higher-priority obligation and explicitly preserves replan. Define background-job wait ownership for DSH continuations #8532 concerns live background jobs. Neither settles whether an exhausted compute window should admit new replan model work.
Existing issue searches for quota/replan exhaustion and throttling found no issue specifically deciding this boundary.
Requested maintainer outcome
Decide whether all fresh replan attempts must wait for renewed compute allowance, or whether replan has an intentional exception with its own visible budget/accounting boundary. Encode and test that decision at the existing typed quota owner and describe it clearly to callers. Preserve owner Stop/zero-compute authority, exact-identity settlement recovery and legitimate no-debit closeouts; do not resolve this by charging every guard read or inventing settlement.
Activity