Skip to content

[agent] Failed to update typescript #646

Description

@claude

Failed dependency update

Package: typescript
From: 6.0.3To: 7.0.2

Error

Step 1 (pnpm update-outdated-deps, sub-step update-outdated-deps:fix-pkg-json) failed, and pnpm lint fails the same way. ESLint cannot even load its flat config:

Oops! Something went wrong! :(

ESLint: 9.39.2

TypeError: Cannot read properties of undefined (reading 'Cjs')
    at node_modules/.pnpm/@typescript-eslint+typescript-estree@8.54.0_typescript@7.0.2/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js:59:14
    at .../@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js:45:18
    at .../typescript-eslint/dist/index.js:7:41
    at eslint.config.ts:1:218

Root cause

TypeScript 7 removed/renamed the ts.ModuleKind.Cjs enum member that @typescript-eslint/typescript-estree reads at module load time.

The repository intentionally excludes typescript-eslint from automated updates (update-outdated-deps:update-versions runs pnpm update -r --latest !eslint !@eslint/js !typescript-eslint !useless-lib), so it stays pinned at 8.54.0, which is not TypeScript 7 aware.

Additionally, @workleap/eslint-configs@2.0.4 declares "typescript": "^6.0.3" as a peer dependency, so TypeScript 7 is out of range for the shared config chain regardless of the typescript-eslint pin.

What was tried

  • Ran the update, which bumped typescript to 7.0.2 in all 35 workspace package.json files.
  • Confirmed the failure is a load-time crash inside @typescript-eslint/typescript-estree, not a lint rule violation, so no source migration can resolve it.
  • Bumping typescript-eslint was not an option: it is on the update exclusion list, and @workleap/eslint-configs peer-requires typescript@^6.
  • Reverted typescript to 6.0.3 across all workspace packages; the remaining updates then validated successfully.

Unblocking this

TypeScript 7 likely needs to wait for @workleap/eslint-configs to widen its typescript peer range and for the pinned typescript-eslint version to gain TypeScript 7 support. Note that pnpm typecheck already runs tsgo (@typescript/native-preview), so type checking is unaffected by this pin — only the ESLint chain is.

Workflow run

https://github.com/workleap/wl-squide/actions/runs/30370554419

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions