Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .github/workflows/typecheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Typecheck

on:
pull_request:
push:
branches: [ main ]

permissions:
contents: read

jobs:
typecheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Node.js version below project's minimum requirement

Medium Severity

The workflow uses node-version: 18, but package.json specifies "engines": { "node": ">=20.10" }. The existing release.yaml workflow correctly uses node-version 24. Running typechecks with an unsupported Node.js version may produce incorrect results or fail.

Fix in Cursor Fix in Web

- run: npm ci
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Workflow uses npm but project requires pnpm

High Severity

The workflow uses npm ci but this project uses pnpm as its package manager (specified in package.json with "packageManager": "pnpm@9.15.4"). The project only has a pnpm-lock.yaml, not a package-lock.json, so npm ci will fail. The existing release.yaml workflow shows the correct approach: enable corepack and use pnpm install --frozen-lockfile.

Fix in Cursor Fix in Web

- run: npm run typecheck
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Workflow references non-existent typecheck script

High Severity

The workflow runs npm run typecheck, but no typecheck script exists in package.json. The scripts section only defines build, lint, deploy, and test. This CI job will always fail.

Fix in Cursor Fix in Web