From a30a7692e30c0008919d804be2168a6c792f5eeb Mon Sep 17 00:00:00 2001 From: Mikael Hugo Date: Sat, 25 Apr 2026 18:04:23 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20dist-redirect.mjs=20incorrectly=20rewrit?= =?UTF-8?q?es=20.js=E2=86=92.ts=20for=20node=5Fmodules=20paths=20containin?= =?UTF-8?q?g=20/src/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The resolver guarded on context.parentURL.includes('/src/') to identify in-repo source files, but @google/gemini-cli-core installs to node_modules/@google/gemini-cli-core/dist/src/ which also contains '/src/'. Relative imports from that dist package (e.g. './config/config.js') were incorrectly rewritten to './config/config.ts', causing ERR_MODULE_NOT_FOUND on every test that transitively imports the google-gemini provider. Fix: add !context.parentURL.includes('/node_modules/') guard. Co-Authored-By: Claude Sonnet 4.6 --- src/resources/extensions/sf/tests/dist-redirect.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/resources/extensions/sf/tests/dist-redirect.mjs b/src/resources/extensions/sf/tests/dist-redirect.mjs index f58e05d60..437cf60ea 100644 --- a/src/resources/extensions/sf/tests/dist-redirect.mjs +++ b/src/resources/extensions/sf/tests/dist-redirect.mjs @@ -34,7 +34,7 @@ export function resolve(specifier, context, nextResolve) { // Also handles local imports — skip rewrite for dist/ paths that are real compiled artifacts. else if (specifier.endsWith('.js') && (specifier.startsWith('./') || specifier.startsWith('../'))) { - if (context.parentURL && context.parentURL.includes('/src/')) { + if (context.parentURL && context.parentURL.includes('/src/') && !context.parentURL.includes('/node_modules/')) { if (specifier.includes('/dist/')) { specifier = specifier.replace('/dist/', '/src/').replace(/\.js$/, '.ts'); } else {