Make the interrupted-install legs able to fail

The probe treated a present .desktop-install-in-progress marker as proof of a
repairable state, but the drivers seed it unconditionally and never clear it, so
REPAIRABLE was unconditional and FALSE_READY unreachable. The Windows leg had no
kill-landed guard, blanket continue-on-error, and no repair re-run; -SkipTorch
was silently dropped, since install.ps1 parses only --no-torch.

Judge the re-run by whether the backend boots, on both platforms. The log grep
matched the frontend build printing "up to date" and failed a leg whose venv
was fine.
This commit is contained in:
danielhanchen 2026-07-28 13:46:26 +00:00
commit fe846fb43d
2 changed files with 81 additions and 18 deletions

View file

@ -118,7 +118,11 @@ def main(argv: list[str]) -> int:
(out / f"{label}.log").write_text(log, encoding = "utf-8", errors = "replace")
say(label, "ok" if rc == 0 else "failed")
# The in-progress marker #7490 writes before spawning the installer.
# The in-progress marker #7490 writes before spawning the installer. RECORDED ONLY,
# never used as repair evidence: both interrupt drivers seed it before every install
# and deliberately never clear it, so it is true on every leg by construction. Using
# it in the verdict below would make REPAIRABLE unconditional and FALSE_READY -- the
# single outcome this workflow exists to catch -- unreachable.
home = Path(os.environ.get("UNSLOTH_STUDIO_HOME") or (Path.home() / ".unsloth" / "studio"))
say("install_in_progress_marker", (home / ".desktop-install-in-progress").exists())
@ -198,7 +202,6 @@ def main(argv: list[str]) -> int:
facts.get("verify_install") == "failed"
or facts.get("desktop_runtime_check") == "failed"
or facts.get("capabilities.studio_install_ok") is False
or facts.get("install_in_progress_marker") is True
or not facts.get("cli_h_ok")
or not facts.get("capabilities_ok")
):