name: test-web # Web SPA: vitest + svelte-check. Runs on push to dev/main and PRs to # main, scoped to web/** changes only — Go-only or Flutter-only diffs # don't trigger this workflow. on: push: branches: [dev, main] paths: - 'web/**' - '.forgejo/workflows/test-web.yml' pull_request: branches: [main] paths: - 'web/**' - '.forgejo/workflows/test-web.yml' jobs: test: runs-on: go-ci defaults: run: working-directory: web steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Node uses: actions/setup-node@v4 with: node-version: '22' cache: 'npm' cache-dependency-path: web/package-lock.json - name: Install deps run: npm ci - name: Type-check + svelte-check run: npm run check - name: Vitest run: npm test