From 8b0d2570fa07e600742400447c722d09f212ceab Mon Sep 17 00:00:00 2001 From: John McKean Date: Mon, 28 Sep 2026 08:00:18 +0800 Subject: [PATCH] Hold TypeScript at 6.x until typescript-eslint supports 7 Dependabot PR #288 (typescript 6.0.3 -> 7.0.2) fails CI with 'typescript-eslint does not support TS 7.0'. Ignore typescript >=7 in the npm update config, as for ESLint 10, and assert it in the CI workflow contract test. Co-Authored-By: Claude Opus 5.5 --- .github/dependabot.yml | 3 +++ scripts/ci-workflow.test.mjs | 1 + 2 files changed, 4 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index bd13c5a2..d59ed044 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -24,6 +24,9 @@ updates: # Keep Node types aligned with the production Node 24.x runtime (PR #269). - dependency-name: "@types/node" versions: [">=25"] + # typescript-eslint does not support TypeScript 7 yet; CI fails with that error (PR #288). + - dependency-name: typescript + versions: [">=7"] groups: # Group minor + patch updates so we don't get a flood of PRs minor-and-patch: diff --git a/scripts/ci-workflow.test.mjs b/scripts/ci-workflow.test.mjs index abc79f12..1496d3fa 100644 --- a/scripts/ci-workflow.test.mjs +++ b/scripts/ci-workflow.test.mjs @@ -28,6 +28,7 @@ const ignore = npmUpdates.split(/^ ignore:$/m)[1]?.split(/^ [\w-]+:/m)[0] assert.ok(ignore, 'Dependabot npm updates must have an ignore block') assert.match(ignore, /^ - dependency-name: eslint\n versions: \[">=10"\]$/m) assert.match(ignore, /^ - dependency-name: "@types\/node"\n versions: \[">=25"\]$/m) +assert.match(ignore, /^ - dependency-name: typescript\n versions: \[">=7"\]$/m) // The guard decides whether the Supabase-backed steps can run at all. const guard = step('Resolve Supabase build credentials')