Expose DedicatedWorkerGlobalScope identity - #110
Merged
wieslawsoltes merged 1 commit intoSep 16, 2026
Merged
wieslawsoltes merged 1 commit into
wieslawsoltes merged 1 commit into
Conversation
wieslawsoltes
merged commit Sep 16, 2026
bd6eba6
into
feature/code-oss-browser-compatibility
4 of 7 checks passed
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.
The packaged Code OSS 1.137.0 audit starts a Monaco module worker, but WebScene's isolated worker global still has the plain object constructor. Code OSS therefore misclassifies the realm as Node, executes
import('module'), and the runtime reports the paired bare-module rejection and Monaco main-thread fallback.This change installs the browser interface chain
DedicatedWorkerGlobalScope -> WorkerGlobalScope -> EventTargetin every dedicated worker realm, with illegal constructors and the standard string tag. The Code OSS-shaped regression uses the sameself.constructor.nametest and intentionally selectsimport('module')when the worker identity is absent.Regression evidence:
TypeError: Unable to resolve bare module specifier: module.The change is based directly on consolidation head
862c75edand does not include Code OSS or AppScene changes. A rebuilt packaged-app run remains the final integration check for removal of the Monaco warning.Fixes #108
Advances #81