Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Dev error overlay treats the benign "ResizeObserver loop completed with undelivered notifications." as an unhandled error

Closed Beginner friendly
#4,115 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

A pull request for this has already been merged.

  • #4126 by @james-elicx — merged

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
82/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
playwright, typescript, vite
Domain
devtools, testing

Research direction

Read installDevErrorOverlay() in dist/client/dev-error-overlay.js, especially its window error handler, then check the existing tests for the dev error overlay. Reproduce the ResizeObserver message in Chromium and verify it does not mount the blocking overlay when event.error is null; confirm genuine script errors still appear.

Written by the indexing model from the issue text.

Description

What happens

installDevErrorOverlay() (dist/client/dev-error-overlay.js, unchanged in 1.2.1) reports every window error event that has a message, even when event.error is null:

} else if (event.message) reportDevError(new Error(event.message), { source: "window-error" });

Chromium fires a window error event with event.error === null and the message "ResizeObserver loop completed with undelivered notifications." whenever a ResizeObserver callback causes a layout change in the same frame. The spec treats this as benign: the remaining notifications are delivered next frame. No script failed.

vinext then mounts __vinext_dev_error_overlay_root ("Unhandled Script Error"), which covers the page and intercepts clicks.

Repro sketch

A Base UI Menu (Floating UI autoUpdate observes the trigger with a ResizeObserver) whose trigger animates its width while the popup is still mounted. In our Playwright suite against vite dev, the next click on the page then hits the overlay and times out, so the test flakes.

Expected

Ignore this message when event.error is null, or more generally don't open the blocking overlay for error events without an Error object.

Versions

vinext 1.1.0 and 1.2.1, Chromium (Playwright), macOS and Ubuntu CI.

Dominant language
TypeScript
Stars
9.2k
Forks
449
Avg merge
1d 2h
Merged PRs (30d)
450

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from cloudflare/vinext

All issues in cloudflare/vinext

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.