Component
Scripts
Bug Description
OpenSSF Scorecard analysis identifies npm command pinning warnings in our repository. Unpinned package installations create security and reproducibility risks:
- Non-deterministic builds:
npm install can resolve different dependency versions across runs
- Supply chain vulnerability: Unpinned global packages (
@vscode/vsce) may install compromised versions
- Scorecard penalty: These warnings reduce our security score
Affected Files:
| File |
Line |
Current Command |
Issue |
.devcontainer/scripts/post-create.sh |
10 |
npm install |
Should use npm ci |
.github/workflows/extension-package.yml |
56 |
npm install -g @vscode/vsce |
Missing version pin |
.github/workflows/extension-publish.yml |
128 |
npm install -g @vscode/vsce |
Missing version pin |
Expected Behavior
- Replace
npm install with npm ci in devcontainer script (uses lockfile for deterministic installs)
- Pin
@vscode/vsce to version 3.7.1 in GitHub Actions workflows
- OpenSSF Scorecard npm pinning warnings resolved
- Deterministic, reproducible builds
- Improved supply chain security posture
Steps to Reproduce
- Run OpenSSF Scorecard analysis on repository
- Review npm pinning warnings in output
- Check referenced files for unpinned commands
Additional Context
Research documented in .copilot-tracking/research/20260115-npm-pinning-research.md
Component
Scripts
Bug Description
OpenSSF Scorecard analysis identifies npm command pinning warnings in our repository. Unpinned package installations create security and reproducibility risks:
npm installcan resolve different dependency versions across runs@vscode/vsce) may install compromised versionsAffected Files:
.devcontainer/scripts/post-create.shnpm installnpm ci.github/workflows/extension-package.ymlnpm install -g @vscode/vsce.github/workflows/extension-publish.ymlnpm install -g @vscode/vsceExpected Behavior
npm installwithnpm ciin devcontainer script (uses lockfile for deterministic installs)@vscode/vsceto version3.7.1in GitHub Actions workflowsSteps to Reproduce
Additional Context
Research documented in
.copilot-tracking/research/20260115-npm-pinning-research.md