Files
Portfolio/.github/workflows/typecheck.yml
T
Patryk-KuchtaandClaude Opus 5 ab7b2fa6f4
Security Audit / Security Vulnerability Scan (pull_request) Failing after 13s
Code Quality Check / Lint & Type Check (pull_request) Failing after 13s
fix: upgrade Node to 24 so the Docker build works with sharp 0.35
sharp 0.35.5 requires Node >=20.9.0, so the node:18-alpine image failed
to load the linuxmusl-arm64 binary and the production build broke.

Move the image and both CI workflows to Node 24 (current Active LTS),
raise the engines floor to the version sharp actually needs, and declare
packageManager to silence the corepack warning.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
2026-10-19 19:37:21 +01:00

72 lines
1.8 KiB
YAML

name: Code Quality Check
on:
push:
branches:
- main
- master
- develop
pull_request:
branches:
- main
- master
- develop
jobs:
quality-check:
name: Lint & Type Check
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '24'
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- name: Setup pnpm cache
uses: actions/cache@v4
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Run ESLint
run: pnpm run lint
- name: Run TypeScript type check
run: pnpm run typecheck
- name: Comment PR on failure
if: failure() && github.event_name == 'pull_request'
uses: actions/github-script@v7
with:
script: |
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: '❌ Code quality check failed. Please run `./windsurf-commands.sh lintfix` and `./windsurf-commands.sh typecheck` locally to fix issues.'
})
- name: Notify on failure
if: failure()
run: |
echo "::error::Code quality check failed. Please fix linting and type errors before merging."