Conversation
|
The real browser case |
|
Follow-up: the first real-browser run was workflow-green but contained Root cause reproduced with the pinned Playwright 1.57 and two concurrent delayed routes: The runner now drains its delayed response promises before unregistering interception and aborts newly arriving requests during shutdown. Rejected in-flight operations still propagate after cleanup. Deterministic Chromium smoke: old lifecycle reproduced the exact |
|
Clean acceptance on lab head
This supersedes the earlier workflow-green run that still contained an unhandled rejection. No merge performed. |
Changes
Wait for in-flight Playwright page route handlers before disposing their browser context. Context cleanup still runs if draining fails. This fixes the link-picker runner teardown error observed during teable-ee #3518 without suppressing route failures.
Verification
route.fetch: Request context disposed; draining routes allows the same request and delayed fulfillment to finish.pnpm check:types: passed, 361 files.No production deployment or automatic merge.