name: Python Lint on: push: paths: - 'src/**' - 'tests/**' - 'pyproject.toml' - 'uv.lock' - '.github/workflows/python-lint.yml' pull_request: paths: - 'src/**' - 'tests/**' - 'pyproject.toml' - 'uv.lock' - '.github/workflows/python-lint.yml' jobs: lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 - uses: astral-sh/setup-uv@v7 - name: Set up Python uses: actions/setup-python@v7 with: python-version: "3.13" - name: Install dependencies run: uv pip install --system -e ".[dev]" - name: Lint with ruff run: | uv run ruff check src/ tests/ uv run ruff format --check src/ tests/ - name: Type check with ty run: uv run ty check src/