acquire() judges at the slot: household signals first (admission), then a held slot (slot);
nothing queues, so a request can no longer wait on the worker lock past a changed gate. While
Vili's job holds the slot, and until free VRAM recovers to its pre-job level (capped), low free
VRAM is not the household's; full-screen and 3D always count. A sample with no resolved 3D
counters is a probe fault and the gate fails closed. The placement 503 carries no gate status.
A malformed VILI_GPU_* override refuses to start, naming the variable.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Drops the claim that the child's 2 GiB check refuses under contention
(closes gpu-busy-blind's README overstatement).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Serves motion-pipeline fork: which motion model and text encoder Vili runs
(follow_up kimodo-v1-2).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Campaign motion-pipeline, opened 2026-10-20 at the operator's word; first
consumer is the StreamPixels RPS duel.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>