Barazo AppView backend barazo.forum

ci(api): unit test sharding (3x) + path filters + composite action (#129)

- Split 2,114 unit tests across 3 parallel shards using vitest --shard
(~60% faster wall time)
- Add path filters for PRs: skip CI for docs-only or non-code changes.
Full suite always runs on push to main.
- Include composite setup action + lexicons cache + dependency graph
(combines Phase 2 + Phase 3 changes)

authored by

Guido X Jansen and committed by
GitHub
60c12e07 495942a6

+17 -2
+17 -2
.github/workflows/ci.yml
··· 3 3 on: 4 4 pull_request: 5 5 branches: [main] 6 + paths: 7 + - 'src/**' 8 + - 'tests/**' 9 + - 'package.json' 10 + - 'pnpm-lock.yaml' 11 + - 'tsconfig.json' 12 + - 'vitest.config*.ts' 13 + - 'drizzle/**' 14 + - 'drizzle.config.ts' 15 + - '.github/workflows/ci.yml' 16 + - '.github/actions/**' 6 17 push: 7 18 branches: [main] 8 19 ··· 33 44 - run: pnpm typecheck 34 45 35 46 test: 36 - name: Unit Tests 47 + name: Unit Tests (${{ matrix.shard }}/3) 37 48 runs-on: ubuntu-latest 38 49 timeout-minutes: 15 39 50 needs: [lint, typecheck] 51 + strategy: 52 + fail-fast: false 53 + matrix: 54 + shard: [1, 2, 3] 40 55 steps: 41 56 - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 42 57 - uses: ./.github/actions/setup 43 - - run: pnpm test 58 + - run: pnpm vitest run --shard=${{ matrix.shard }}/3 44 59 45 60 test-integration: 46 61 name: Integration Tests