ci: use npm ci with caching, validate typedoc links, align Node versions (#533)

- Switch npm install -> npm ci in ci.yml (build, build-wsl) and docs.yml
  to fail on lockfile drift rather than silently tolerating it
- Add cache: npm to all setup-node steps that have a lockfile to hash
  (skipped test-git-install which has no checkout, and WSL which has no
  setup-node action)
- Add TypeDoc link validation step after build (Linux x64 only, matching
  existing single-OS gate pattern for MCPB). Verified passing on main.
- Align all workflows on Node 22 (active LTS) — previously CI used 20
  but publish workflows used 22, so releases were tested on a different
  Node than PRs
- Add engines.node >=20 to package.json so consumers on Node 18 get a
  warning
This commit is contained in:
Olivier Chafik 2026-03-06 17:13:58 +00:00 • committed by GitHub
commit b093e39560
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -16,8 +16,9 @@ jobs:
- uses: oven-sh/setup-bun@v2
- uses: actions/setup-node@v6
with:
node-version: "20"
- run: npm install
node-version: "22"
cache: npm
- run: npm ci
- run: npm run build
- run: npm run docs
- uses: peaceiris/actions-gh-pages@v4