Bump @fontsource/ibm-plex-sans from 5.2.8 to 5.3.0 in /docs #53
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: Quality | |
| on: | |
| pull_request: | |
| push: | |
| branches: [master, main] | |
| permissions: | |
| contents: read | |
| jobs: | |
| compatibility: | |
| name: Python ${{ matrix.python-version }} compatibility | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ['3.11', '3.12', '3.13', '3.14'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| cache: pip | |
| - run: python -m pip install --upgrade pip | |
| - run: python -m pip install -e '.[dev,control-plane,agents]' | |
| - run: pytest -m 'not integration' | |
| backend: | |
| name: SDK and control-plane tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| services: | |
| postgres: | |
| image: postgres:16 | |
| env: | |
| POSTGRES_DB: actionrail | |
| POSTGRES_USER: postgres | |
| POSTGRES_PASSWORD: postgres | |
| ports: | |
| - 5432:5432 | |
| options: >- | |
| --health-cmd "pg_isready -U postgres -d actionrail" | |
| --health-interval 5s | |
| --health-timeout 5s | |
| --health-retries 10 | |
| mysql: | |
| image: mysql:8.4 | |
| env: | |
| MYSQL_DATABASE: actionrail | |
| MYSQL_ROOT_PASSWORD: mysql | |
| ports: | |
| - 3306:3306 | |
| options: >- | |
| --health-cmd "mysqladmin ping -h localhost -pmysql" | |
| --health-interval 5s | |
| --health-timeout 5s | |
| --health-retries 20 | |
| env: | |
| ACTIONRAIL_TEST_POSTGRES_DSN: postgresql://postgres:postgres@127.0.0.1:5432/actionrail?sslmode=disable | |
| ACTIONRAIL_TEST_MYSQL_DSN: mysql://root:mysql@127.0.0.1:3306/actionrail | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| cache: pip | |
| - run: python -m pip install --upgrade pip | |
| - run: python -m pip install -e '.[dev,control-plane,agents,postgres-binary]' | |
| # Coverage.py's tracer deadlocks the official MCP Streamable HTTP client. | |
| # Keep real transport tests as a required, uninstrumented CI gate. | |
| - name: MCP Streamable HTTP integration tests | |
| run: pytest -vv --timeout=30 -m mcp_transport | |
| - name: Tests with branch coverage | |
| run: coverage run -m pytest -vv --timeout=30 -m 'not mcp_transport' | |
| - name: Enforce SDK branch coverage | |
| run: coverage report --fail-under=90 | |
| - name: Enforce complete direct-runtime branch coverage | |
| run: >- | |
| coverage report | |
| --include='actionrail/sdk/actions.py,actionrail/sdk/runtime.py' | |
| --fail-under=100 | |
| - name: Enforce 100% decision-engine branch coverage | |
| run: >- | |
| coverage report | |
| --include='actionrail/sdk/numeric.py,actionrail/sdk/policy.py,actionrail/sdk/grounding/match.py,actionrail/sdk/pipeline.py,actionrail/sdk/rule_validation.py' | |
| --fail-under=100 | |
| mutation: | |
| name: Rules-engine mutation gate | |
| runs-on: ubuntu-latest | |
| needs: backend | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| cache: pip | |
| - run: python -m pip install --upgrade pip | |
| - run: python -m pip install -e '.[dev,control-plane]' | |
| - name: Mutate decision semantics | |
| run: >- | |
| mutmut run | |
| 'actionrail.sdk.policy.*' | |
| 'actionrail.sdk.numeric.*' | |
| 'actionrail.sdk.grounding.match.x__compare__*' | |
| 'actionrail.sdk.pipeline.*' | |
| - run: mutmut export-cicd-stats | |
| - name: Enforce 95% mutation score | |
| run: >- | |
| python scripts/check_mutation_score.py mutants/mutmut-cicd-stats.json | |
| --minimum-score 95 | |
| --minimum-mutants 400 | |
| frontend: | |
| name: Console tests | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: frontend | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: npm | |
| cache-dependency-path: frontend/package-lock.json | |
| - run: npm ci | |
| - run: npm run lint | |
| - run: npm test | |
| - run: npx playwright install --with-deps chrome | |
| - run: npm run test:browser | |
| docs: | |
| name: Documentation build | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: docs | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: npm | |
| cache-dependency-path: docs/package-lock.json | |
| - run: npm ci | |
| - run: npm run build |