name: Build on: push: branches: - main pull_request: branches: - main - base permissions: contents: read concurrency: group: build-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: ${{ github.event_name == 'pull_request' }} jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: 24 cache: npm cache-dependency-path: package-lock.json - name: Install dependencies run: | npm ci --ignore-scripts npm rebuild node-pty - name: Check repository harness run: npm run harness:check - name: Test with coverage run: npm run test:coverage - name: Build run: npm run build