Supply chain improvements#53
Merged
Merged
Conversation
Use Node 26, npm ci, pinned GitHub Actions, and a project npm release-age safeguard.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Update the browser test tooling for the supply-chain refresh and keep Vitest 4's Playwright provider configuration working.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR focuses on supply-chain hardening and dependency/CI modernization for the npm package by tightening CI install behavior, pinning Actions, and upgrading the Vitest browser + Playwright toolchain.
Changes:
- Added an
.npmrcsetting intended as a dependency “release-age” safeguard. - Updated CI/publish workflows to Node 26, pinned
actions/*to commit SHAs, and switched CI installs tonpm ci. - Upgraded Playwright and migrated Vitest browser configuration to the Vitest 4 Playwright provider.
Show a summary per file
| File | Description |
|---|---|
.npmrc |
Adds a min-release-age configuration entry. |
.github/workflows/nodejs.yml |
Moves CI to Node 26, pins Actions by SHA, uses npm ci. |
.github/workflows/publish.yml |
Moves publish job to Node 26 and pins Actions by SHA. |
package.json |
Pins Vitest/browser and Playwright versions; adds Playwright provider package. |
package-lock.json |
Lockfile updates reflecting Vitest/Playwright/Vite transitive changes. |
vitest.config.js |
Updates Vitest browser config to use the Playwright provider API. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 5/6 changed files
- Comments generated: 4
| @@ -0,0 +1 @@ | |||
| min-release-age=3 | |||
Comment on lines
30
to
31
| "license": "MIT", | ||
| "devDependencies": { |
Comment on lines
+17
to
18
| - run: npm ci | ||
| - run: npx playwright install chromium |
| node-version: 26 | ||
| registry-url: https://registry.npmjs.org/ | ||
| cache: npm | ||
| - run: npm ci |
manuelpuyol
approved these changes
Jun 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Files changed
.npmrc.github/workflows/nodejs.yml.github/workflows/publish.ymlpackage.jsonpackage-lock.jsonvitest.config.jsEcosystems detected
Recommendations applied
min-release-age=3.npm installtonpm ci.actions/checkoutandactions/setup-nodeto full commit SHAs for their current releases.npm --ignore-scripts publish --provenancebehavior.1.60.0.4.1.7and added the Vitest 4 Playwright provider package/config.npm audit fix; audit reports 0 vulnerabilities.Could not be applied automatically
4.1.8was within the 3-day release-age window, so this uses4.1.7.Human review notes
@github/remote-form.postpublishscript for GitHub Packages, but the publish workflow preserves--ignore-scripts.Validation
npm installpassed.npm cipassed.npx playwright install chromiumpassed.npm run build --if-presentpassed.npm run check --if-presentpassed.CI=1 npm testpassed, 9 tests.npm auditpassed, 0 vulnerabilities.Non-blocking warnings observed: npm currently warns that
min-release-ageis an unknown project config, and lint reports outdated Browserslist data.