The poll loop treated any status other than "starting" as success, so a backend that stayed alive but reported a failed startup would pass the very test meant to catch a broken start (CodeRabbit + Greptile on #1955). Succeed only when the ML import step is done or status is ready; fail loudly on any other terminal status or error. Also give the child an empty HF_HUB_CACHE so it never reads the developer's populated cache. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HCDZcBpP6QQa4dzUa8z6rh