GitHub Actions runs the workflow in .github/workflows/ci.yml on:
pull_requestpushtomain
- Validates
docker compose config
npm ci- Install dependenciesnpm run lint- ESLint checknpm audit --omit=dev --audit-level=high- Security auditnode --check src/index.js- Syntax validation
npm ci- Install dependenciesnpm run lint- ESLint checknpm run typecheck- TypeScript type checkingnpm audit --omit=dev --audit-level=high- Security auditnpm run build- Production build
- Spins up MySQL + API containers
- Validates health endpoints
- Tests auth flow (login, password change)
- Tests CRUD + RBAC (readonly vs admin)
- Script:
scripts/compose-integration-test
- Script:
- CI uses
.node-version(Vite 7 requires Node 20.19+ or 22.12+). - Lint failures will block PRs - run
npm run lint:fixlocally to auto-fix issues. - Type errors will block PRs - run
npm run typecheckin the UI directory to check.