name: CI on: push: branches: [main, feature/*] pull_request: branches: [main] jobs: ci: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: oven-sh/setup-bun@v2 with: bun-version: latest - name: Install dependencies run: bun install --frozen-lockfile - name: Type check run: bun run typecheck - name: Test with Coverage run: | set -o pipefail bun test --coverage --coverage-reporter=lcov 2>&1 | grep -vE '^\s*(\(pass\)|\(skip\))' | sed '/^.*\/__tests__\/.*:$/d' | cat -s - name: Upload coverage to Codecov uses: codecov/codecov-action@v5 with: file: ./coverage/lcov.info token: ${{ secrets.CODECOV_TOKEN }} - name: Build run: bun run build:vite