jiti 2.7.0
- Source
- https://github.com/unjs/jiti
- Tag scanned
v2.7.0- Compared with
v2.6.1(1 signals introduced since)- Files
- 153 scanned, 6 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 8 info
- Scan time
- 7.7 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 7 of 7 warn and critical signals; 7 demoted to info.
- Disclude version
- 4.1.0
- Scanned (UTC)
- 2026-10-22 17:03
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
const ;likely benign A one-line wrapper around native dynamic import used by jiti to load modules.Reasoning
`const nativeImport = (id) => import(id);` is a thin wrapper that lets jiti load modules through the host's native import. The specifier comes from the caller who asked jiti to load a module, and nothing in the snippet is encoded, hidden, or executed from an opaque source. This is normal behavior for a module loader.
-
-
} return await ; }likely benign A loader's native ESM import of a resolved module path, with fallback handling for Node resolution errors.Reasoning
The snippet is a retry path in a module loader. It imports a resolved path with import attributes and handles ERR_MODULE_NOT_FOUND and ERR_UNSUPPORTED_DIR_IMPORT, which are standard Node loader errors. Dynamic import of a resolved specifier is the core purpose of a transpile-and-load library like jiti, so this is an expected pattern rather than obfuscation.
-
const ; let _transform;likely benign A CJS build's wrapper around native dynamic import for loading modules at runtime.Reasoning
The same `nativeImport` wrapper appears in the CJS build of jiti. A dynamic import whose specifier the caller supplies is required for a runtime TypeScript/ESM loader to function. The snippet shows no obfuscation or concealment.
-
const ; let _transform;likely benign An ESM build's wrapper around native dynamic import for loading modules at runtime.Reasoning
The ESM build has the same `nativeImport` wrapper as the other jiti entry points. Its purpose is to load user modules through the host's native import, which is the library's documented function. The snippet shows nothing suspicious.
-
likely benign A test fixture that calls require on a data URI and expects it to throw.
Reasoning
This is a test fixture for data-URI handling. `require(uri)` is wrapped in try/catch and followed by `throw null`, so the test checks that the require call fails. The non-literal specifier is the point of the test, and it is not used on any untrusted path in shipped code.
-
} await ;likely benign A test fixture that dynamically imports a data URI to test ESM loading.Reasoning
This is another data-URI test fixture, where `await import(uri)` exercises ESM loading of a data URI. The dynamic specifier is intentional test input. The fixture is in the test directory and the snippet has no concealment or execution of decoded payloads.
-
likely benign A test that dynamically imports local fixture modules by name.
Reasoning
In a test file, the template-literal specifier `./fixtures/${fixture}` loops over known fixture names to test loading. The fixtures are local and enumerated by the test. Nothing is decoded or fetched from outside, so this is a normal test pattern.
Reproduce This Scan
Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
&&