Repository navigation
chore(deps): move viewer to Angular 22.2.3 and Node 24.22.0 - #209
Conversation
Keep supported Node and Angular LTR pins together. Drop openssl-legacy-provider now that production builds succeed on Node 24. Stub Cesium @spz-loader so the custom-webpack optimizer stays green.
Angular 22 forces Babel on matched browserslist deps. The webpack-dev-server client logger hit the same crash path as jszip, so e2e serve never became ready.
Replacing devServer.proxy dropped /backend and /middleware from proxy.conf.e2e.json, so Playwright setup got 404 on admin login.
Babel on the HMR client left bare `import hotEmitter` in polyfills and whitescreened login. E2E and local serve do not need that client.
webpack-dev-server hangs then dies mid Playwright suite under Angular 22; build once and proxy /backend + /middleware from a tiny static host.
Stops a stale document (including bare Not found) from sticking on SPA routes when a previous worker or cache answered /auth/login.
CodeQL flagged user path data flowing into http.request via URL resolution. Keep hostname/port on the fixed localhost targets and normalize the inbound path before forwarding.
Webpack builder deprecation (operator note)Warning-only. CI Stay on webpack for #209. CHANGELOG |
Angular 22 warns that the webpack browser builder is deprecated; keep custom-webpack for this LTR pin until Cesium/@spz-loader can move.
Status: ISSUES (not STACK-READY)Tip: Root cause addressedPrior mid-suite Shipped: Best verified run
Remaining 2 in that run:
Blocker for EXIT=0Repeated follow-up full runs are aborted by port contention / SIGKILL (137) from concurrent agents on Do not merge until a clean EXIT=0 is recorded. |
STACK-READY (stack e2e:viewer) — no further merge neededPR tip Stack fix that unblocked password/catalog (pushed to stack Earlier contaminated runs (EADDRINUSE / SIGKILL 137 / mid-suite admin Chrome responsive shots landed under stack No merge action from this agent. |


Why
Operators need a supported Node and Angular LTR pair. Angular 19 does not support Node 24, so both move together to Angular 22.2.3 and Node 24.22.0.
What changed
^24.22.0 || ^26.0.0.@angular-builders/custom-webpackfor the api-sitna copy and proxy; stub@spz-loader/coreand skip Babel onjszip/utilso production optimize stays green.--openssl-legacy-providerfrom build scripts and CI after production builds succeed without it.Scope
front/Dockerfileopenssl flag tostack-pointers.Tradeoffs
@angular/build:application, because the api-sitna asset copy, process polyfill, and catastro proxy already live there.Blast Radius
Verification
npm run lintexit 0npm run build -- --configuration=production --base-href=/sitmun-viewer-app/exit 0 (initial total 4.59 MB)npm run test:coverage123 suites / 1409 tests passed on Node v24.22.0 with@angular/core22.2.3