[PR #6186] [MERGED] test(browser): select a bounded service-worker setup deadline #7192

Closed
opened 2026-11-01 21:46:02 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/6186
Author: @gensokyo-dev
Created: 10/21/2026
Status: ✅ Merged
Merged: 10/22/2026
Merged by: @gensokyo-dev

Base: main ← Head: fix/ci-service-worker-setup-deadline


📝 Commits (1)

  • d481f2c test(browser): select a bounded service-worker setup deadline

📊 Changes

1 file changed (+9 additions, -1 deletions)

View changed files

📝 scripts/lib/browser-scenario-service-worker-setup-e2e.mjs (+9 -1)

📄 Description

Summary

The service-worker setup verifier inherits the 20-second CDP command/handshake default but expects the intentionally stalled handshake to terminate within its 12-second test guard. Clean main 8413ec08f reproduces deadline termination did not settle, matching the browser failure on #6019. This is fixture drift following #6036.

Select command_timeout_ms: 2000 only for the deadline probe and record that choice in its receipt. Keep the existing guard, timeout classification, socket release, policy restoration and target reuse assertions, and the cancellation cases. Production defaults and implementations are unchanged.

Validation

  • On clean main, npm run verify:browser failed at the same deadline probe with real Chromium 156.0.8078.4 and Node 24.18.0 on Linux. Failure logs and the original CI run were retained.
  • With this fixture change, the complete real-browser verifier passed, including screenshots, popups, service workers and CLI/stdio MCP. The deadline receipt records 2000, timed_out, socket_closed and target_reused; final owned-process lineage was verified with no descendants.
  • Successful task: 224.938 s elapsed, 225.799 CPU s, 4,869,165,056 bytes sampled peak process-family RSS (20 ms sampling, CPU affinity 0,1, 8 GiB/420 s guard, no guard stop). The baseline stopped early, so this is not a before/after speed comparison. Windows/macOS and other Chrome versions were not run locally.
  • The current-head GitHub real-browser lane passed with Chrome 155.0.8059.84. Its receipt confirms the selected 2000 ms deadline, socket release, target reuse and verified cleanup with no descendants.
  • npm run check:fast passed.

The superseded #6019 run was cancelled after confirming this main baseline failure. After this fix merges, that branch will incorporate it and trigger fresh CI; rerunning its old immutable merge revision would still execute the broken fixture.

Author readiness

Human owner: @gensokyo-dev

Opened ready under the owner's explicit instruction; personal-review declarations remain for the human owner.

  • I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work.
  • I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps.
  • I declare this PR ready for initial maintainer review.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/6186 **Author:** [@gensokyo-dev](https://github.com/gensokyo-dev) **Created:** 10/21/2026 **Status:** ✅ Merged **Merged:** 10/22/2026 **Merged by:** [@gensokyo-dev](https://github.com/gensokyo-dev) **Base:** `main` ← **Head:** `fix/ci-service-worker-setup-deadline` --- ### 📝 Commits (1) - [`d481f2c`](https://github.com/morluto/rea/commit/d481f2c622d4a1e7768558d25323c1168769a3eb) test(browser): select a bounded service-worker setup deadline ### 📊 Changes **1 file changed** (+9 additions, -1 deletions) <details> <summary>View changed files</summary> 📝 `scripts/lib/browser-scenario-service-worker-setup-e2e.mjs` (+9 -1) </details> ### 📄 Description ## Summary The service-worker setup verifier inherits the 20-second CDP command/handshake default but expects the intentionally stalled handshake to terminate within its 12-second test guard. Clean main `8413ec08f` reproduces `deadline termination did not settle`, matching the [browser failure on #6019](https://github.com/morluto/rea/actions/runs/39694087310/job/119548220955). This is fixture drift following #6036. Select `command_timeout_ms: 2000` only for the deadline probe and record that choice in its receipt. Keep the existing guard, timeout classification, socket release, policy restoration and target reuse assertions, and the cancellation cases. Production defaults and implementations are unchanged. ## Validation - On clean main, `npm run verify:browser` failed at the same deadline probe with real Chromium 156.0.8078.4 and Node 24.18.0 on Linux. Failure logs and the original CI run were retained. - With this fixture change, the complete real-browser verifier passed, including screenshots, popups, service workers and CLI/stdio MCP. The deadline receipt records `2000`, `timed_out`, `socket_closed` and `target_reused`; final owned-process lineage was verified with no descendants. - Successful task: 224.938 s elapsed, 225.799 CPU s, 4,869,165,056 bytes sampled peak process-family RSS (20 ms sampling, CPU affinity 0,1, 8 GiB/420 s guard, no guard stop). The baseline stopped early, so this is not a before/after speed comparison. Windows/macOS and other Chrome versions were not run locally. - The [current-head GitHub real-browser lane](https://github.com/morluto/rea/actions/runs/39696167922/job/119555183177) passed with Chrome 155.0.8059.84. Its receipt confirms the selected 2000 ms deadline, socket release, target reuse and verified cleanup with no descendants. - `npm run check:fast` passed. The superseded #6019 run was cancelled after confirming this main baseline failure. After this fix merges, that branch will incorporate it and trigger fresh CI; rerunning its old immutable merge revision would still execute the broken fixture. ## Author readiness Human owner: @gensokyo-dev Opened ready under the owner's explicit instruction; personal-review declarations remain for the human owner. - [ ] I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work. - [ ] I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps. - [x] I declare this PR ready for initial maintainer review. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-11-01 21:46:02 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#7192
No description provided.