Lint, formatting, and type checks are already enforced by prek pre-commit hooks, so CI now focuses on running the actual test suites instead. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.7 KiB
1.7 KiB
title, status, type, priority, created_at, updated_at
| title | status | type | priority | created_at | updated_at |
|---|---|---|---|---|---|
| Replace CI pipeline with test suite | completed | task | normal | 2026-02-21T13:01:01Z | 2026-02-21T13:10:15Z |
Replace the current .github/workflows/ci.yml with a workflow that runs the actual test suites. The existing jobs (lint, format, type check) are already enforced by pre-commit hooks (prek), so CI should focus on test execution instead.
Context
- Backend integration tests: pytest with
TEST_DATABASE_URLpointing at a postgres service container. Default URL:postgresql+asyncpg://postgres:postgres@localhost:5433/nuzlocke_test. Tests live inbackend/tests/. - Frontend unit tests: vitest (
npm run test -- --run). No external services needed. - E2e tests: Playwright.
e2e/global-setup.tsusesdocker compose -p nuzlocke-test -f docker-compose.test.yml up -d --buildto start a test API + DB, then seeds data via the API.playwright.config.tsspins upnpm run devas the webServer. Need to install Chromium vianpx playwright install --with-deps chromium.
Checklist
- Add
backend-testsjob: postgres service container (image postgres:16-alpine, user/pass/db matching conftest defaults), install deps withuv, runpytest backend/tests/ -q - Add
frontend-testsjob: node 24,npm ciinfrontend/, runnpm run test -- --run - Add
e2e-testsjob: install Docker Compose, install Playwright + Chromium deps, runnpx playwright testfromfrontend/; upload HTML report as artifact on failure - Keep the
actions-lintjob (actionlint + zizmor); removebackend-lintandfrontend-lintjobs - Pin all action versions to SHA with version comments; pass
zizmoraudit