From 03dcfc010a383ebbbda729f58ca4b2830a2899f5 Mon Sep 17 00:00:00 2001 From: ernestprovo23 Date: Mon, 8 Jun 2026 21:48:20 -0400 Subject: [PATCH 1/2] ci: add GitHub Actions test workflow (PR-A) Matrix test on Python 3.11/3.12/3.13 with pip caching; runs on push to main and all pull requests. Job name 'pytest / pyX.Y' is stable for required-check registration in PR-E. --- .github/workflows/test.yml | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..ae2513f --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,37 @@ +name: Test + +on: + push: + branches: ["main"] + pull_request: + +jobs: + test: + name: "pytest / py${{ matrix.python-version }}" + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + python-version: ["3.11", "3.12", "3.13"] + + steps: + - uses: actions/checkout@v4 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Cache pip + uses: actions/cache@v4 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('pyproject.toml') }} + restore-keys: | + ${{ runner.os }}-pip-${{ matrix.python-version }}- + + - name: Install package with dev extras + run: pip install -e ".[dev]" + + - name: Run tests + run: pytest -q From 6aba3e304c2449f9ffaf3bd964d75e24911608d1 Mon Sep 17 00:00:00 2001 From: ernestprovo23 Date: Mon, 8 Jun 2026 21:50:05 -0400 Subject: [PATCH 2/2] fix: add pythonpath=["."] to pytest config so tests.conftest resolves in CI test_council and test_modes both use `from tests.conftest import make_response`. Without the project root on sys.path, this import fails in fresh GitHub Actions environments where tests/ is not installed as a package. --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index 6085857..6708a58 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,3 +35,4 @@ packages = ["src/conclave"] [tool.pytest.ini_options] asyncio_mode = "auto" testpaths = ["tests"] +pythonpath = ["."]