Repository navigation
Conversation
…e package The kernel plugin built the runtime hook paths and the namespace module sets from its own import.meta.url, so a module importing a different copy of @adobe/ecs went unrecognized or bound to the plugin's copy. Copies are now found from the files an importer resolves into, by the nearest package.json named @adobe/ecs, cached per directory; the plugin's own copy keeps its own layout. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… importer's copy Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
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.
Fixes the kernel plugin binding compiled code to its own copy of
@adobe/ecsinstead of the copy the app uses.Bug
An app's
node_modules/@adobe/ecswas linked to a local checkout while its lockfile also pinned the npm copy. In its tests, the modules the kernel plugin transformed bound to one copy and everything else to the other. With two registries, a run failed with "… isn't a registered resource".Cause
paths.tsbuilt every path the plugin injects or recognizes from the plugin's ownimport.meta.url:attach-kernel,prepared-spawnandprepared-lookup;So a module importing a different copy was either left uncompiled, because its System import wasn't recognized, or had imports injected into the plugin's copy.
Fix
package.jsonnamed@adobe/ecs, cached per directory.No public contract changes; only internal compiler code. The version is 0.1.1, the same edit #219 makes, so this PR contains #219's change and #219 can be closed.
Test
plugin.test.tsadds a project whosenode_modules/@adobe/ecsis a separate copy of the built package. Its kernel module gets the hooks injected from that copy and its System declaration gets an id. It was red before the fix ("nothing injected") and is green after.pnpm run buildandpnpm testinpackages/ecspass: 133 files and 1006 tests.🤖 Generated with Claude Code