name: CI on: push: branches: - main pull_request: types: [opened, synchronize, reopened] concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true defaults: run: shell: bash jobs: test: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Install uv uses: astral-sh/setup-uv@v5 with: version: "0.5.30" - name: Initialize environment uses: actions/setup-node@v4 with: node-version-file: package.json cache: yarn cache-dependency-path: yarn.lock - name: Install node modules run: npm install - name: Type-checking run: npm run ts