Blocked P0 with safe P1/P2 rotation
The operator sees exactly what decision is needed while the agent can keep making bounded progress elsewhere.
Case context
This case shows what should happen when a P0 route is blocked by a user decision: the system should neither keep forcing that lane nor stop the whole goal. The original shape was a benchmark rotation where one lane needed a large local image while other no-upload benchmark work remained safe.
The public repository does not expose raw benchmark tasks or local image names. It reproduces the control-plane behavior with a synthetic smoke. The user-facing value is seeing one concrete P0 decision while safe fallback work can continue and the gated lane does not burn automated progress budget.
Repository evidence
A user decision should not block all safe work.
concrete user todo, safe fallback, quota control
`examples/showcase-0617-blocked-p0-safe-rotation-smoke.py` reproduces a P0 user gate, a P0 agent lane blocked by that gate, and a P1 no-upload fallback.
The smoke pins `should_run=True`, `requires_user_action=True`, `safe_bypass_allowed=True`, `safe_bypass_kind=scoped_user_gate_fallback`, and related fallback evidence.
The fixture selects `terminal_bench_no_upload` while preserving the `ale_image` gate as the user-visible blocker.
The smoke checks markdown for `scoped_user_gate_fallback` and safe no-upload Terminal-Bench rotation.
LoopX behavior
- 1The user todo names the concrete P0 decision instead of saying only owner gate.
- 2The agent does not spend compute on the gated lane; it selects fallback work that does not depend on the decision.
- 3State records both the blocker and the fallback reason so P0 can resume later.
What the user sees
The user sees the exact decision they need to make while the project continues safely elsewhere.
Attention load drops: the user does not need to watch repeated idle polls and does not miss the real decision.
Repository sources
docs/showcases/cases/0617-blocked-p0-safe-rotation.mdsynthetic smokeexamples/showcase-0617-blocked-p0-safe-rotation-smoke.pyEvidence boundary. Synthetic public fixture only; no private screenshots, raw tasks, internal links, local image names, or raw run logs.
python3 examples/showcase-0617-blocked-p0-safe-rotation-smoke.py