pnpm 12.15.0
- Source
- https://github.com/pnpm/pnpm
- Artifact scanned
pnpm-12.15.0.tgz- Compared with
pnpm-12.14.0.tgz(0 signals introduced since)- Files
- 8 scanned, 6 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 2 info
- Scan time
- 3.8 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 1 of 1 warn and critical signal; 1 demoted to info.
- Disclude version
- 4.3.0
- Scanned (UTC)
- 2026-10-23 18:57
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
- -
const = await .likely benign pnpm's CLI launcher dynamically imports a downloader module (via a GET_PNPM constant) to fetch the pnpm binary for the current platform.Reasoning
The dynamic import targets GET_PNPM, a module-level constant that the snippet does not show, and the surrounding code is pnpm's own launcher. It downloads the pnpm binary for the current platform and fails with a clear message if the downloader module is missing. That is a plausible bootstrap pattern for a package manager, not obfuscation. The residual doubt is that the specifier is non-literal and its value is not visible here, so a tampered constant could redirect the import.
Reproduce This Scan
Run disclude locally to verify. These commands scan the published file; the "new in this release" marks come from comparing it with the previous release's file, which they don't repeat. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
|
&&