npx and the unversioned npm install execute downloaded third-party code in CI
Source references: 4The examples directly run an npx package, while the library example uses `npm install --save-dev liarjs` without a version or demonstrated lockfile. Pinning `liarjs@0.3` fixes only the top-level version and does not establish a locked, integrity-reviewed dependency tree in these commands.
If the package, a dependency, or a publishing account is compromised, installation or runtime code could read CI environment variables, access the workspace, or use the job token's permissions.
The examples execute `liarjs` through `npx`, and the library example installs it without a version. `liarjs@0.3` pins the top-level version, but the shown commands provide no lockfile or integrity verification; if the package is not cached, the package manager may obtain and execute third-party package code and dependencies from its configured registry. A user can ask for a lockfile, integrity verification, or a pre-reviewed image.
```bashnpx liarjs@0.3 --headless --min-score 60```Show 3 other places
```bashnpm install --save-dev liarjs``````bashdocker run --rm \ --shm-size=1g \ --security-opt seccomp=chrome.json \ -v "$PWD:/w" -w /w node-liarjs \ npx liarjs@0.3 --headless --min-score 60```- Pin the version (`liarjs@0.3` or a dev dependency in the lockfile). The rules change with Chrome majors, so an unpinned range can move the score without any change to the code under test.- A headless job scores lower than a headed one by design. Take the baseline in the same mode the