From 747261ba4827c4347c9cfaa9633428399d9ed029 Mon Sep 17 00:00:00 2001 From: naveenkumar982 Date: Sun, 6 Sep 2026 23:10:58 +0530 Subject: [PATCH 1/2] fix: recognize missing Python stdlib modules --- packages/engine/src/external-dependencies.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/engine/src/external-dependencies.ts b/packages/engine/src/external-dependencies.ts index 6cee2dd..1b661a3 100644 --- a/packages/engine/src/external-dependencies.ts +++ b/packages/engine/src/external-dependencies.ts @@ -67,7 +67,9 @@ const PYTHON_STDLIB_ROOTS = new Set([ "tempfile", "threading", "time", + "tomllib", "traceback", + "types", "typing", "unittest", "urllib", From 0240f611aa0d6bbe5261b61d62080b68c05ff8c6 Mon Sep 17 00:00:00 2001 From: naveenkumar982 Date: Sun, 6 Sep 2026 23:11:03 +0530 Subject: [PATCH 2/2] test: cover missing Python stdlib modules --- .../external-dependencies-regression.test.mjs | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 tests/external-dependencies-regression.test.mjs diff --git a/tests/external-dependencies-regression.test.mjs b/tests/external-dependencies-regression.test.mjs new file mode 100644 index 0000000..41748ce --- /dev/null +++ b/tests/external-dependencies-regression.test.mjs @@ -0,0 +1,20 @@ +import assert from "node:assert/strict"; +import test from "node:test"; + +import { isPythonStdlibSpecifier } from "../packages/engine/dist/external-dependencies.js"; + +test("Python stdlib detection recognizes common Python 3.12 modules", () => { + assert.equal(isPythonStdlibSpecifier("hashlib"), true); + assert.equal(isPythonStdlibSpecifier("types"), true); + assert.equal(isPythonStdlibSpecifier("tomllib"), true); + assert.equal(isPythonStdlibSpecifier("types.SimpleNamespace"), true); + assert.equal(isPythonStdlibSpecifier("tomllib.loads"), true); +}); + +test("Python stdlib detection does not classify third-party imports as stdlib", () => { + assert.equal(isPythonStdlibSpecifier("requests"), false); + assert.equal(isPythonStdlibSpecifier("pydantic"), false); + assert.equal(isPythonStdlibSpecifier("toml"), false); + assert.equal(isPythonStdlibSpecifier(".") , false); + assert.equal(isPythonStdlibSpecifier("..local_module"), false); +});