name: Heavy tests on: workflow_dispatch: schedule: - cron: '17 3 * * *' concurrency: group: heavy-tests-${{ github.ref }} cancel-in-progress: true jobs: unit-tests: name: Heavy and isolated unit tests runs-on: ubuntu-latest timeout-minutes: 30 steps: - uses: actions/checkout@v7 - uses: ./.github/actions/setup-bun with: lfs: 'true' - name: Build packages run: bun run build:packages - name: Heavy fixture unit tests run: bun run test:unit:heavy # Fresh global object per file: a suite that only passes because an # earlier file initialized a codec, loaded a font or left a database # open fails here instead of flaking in a PR shard. - name: Quick unit tests with per-file isolation if: ${{ !cancelled() }} run: bun run test:unit:isolated