Repository navigation
fix: e2e tools pin their chromium, finish downloads, and keep to their tab - #2328
Merged
Merged
Conversation
…r tab From the 2.90.0 release run on staging: - config.js picks the chromium build the installed playwright-core was made for, not the newest on disk; under chrome 156 the viewport shrank and login.js clicked sign up instead of log in - launch.js stands in for the save dialog headless chromium refuses, saving to $E2E_DIR/downloads/, so a download runs the app's own path to the end - step.js and login.js act on launch.js's tab, found by the target id it records, so a second tab can't take its place - the guide: journey 9 checks the saved bytes, and the quirks cover downloads, second tabs, WSL load times and the current dialog wording Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019ZiqyGae4T1gJLGGB29pR9
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 20 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Oct 21, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes the e2e tooling problems found by the 2.90.0 release run on staging (all 14 journeys passed, but only after working around these).
Changes
config.jsused the newest Chromium in~/.cache/ms-playwright. On this machine that's 1248 (Chrome 156), but the pinnedplaywright-core1.48.2 is built for 1140. Under 156 the viewport fell back to 1440x700, then to 780x380 after each reconnect, andlogin.jsclicked Sign up instead of Log in. It now uses the build named inplaywright-core'sbrowsers.json.CHROMEstill overrides it.showSaveFilePickerwith anAbortError, so journey 9's download always ended in "Download cancelled".launch.jsnow puts a stand-in picker on every page. It saves to$E2E_DIR/downloads/<name>through an exposed binding, chunk by chunk. Everything after the dialog runs the app's own path (createWritable, then a write per chunk).step.jsandlogin.jsusedpages()[0]. With two tabs open, that was the new tab, so a step closedlaunch.js's own tab along with its guard and logs.launch.jsnow records its tab's target id in$E2E_DIR/main-target, and both scripts find that tab by it (config.jsmainPage).docs/WEB_E2E_TESTING.md)./mnt/con WSL (10 s to about a minute per step).Verified on staging (
0c0f12c78), test walletchromePath()resolveschromium-1140.launch.jsstarts, records its tab, andlogin.js unlocklands on the drive list at 1440x900.launch.js's tab and closing the other tab leaves it running.rel290-renamed-50k.bin): Download finished!,net.loglogsdownload … 51200 bytes, andcmpwith the file uploaded earlier in the run says identical. The file was decrypted in the page and saved through the stand-in.node --checkpasses on every script.0 AR spent, no uploads.
🤖 Generated with Claude Code
https://claude.ai/code/session_019ZiqyGae4T1gJLGGB29pR9