Skip to content

fix: prevent unrelated CommonJS member call targets - #28

Draft
inth3shadows wants to merge 3 commits into
mainfrom
fix/commonjs-missing-member
Draft

inth3shadows wants to merge 3 commits into
mainfrom
fix/commonjs-missing-member

Conversation

@inth3shadows

@inth3shadows inth3shadows commented Nov 9, 2026 •

Copy link
Copy Markdown
Owner

CommonJS default-binding member calls could resolve to an unrelated class when the imported module does not export that member. This change adds the namespace guard, sync dependency tracking, scope checks, and an isolated tokenizer-based export reader while preserving explicitly exported callable aliases.

Draft checkpoint of the current work. Do not merge by itself: known review finding F8 mistakes wrap(eval)("ignored") for grouped direct eval, which can restore a decoy call for a missing member. The separate correction is #29, based on this branch; review and integrate that follow-up before considering this PR for main.

Validation on this checkpoint: 91 focused tests and npm run build passed. The pre-final-eval full suite passed 10,650 tests (2 expected failures, 448 skips), predating the last eval adjustment. The final checkpoint full run was deliberately interrupted after review demonstrated F8. Both native review lanes completed; the intended eval cases passed, but the broad lane reproduced F8. Final combined verification is tracked in #29.

Refs #27. No deployment or upstream report is included.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant