GitHub
05/20/2026, 6:49 AMnode:20-alpine → node:22-alpine in both frontend Dockerfiles
• Update .nvmrc from 20 to 22
• Regenerate package-lock.json for consistency
The lock file was generated with Node 22 / npm 10.9 but the Docker builds pinned node:20-alpine (npm 10.8). The npm version mismatch caused npm ci to fail with missing @emnapi packages after merging PRs #829–#833.
Test plan
• npm ci succeeds in node:22-alpine Docker build
• npm run build produces a working frontend bundle
jmpsec/osctrlGitHub
05/20/2026, 8:05 AM