fix(v3/windows): raise the WebView2 embed timeout to 60s - #6043
Conversation
A cold WebView2 launch on a loaded CI runner occasionally takes longer than 30s, so Embed gave up and TestCookieManager failed. The timeout is a backstop for a callback that never arrives, not a startup budget, and it costs nothing when initialisation succeeds.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 10 included reviews per hour; 7 remain after this review. WalkthroughThe WebView2 controller initialization timeout increases from 30 seconds to 60 seconds. ChangesWebView2 timeout
Estimated code review effort: 1 (Trivial) | ~2 minutes Merge Risk: ⚪ Minimal · up to This localized change only extends the WebView2 initialization timeout to accommodate slow cold starts; no actionable merge-blocking risk remains beyond normal checks and review. Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Full details: Docstring CoverageExplanation No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1 files. Full details: Description checkExplanation The description explains the failure, motivation, implementation, linked issue, testing performed, test limitations, configuration, and checklist status. It identifies that Windows-only tests could not run locally and that Windows CI provides validation. ✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
…e the WebView2 embed timeout to 60s
Description
This run failed with:
A cold WebView2 launch creates the user data folder and spawns the browser process tree, and on CI it does that while
go test ./...saturates the runner. Isolated on the same commit the test passes in ~10s, so 30s is simply tight rather than wrong.embedTimeoutis a backstop for a callback that never arrives, not a startup budget (its own comment says so), and it costs nothing when initialisation succeeds becausepumpUntilInitedreturns as soon as the controller is ready. Raised to 60s.Fixes #6042
Type of change
How Has This Been Tested?
GOOS=windows go build ./internal/webview2/...andgo veton the package. Vet reports two pre-existingpossible misuse of unsafe.Pointerwarnings, unchanged by this commit (confirmed by stashing it). The Windows CI leg on this PR runsTestCookieManageritself.Cross-compiled and vetted from macOS. I have no Windows machine to run the test on, so the PR's Windows leg is the real check.
Test Configuration
Cross-compile only,
GOOS=windows GOARCH=amd64, Go 1.25.Checklist:
website/src/pages/changelog.mdxwith details of this PR (v3 changelog entries are added automatically)The affected test is Windows-only, so I could not run it locally; no new test added since this changes a constant.
Summary by CodeRabbit