GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — fix(ci): regenerate the npm wrapper lock with CI's npm major by mikolalysenko · Pull Request #234 · SocketDev/socket-patch

Conversation

@mikolalysenko

@mikolalysenko Mikola Lysenko (mikolalysenko) commented Aug 28, 2026 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Collaborator

Summary

release-readiness is red on main (and on every PR): the version-sync.sh 4.0.0 is not a no-op gate fails on npm/socket-patch/package-lock.json.

Root cause: the lock refresh in #233 was generated with npm ≥ 11, which writes libc platform arrays on the optional platform-package entries. The CI runner's npm 10 does not emit that field, so npm install --package-lock-only inside version-sync.sh strips 24 lines and the no-op check fails — on main itself, independent of any PR content.

This regenerates the lock with CI's npm major (npx npm@10 install --package-lock-only --ignore-scripts), making the gate a no-op again. Verified locally: with this lock, npm 10 regeneration is byte-stable.

Follow-up included (731d322): version-sync.sh now runs the lock refresh through npx --yes npm@10, so the gate's canon no longer depends on the runner default or the developer's local npm. Without the pin, anyone refreshing the lock with npm ≥ 11 would re-introduce the libc fields (verified: npm 11.16 fresh-resolve writes 8 of them; npm 10 writes none and reproduces this PR's lock byte-for-byte), and the gate would flip in reverse the day the runner image jumps to npm 11. Bumping the pin is now a deliberate commit that refreshes the lock alongside it.

Not addressed here (separate, also main-wide): hosted-e2e fails because production no longer publishes a free patch for pkg:cargo/[email protected] (the suite's pinned cargo leg; the public proxy now returns not_found for it). Fixing that needs a catalog decision — republish the patch, or pick a replacement pinned package per the suite's own guidance.

🤖 Generated with Claude Code


Note

Low Risk
Lockfile-only change with no application code; risk is limited to install/resolution metadata consistency across npm versions.

Overview
Regenerates npm/socket-patch/package-lock.json so it matches what CI’s npm 10 writes when version-sync.sh runs npm install --package-lock-only.

The diff removes the optional libc arrays (glibc / musl) from the Linux @socketsecurity/socket-patch-* platform entries. Those fields appear when the lock is refreshed with npm ≥ 11; npm 10 omits them, so the release-readiness version-sync no-op check was failing even on unrelated changes.

No runtime or package logic changes—only lockfile metadata so the gate stays byte-stable on the runner.

Reviewed by Cursor Bugbot for commit 640a0a5. Configure here.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Mikola Lysenko (mikolalysenko) and others added 2 commits August 28, 2026 11:43
@mikolalysenko @claude
fix(ci): regenerate the npm wrapper lock with CI's npm major
640a0a5
release-readiness regenerates the lock with the runner's npm 10, which
does not write the `libc` platform arrays npm >= 11 emits — so the
npm-11-shaped lock from #233 makes 'version-sync.sh 4.0.0 is not a
no-op' fail on every PR and on main. The check's npm is the effective
canon; note the npm-major dependence for whoever next refreshes the
lock locally.

Co-Authored-By: Claude Fable 5 <[email protected]>
@mikolalysenko @claude
fix(ci): pin the npm wrapper lock refresh to npm@10 via npx
731d322
The release-readiness gate re-runs version-sync.sh and compares the
regenerated npm/socket-patch/package-lock.json byte-for-byte, so the
lock's canonical shape is defined by whatever npm regenerates it. npm 11
adds libc arrays that npm 10 omits, which is how the #233 refresh (made
locally with npm 11) broke the gate under CI's npm 10 — and the same
drift would recur in reverse the day the runner image jumps to npm 11.
Pinning the refresh via npx makes the gate independent of both the
runner default and the developer's local npm; bumping the pin now takes
a deliberate commit that refreshes the lock alongside it.

Co-Authored-By: Claude Fable 5 <[email protected]>
This was referenced Sep 1, 2026
test(e2e): demote the cargo production legs to canary status — free cargo tier is unpublished #235
Merged
Coverage audit: 39 bug fixes + test extension to 98.2% line coverage #236
Merged
Tanmay182003
Tanmay Singla (Tanmay182003) approved these changes Sep 3, 2026
View reviewed changes
@mikolalysenko
Merge branch 'main' into fix/ci-npm-wrapper-lock
5d0799d
@mikolalysenko
Mikola Lysenko (mikolalysenko) merged commit 742ca05 into main Sep 8, 2026
68 checks passed

Uh oh!

There was an error while loading. Please reload this page.

@mikolalysenko
Mikola Lysenko (mikolalysenko) deleted the fix/ci-npm-wrapper-lock branch September 8, 2026 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@Tanmay182003 Tanmay Singla (Tanmay182003) Tanmay182003 approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@mikolalysenko @Tanmay182003
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.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.