Spec amendment 3 — full carrier dissolution + pragma plugin contract (Phase P, load-bearing) #172
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: Lint | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| ruff: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.12' | |
| - name: Install ruff | |
| # Pin exactly — formatter output changes subtly across minor | |
| # versions and CI-vs-local-vs-pre-commit all need to agree. | |
| # Bump this + the pre-commit `rev` in lockstep. | |
| run: python -m pip install 'ruff==0.9.10' | |
| # `ruff format --check` is the strict gate — every committed file | |
| # must be in ruff-format form. Run this first so the formatter | |
| # can also catch syntax errors early. | |
| - name: ruff format --check | |
| run: ruff format --check src tests tools examples | |
| # `ruff check` is also a gate — the per-file-ignores in | |
| # pyproject.toml tolerate the patterns we've consciously kept | |
| # (test-fixture import-star, auto-generated benchmark unused | |
| # vars, etc.), so anything that surfaces here is a real issue. | |
| - name: ruff check | |
| run: ruff check src tests tools examples |