Skip to content

fix(express): bump Dockerfile Node base image to 22.23.4 - #10022

Merged
pritam-gembali merged 2 commits into
masterfrom
zahinmohammad/wcn-3321-runtime-move-bitgo-express-dockerfile-stages-to-fixed-node
Oct 21, 2026
Merged

pritam-gembali merged 2 commits into
masterfrom
zahinmohammad/wcn-3321-runtime-move-bitgo-express-dockerfile-stages-to-fixed-node

Conversation

@zahin-mohammad

Copy link
Copy Markdown
Contributor

Summary

Moves all three stages of the root Dockerfile (filter-packages-json at L5, builder at L15, and the final runtime stage at L37) from node:22.22.0-bookworm-slim to node:22.23.4-bookworm-slim, pinned to the multi-arch index digest sha256:de170b39439eb0e5a3444ad7d60b015614a381e10fecae2e30ec9e735122f38d.

The final stage does not use FROM builder, so the served /usr/local/bin/node comes from its own FROM line. All three lines must move together, otherwise the runtime stays on 22.22.0.

This is a runtime-compliance patch to the fixed Node 22.x floor (22.23.4). It is not a claim of demonstrated exploitability. Stays on the Node 22 major.

Digest provenance

Resolved from Docker Hub, not invented:

$ docker buildx imagetools inspect node:22.23.4-bookworm-slim
MediaType: application/vnd.oci.image.index.v1+json
Digest:    sha256:de170b39439eb0e5a3444ad7d60b015614a381e10fecae2e30ec9e735122f38d

The index includes linux/amd64. The tag was published 2026-10-21.

Not in this PR

Root .nvmrc, flake, CI/engines and modules/bitgo/scripts/upload-tools/Dockerfile are owned by the bitgojs toolchain ticket (WCN-3186).

Verification status

  • NOT RUN: docker build and docker run --rm <image> node --version. Docker was not running where this was prepared. Please run yarn build-docker-express and confirm the reported version is v22.23.4, and that native modules (argon2, secp256k1, blake2b-wasm) rebuild in the builder stage.
  • Compatibility checks (WCN-3324) and rollout evidence (WCN-3327) are tracked on those tickets.

Ticket: WCN-3321
Parent: WCN-3185

🤖 Generated with Claude Code

Move all three stages (filter-packages-json, builder, and the final
runtime stage, which does not inherit from builder) from
node:22.22.0-bookworm-slim to node:22.23.4-bookworm-slim, pinned to the
multi-arch index digest published on Docker Hub. Stays on the Node 22
major.

Ticket: WCN-3321

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@linear-code

linear-code Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

WCN-3321

PLAT-2213

@zahin-mohammad
zahin-mohammad marked this pull request as draft October 21, 2026 18:55
Move the development .nvmrc (root and the four examples) from 24.13.0 to
24.22.1, and the uploader image to node:22.23.4-bookworm pinned by index
digest (same bookworm variant as before, previously floating on node:22).

flake.nix is intentionally unchanged: the newest nodejs_22 in nixpkgs is
22.23.3, below the 22.23.4 floor.

Ticket: WCN-3186
Ticket: WCN-3321

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Unit tests are failing on Node 26.x (Current release line, non-blocking). This is not an LTS version yet, so it does not block merge, but it signals an incompatibility to fix before Node 26.x becomes LTS.

View run

@pritam-gembali
pritam-gembali merged commit 968c09f into master Oct 21, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants