name: Test Suite on: push: branches: [ main, nightly ] pull_request: branches: [ main, nightly ] jobs: test: runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, windows-latest] python-version: ["3.11", "3.12", "3.13", "3.14"] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install uv uses: astral-sh/setup-uv@v4 - name: Install system dependencies (Linux) if: runner.os == 'Linux' run: sudo apt-get update && sudo apt-get install -y libolm-dev build-essential - name: Install dependencies run: uv sync --all-extras - name: Lint with ruff run: uv run ruff check nanobot --select F401,F841 - name: Run tests run: uv run pytest tests/