feat(#231): LLM benchmark v2 — typed assertions, skill-trace, LLM-as-Judge, CI migration #10
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Analysis Regression | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| paths: | |
| - 'backend/**' | |
| - 'scripts/**' | |
| - 'tests/**' | |
| - 'sclaw' | |
| - 'sclaw_cn' | |
| - 'package.json' | |
| - '.github/workflows/analysis-regression.yml' | |
| push: | |
| branches: | |
| - master | |
| paths: | |
| - 'backend/**' | |
| - 'scripts/**' | |
| - 'tests/**' | |
| - 'sclaw' | |
| - 'sclaw_cn' | |
| - 'package.json' | |
| - '.github/workflows/analysis-regression.yml' | |
| permissions: | |
| contents: read | |
| jobs: | |
| analysis-regression: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 20 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Install Linux system dependencies for OpenSeesPy | |
| if: runner.os == 'Linux' | |
| run: sudo apt-get update && sudo apt-get install -y --no-install-recommends gfortran libopenblas-dev | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: 24 | |
| - name: Install backend dependencies | |
| run: npm install --prefix backend | |
| - name: Generate Prisma client | |
| run: npm run db:generate --prefix backend | |
| - name: Build backend | |
| run: npm run build --prefix backend | |
| - name: Setup analysis Python | |
| run: node ./sclaw setup-analysis-python | |
| - name: Run Analysis Regression | |
| run: node tests/runner.mjs analysis-regression |