Repository navigation
fix(tests): the uv stand-in is a uv.cmd on Windows so PATH lookup reaches it (#692) - #956
Conversation
…ches it (#692) On Windows shutil.which matches only PATHEXT names and CreateProcess cannot run an extensionless script, so the installer tests ran the runner's real uv on the real uv.lock: 6 setup errors in test_installer_rerun_keeps_entries and WinError 193 in test_fake_uv_pip_filename (run 38008915302, job 114084097957). Refs #692 Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_018kyZYtdo2dSatDGTjdztJQ
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Claude finished @cdeust's task in 2m 13s —— View job Review 1 of 3: PR #956
No Blockers. The review lists three Notes that need no action before merge. Nothing was run on Windows. Verdict: approve |
Review 1 of 3: PR #956 (commit
|
Summary
Sous Windows, le stand-in
uvdes tests d'installeur était un script sans extension.shutil.which("uv")ne retient que les noms dePATHEXT, etCreateProcessne sait pas lancer un script sans extension (WinError 193). Le lanceur prenait donc le vraiuvdu runner et installait le vraiuv.lockdans le répertoire deps du test, si bien que les paquets sondes (probeyaml,probens) n'apparaissaient jamais. Le log du run 38008915302 (job 114084097957) le montre :{'bin', 'probens', 'probeyaml'} <= {'FlashRank-0…', '_yaml', …}. Sous Windows, le stand-in devient unuv.cmdqui lance le même script avecsys.executable. Le comportement POSIX ne change pas, et aucun code de production n'est touché.Tranche classe 9 « installer rerun » de l'issue (6 erreurs de setup dans
test_installer_rerun_keeps_entries, plustest_fake_uv_pip_filenameen WinError 193).Refs #692
Type of change
Test plan
pytest tests_py/scripts/ --ignore tests_py/scripts/test_mutation_isolation.py(Linux) : 1922 passed, 15 skipped, 6 failed. Les 6 échecs viennent detest_ci_mutation_scope.pyet échouent à l'identique sans ce diff :mutmutn'est pas installé dans l'environnement de l'autopilot.test_mutation_isolation.pyn'est pas collecté, pour la même raison.test_fake_uv_resolution.py:shutil.which("uv", path=…)doit résoudre vers le stand-in sur la plateforme courante. Sous Windows, c'est précisément l'assertion qui échouait avant le correctif. La variantewindows=Truevérifie aussi le contenu exact duuv.cmd(en CRLF) et que le script réponduv <UV_VERSION>.uv.cmdfait échouertest_windows_stand_in_runs_the_script_with_this_interpreter.ruff checketruff format --check(0.17.3) passent sur les 3 fichiers touchés. Surmain,ruff checkdu dépôt entier signale déjà 8 E501 dans d'autres fichiers, sans rapport avec ce diff.python scripts/check_craftsmanship.py: OK.Audit notes
uv.cmdparshutil.whichni son exécution parCreateProcessn'ont été observées sous Windows. Il faudra les confirmer par la prochaine mesure Windows de Windows: full-suite debt of 194 failing tests (measured 2026-10-10), fix order by root cause #692.test_installer_upgrade_single_versionde type « Windows Subsystem for Linux has no installed distributions » (bashrésolu vers WSL) relèvent d'une autre cause.Reviewer checklist
Generated by Claude Code