ci(plugins): use npm i for root install to tolerate override drift

The root lockfile pins app-builder-lib's transitive minimatch via the
`overrides` field. npm 10.9.7 (bundled with Node 22 in setup-node@v6)
flags this as drift and fails `npm ci`, while npm 11 accepts it.
ci.yml's main test job uses `npm i`, which tolerates the drift without
mutating the lockfile on disk.

Plugin-Tests has been red on every PR since 2026-05-08 for this reason.
The inner `npm ci` for plugin-specific deps stays strict.
This commit is contained in:
Johannes Millan 2026-05-13 21:22:02 +02:00
parent 0b21524e29
commit 24f8d390b6

View file

@ -94,8 +94,12 @@ jobs:
key: ${{ runner.os }}-node22-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node22-
# Mirror ci.yml: use `npm i` here, not `npm ci`. The root lockfile uses
# an `overrides.app-builder-lib.minimatch` pin that npm 10 (bundled with
# Node 22) considers out-of-sync, while npm 11 accepts it. `npm i`
# tolerates the drift without altering the lockfile on disk.
- name: Install root dependencies
run: npm ci
run: npm i
# Plugins consume @super-productivity/plugin-api and vite-plugin via file:
# references that resolve to dist/. Build those before running plugin tests.
- name: Build shared packages