spb/tools-spboucher-ai
Public
1# Reference workflow (the canonical remote is spbgit, which has no runner; scripts/ci.sh runs the same gates locally and on the node).2name: ci3on: [push, pull_request]4jobs:5 test:6 runs-on: ubuntu-latest7 services:8 postgres:9 image: pgvector/pgvector:pg1710 env: { POSTGRES_PASSWORD: ci, POSTGRES_DB: tools_spboucher_test }11 ports: ["5432:5432"]12 options: --health-cmd pg_isready --health-interval 5s --health-timeout 5s --health-retries 1013 env:14 DATABASE_URL: postgres://postgres:ci@localhost:5432/tools_spboucher_test15 DATABASE_URL_ADMIN: postgres://postgres:ci@localhost:5432/tools_spboucher_test16 TEST_DATABASE_URL: postgres://postgres:ci@localhost:5432/tools_spboucher_test17 SESSION_SECRET: ci-secret18 steps:19 - uses: actions/checkout@v420 - uses: pnpm/action-setup@v421 - uses: actions/setup-node@v422 with: { node-version: 26, cache: pnpm }23 - run: pnpm install --frozen-lockfile24 - run: pnpm typecheck25 - run: pnpm content:validate26 - run: pnpm db:migrate27 - run: pnpm test28 - run: pnpm content:import --publish && pnpm eval:ranking29 - run: pnpm audit --prod --audit-level high || true30