From 3cd3195e3f28b98803dafb14a5f596ec6564f808 Mon Sep 17 00:00:00 2001 From: null Date: Wed, 8 Jul 2026 03:42:18 -0500 Subject: [PATCH] =?UTF-8?q?build(functions):=20bump=20runtime=20Node=2020?= =?UTF-8?q?=20=E2=86=92=2022=20(Node=2020=20decommissioned=202026-10-30)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Node 20 was deprecated 2026-04-30 and deploys are blocked after 2026-10-30. nodejs22 is GA for BOTH gens (deprecation 2027-04-30) — required because the runtime is codebase-wide and onUserDelete stays gen1. nodejs24 was checked per plan and rejected: 2nd-gen only. - functions/package.json engines.node 20 → 22 (the deploy-facing change; dist unaffected) - .github/workflows/backend-ci.yml: both setup-node pins 20 → 22 so CI matches prod Verified pre-deploy: tsc clean, 70 tests green, emulator discovery loads all 35 / 0 errors. Co-Authored-By: Claude Opus 4.8 --- .github/workflows/backend-ci.yml | 4 ++-- functions/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/backend-ci.yml b/.github/workflows/backend-ci.yml index e11a4b7a..ca81be95 100644 --- a/.github/workflows/backend-ci.yml +++ b/.github/workflows/backend-ci.yml @@ -22,7 +22,7 @@ jobs: - uses: actions/setup-node@v4 with: - node-version: "20" + node-version: "22" cache: npm cache-dependency-path: functions/package-lock.json @@ -51,7 +51,7 @@ jobs: - uses: actions/setup-node@v4 with: - node-version: "20" + node-version: "22" cache: npm cache-dependency-path: firestore-tests/package-lock.json diff --git a/functions/package.json b/functions/package.json index b54f1888..cb3c92ec 100644 --- a/functions/package.json +++ b/functions/package.json @@ -3,7 +3,7 @@ "version": "1.0.0", "private": true, "engines": { - "node": "20" + "node": "22" }, "main": "dist/index.js", "scripts": {