Repository navigation
fix(aot): isolate require namespace markers from imports - #46
Merged
vincentkoc merged 2 commits intoNov 2, 2026
Merged
Conversation
This was referenced Nov 1, 2026
Base automatically changed from
claude/sync-webkit-upstream-20261014
to
openclaw/main
November 2, 2026 06:38
vincentkoc
marked this pull request as ready for review
November 2, 2026 09:22
This was referenced Nov 2, 2026
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.
Compiled require(esm) currently marks the namespace shared by import(). Give require() its own cached live facade, preserving the unmarked import namespace, explicit CommonJS exports, dynamic/mock updates, and host conversion identity. Invalidate captured-export caches when the facade structure changes.
This integrates the fix with the upstream sync landed in PR34. Both branch parents are retained; the sync's upstream history is preserved. The regression keeps the original main entry and admits the second entry used by the host API.
Validation:
The native host proof covers one loaded image. Final Linux/Darwin Release and OpenClaw/Birdclaw qualification is tracked in PR45; the broader Bun Debug suites have investigated timeouts and are not claimed fully passing. No release, tag, shipping pin, or artifact promotion is included.
Current-head CI: Windows ARM64, Linux ARM64 and macOS cross-build pass. Linux native and AOT builds pass (1,509,957 native checks); the consumer phase stops at
upload-pack: not our ref 882b3ce222db5f51adde7dce65bf6262aeb7335f. The source pin, fetch owner and workflow are byte-identical to current main. This is an inherited acquisition failure, not a Bun consumer verdict. #45 replaces that pin with publicly fetchable qualified source and owns the fresh matched consumer gates. Failed consumer acquisition run.