npm / playwright / 1.65.0-alpha-2026-10-19
playwright 1.65.0-alpha-2026-10-19
- Source
- https://github.com/microsoft/playwright
- Commit scanned
b335271cdc2b- Directory
packages/playwright- Compared with
b335271cdc2b(0 signals introduced since)- Files
- 132 scanned, 13 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 12 info
- Scan time
- 7.9 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 10 of 10 warn and critical signals; 10 demoted to info.
- Disclude version
- 4.0.0
- Scanned (UTC)
- 2026-10-20 05:56
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
info
warn→ info by reviewdynamic-executionpackages/playwright/src/isomorphic/teleReceiver.ts:462:90privatelikely benign Base64 decoding of test stdout/stderr chunks in a browser-compatible fallback path.Reasoning
atob decodes base64 stdio chunks from the test runner's own IPC messages when Buffer is unavailable. This is ordinary data handling with no fetch or eval following it in the snippet.
-
; ; : stringlikely benign Loads the package's own package.json via a computed path.Reasoning
The require specifier is path.join of the package root and 'package.json', a fixed local file. The non-literal specifier is only a result of the path construction and is not attacker-controlled.
-
const ; const libCoverage = ; const libReport = ; const reports = ;likely benign Loads istanbul coverage libraries through require.resolve with a fixed name list.Reasoning
The specifiers are fixed istanbul module names resolved relative to the configured directory with require.resolve. This is standard plugin/dependency loading.
-
const libCoverage = ; const libReport = ; const reports = ; const context = libReport.likely benign Loads istanbul-lib-report through require.resolve.Reasoning
Same pattern as the preceding line: fixed istanbul module names resolved from the config directory. Nothing in the snippet is user-controlled input reaching the specifier.
-
const libReport = ; const reports = ; const context = libReport.likely benign Loads istanbul-reports through require.resolve.Reasoning
Fixed module name resolved relative to the config directory, consistent with normal reporter dependency loading.
-
...plugins, ...pluginsEpilogue., ], compact: false,likely benign Requires Babel plugins named in the configuration.Reasoning
Plugin names come from the project's own Babel configuration (pluginsEpilogue), so requiring them is the expected behavior of a Babel plugin loader. The specifier is not hidden or encoded.
-
const : = ; const babelResult = ;likely benign Loads the bundled Babel transform module via a helper path.Reasoning
The specifier is libPath to a fixed bundled module 'babelBundle', so the path is static in practice and the dynamic form is only a packaging convenience.
-
info
critical→ info by reviewdynamic-executionpackages/playwright/src/transform/transform.ts:286:29const fileName = url.; const ; // For ESM imports handled by the asynchronous loader, issue a preflight to populatelikely benign Uses eval to preserve a native dynamic import() of an ESM test file.Reasoning
eval is used to emit a real dynamic import() of a file URL. Wrapping it in eval keeps the transpiler from rewriting import() into require() for ESM loading, which is a known, legitimate pattern. The interpolated value is a file path passed through JSON.stringify.
-
info
critical→ info by reviewdynamic-executionpackages/playwright/src/transform/transform.ts:293:13likely benign Eval-wrapped dynamic import of an ESM preflight module with error handling.Reasoning
Same eval-wrapped import() technique used to preflight the ESM loader for a file. The value is a JSON-escaped local path, and failures are caught and logged.
-
} const result = ; const depsCollector = cc.;likely benign Requires the test file being loaded by the runner.Reasoning
This loads the test file being run by the runner, which is the core purpose of the loader. The non-literal specifier reflects that it loads arbitrary user test files by design, not hidden obfuscation.
-
interface TsConfig -
video: VideoMode | /** deprecated */ 'retry-with-video' |
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.
&&