Skip to content

chore: add npm >=11.10 engine constraint to enforce min-release-age - #918

Open
Xsidz wants to merge 2 commits into
PrimeIntellect-ai:mainfrom
Xsidz:fix/enforce-npm-version
Open

chore: add npm >=11.10 engine constraint to enforce min-release-age#918
Xsidz wants to merge 2 commits into
PrimeIntellect-ai:mainfrom
Xsidz:fix/enforce-npm-version

Conversation

@Xsidz

@Xsidz Xsidz commented Aug 8, 2026

Copy link
Copy Markdown

Summary

  • Added "npm": ">=11.10" to the root engines field in package.json.

Without this constraint, min-release-age=7 in .npmrc is silently ignored by npm < 11.10, allowing dependency installs and version scripts to bypass the 7-day supply-chain cooldown. The engine floor makes the requirement explicit and enforced.

Test plan

  • npm run check passes (biome, tsgo, installer render, browser smoke)
  • Running npm version (11.17.0) satisfies the new constraint — no false block

Fixes #874

Note

Add npm >=11.10 engine constraint with strict enforcement

  • Adds npm: '>=11.10' to the engines field in package.json to enforce the minimum npm version required for min-release-age support.
  • Sets engine-strict=true in .npmrc so that npm install errors out when the engine constraints are not met.
  • Risk: developers and CI using npm <11.10 will see install failures until they upgrade.

Macroscope summarized c7bd09d.

Copilot AI lite review requested due to automatic review settings August 8, 2026 09:17

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR aims to ensure the repo’s min-release-age=7 supply-chain cooldown is not silently bypassed by older npm versions by declaring an npm version floor via engines in the root package.json.

Changes:

  • Added "npm": ">=11.10" to the root package.json engines field.
  • Documented the change in packages/coding-agent/CHANGELOG.md under [Unreleased].

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
package.json Adds an npm engine constraint intended to surface a mismatch when using npm versions that don’t enforce min-release-age.
packages/coding-agent/CHANGELOG.md Adds an Unreleased entry describing the new npm engine constraint and its motivation.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread package.json
Comment thread packages/coding-agent/CHANGELOG.md Outdated

@Xsidz Xsidz left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. Added engine-strict=true to .npmrc in the follow-up commit (0c2d1cc3) — this makes installs with npm < 11.10 fail outright rather than just warn, so the constraint is now a hard gate. Also updated the changelog wording to say "fail fast instead of silently ignoring" rather than "actually enforced".

@Xsidz
Xsidz force-pushed the fix/enforce-npm-version branch 4 times, most recently from ffb32de to 154a044 Compare August 11, 2026 19:04
Siddhesh Kabra added 2 commits August 12, 2026 23:05
Older npm versions silently ignore the min-release-age=7 setting in
.npmrc. Adding the engine floor makes the supply-chain cooldown
actually enforced instead of advisory.

fixes PrimeIntellect-ai#874
engine-strict makes the engines.npm>=11.10 constraint a hard failure
instead of a warning, so installs with older npm actually fail rather
than silently proceeding without min-release-age enforcement.

Also tightens the CHANGELOG wording to accurately describe the
behavior (fail-fast vs. advisory).
@Xsidz
Xsidz force-pushed the fix/enforce-npm-version branch from 154a044 to c7bd09d Compare August 12, 2026 17:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enforce npm >= 11.10 so min-release-age is actually applied

2 participants