name: CI on: push: branches: [main] pull_request: branches: [main] concurrency: group: ci-${{ github.ref }} cancel-in-progress: true jobs: quality: name: lint + typecheck + test + build runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v5 - name: Set up Bun uses: oven-sh/setup-bun@v2 with: bun-version: "1.3.14" - name: Install dependencies run: bun install --frozen-lockfile - name: Lint run: bun run lint - name: Typecheck run: bun run typecheck - name: Unit tests run: bun run test - name: Build run: bun run build - name: Format check run: bun run format:check