Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 9 additions & 5 deletions .github/workflows/npmpublish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,17 @@ jobs:
steps:
- uses: actions/setup-node@v7
with:
# OIDC trusted publishing needs npm >= 11.5.1, which requires
# Node >= 20.17.0. setup-node's `20` resolves to the latest
# 20.x, which satisfies that.
node-version: 25
# OIDC trusted publishing needs npm >= 11.5.1. Node 24 is an LTS
# line that every npm 11.x and 12.x supports; Node 25 is not —
# npm 12 requires ^22.22.2 || ^24.15.0 || >=26.0.0, so on Node 25
# the upgrade step below died with EBADENGINE and no plugin could
# publish.
node-version: 24
registry-url: https://registry.npmjs.org/
# Pinned to a range rather than @latest: the next npm major dropping
# this Node line would silently break publishing fleet-wide again.
- name: Upgrade npm to >=11.5.1 (required for trusted publishing)
run: npm install -g npm@latest
run: npm install -g npm@^11.5.1
Comment on lines +23 to +33

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Remediation recommended

1. Publishing has no regression test 📘 Rule violation ▣ Testability

The workflow changes the publish runtime and npm version range without adding or updating an
automated test for the previously failing publish path. A future Node or npm compatibility change
can therefore reintroduce the EBADENGINE failure without a test detecting it before publishing is
blocked.
Agent Prompt
## Issue description
The publish workflow bug fix changes the Node and npm versions but adds no automated regression coverage for the compatibility failure described in the PR.

## Fix Focus Areas
- .github/workflows/npmpublish.yml[23-33]

## Recommended Fix
Add or update an automated workflow validation test that exercises the publish setup with Node 24 and verifies the configured npm range satisfies the trusted-publishing minimum without resolving to an incompatible npm major. Name the test after the Node/npm compatibility regression and ensure it would fail against the previous Node 25 plus `npm@latest` configuration.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

- name: Check out Etherpad core
uses: actions/checkout@v7
with:
Expand Down
Loading