fix(diffs): find Windows browsers when install roots are blank#111257
fix(diffs): find Windows browsers when install roots are blank#111257LZY3538 wants to merge 1 commit into
Conversation
a34affc to
8124505
Compare
|
Codex review: needs maintainer review before merge. Reviewed July 19, 2026, 3:55 AM ET / 07:55 UTC. Summary PR surface: Source +11, Tests +44. Total +55 across 2 files. Reproducibility: yes. from the supplied source-level scenario: on Windows, set the three install-root variables to blank values while a standard Chrome executable remains available; the expected result is that Review metrics: none identified. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Next step before merge
Security Review detailsBest possible solution: Land the focused plugin-boundary fix once the current-base review and required checks confirm that the resolver and regression test still apply cleanly. Do we have a high-confidence way to reproduce the issue? Yes, from the supplied source-level scenario: on Windows, set the three install-root variables to blank values while a standard Chrome executable remains available; the expected result is that Is this the best way to solve the issue? Yes, based on the supplied patch: normalizing optional environment values at the resolver boundary, skipping the invalid local candidate, and retaining documented Windows defaults is narrower and safer than adding configuration or changing Playwright behavior. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 58452de71188. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +11, Tests +44. Total +55 across 2 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
Review history (3 earlier review cycles) |
What Problem This Solves
Fixes an issue where the diffs plugin could fail to find an installed Windows browser when LOCALAPPDATA or ProgramFiles environment entries were present but blank.
Why This Change Was Made
The plugin now treats blank Windows install roots as absent, omits the unsafe relative LOCALAPPDATA candidate, and retains the standard Program Files fallbacks. The change stays inside the diffs plugin boundary.
User Impact
Diff image and PDF rendering can launch the system browser on Windows even under services that export blank install-root variables.
Evidence
Real Windows production proof
Ran the production PlaywrightDiffScreenshotter on Windows with LOCALAPPDATA set to whitespace, both ProgramFiles roots blank, all explicit browser-path variables blank, and PATH empty.
Observed redacted output:
This proves the production resolver selected the standard fallback, launched the real installed Chrome binary, and completed a real render without PATH or environment-root discovery assistance.