The memory-yield LOW (start-inhibit) watermark forced pending=0, which the
idle-debounce path then read as 'no work' and used to idle-stop a RUNNING,
actively-analyzing vision once the box floated past LOW (idle stack + LLM
≈ 80% on this Pi) — so vision was killed mid-analysis at ~80%, not the 92%
HIGH watermark. Split the two levers: LOW now sets a mem_block_start flag
that only holds off STARTING a stopped vision; only the HIGH active stop (or
a genuinely drained queue) stops a running one. Observed live: vision now
holds through the 79–81% band and completes pages.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>