From 7d5a5757cc4786c63be75711a05a1e00929c4118 Mon Sep 17 00:00:00 2001 From: Wesley Simplicio Date: Sat, 9 May 2026 00:04:17 -0300 Subject: [PATCH 1/2] test(ci): run tests/integration in dedicated job Closes #22002 --- .github/workflows/tests.yml | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a92afdfa40dd9..3929ca8a14457 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -53,6 +53,37 @@ jobs: OPENAI_API_KEY: "" NOUS_API_KEY: "" + integration: + runs-on: ubuntu-latest + timeout-minutes: 25 + steps: + - name: Checkout code + uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 + + - name: Install system dependencies + run: sudo apt-get update && sudo apt-get install -y ripgrep + + - name: Install uv + uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5 + + - name: Set up Python 3.11 + run: uv python install 3.11 + + - name: Install dependencies + run: | + uv venv .venv --python 3.11 + source .venv/bin/activate + uv pip install -e ".[all,dev]" + + - name: Run integration tests + run: | + source .venv/bin/activate + python -m pytest tests/integration -v --tb=short + env: + OPENROUTER_API_KEY: "" + OPENAI_API_KEY: "" + NOUS_API_KEY: "" + e2e: runs-on: ubuntu-latest timeout-minutes: 10 From 53480b9514b69fdb78ffbfdc1a288cfebab093f0 Mon Sep 17 00:00:00 2001 From: Wesley Simplicio Date: Sat, 9 May 2026 15:05:59 -0300 Subject: [PATCH 2/2] ci(integration): override pytest marker filter and pass through secrets Default addopts in pyproject.toml includes "-m 'not integration'", so the integration job was running 0 tests despite pointing at tests/integration. Override addopts and pass "-m integration" so the integration-marked tests actually execute. Pass repository secrets through to env vars so tests that require live API keys can run when secrets are configured; with empty secrets the job behaves as before (tests requiring live keys will skip/fail per their own guards). --- .github/workflows/tests.yml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 3929ca8a14457..c59bde1e7a20d 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -76,13 +76,18 @@ jobs: uv pip install -e ".[all,dev]" - name: Run integration tests + # Override the default `-m 'not integration'` from + # pyproject.toml addopts so the integration-marked tests + # actually execute. Pass through repository secrets when + # configured; tests that require live API keys must skip + # gracefully when the corresponding env var is empty. run: | source .venv/bin/activate - python -m pytest tests/integration -v --tb=short + python -m pytest tests/integration -v --tb=short -o addopts= -m integration env: - OPENROUTER_API_KEY: "" - OPENAI_API_KEY: "" - NOUS_API_KEY: "" + OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }} + OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} + NOUS_API_KEY: ${{ secrets.NOUS_API_KEY }} e2e: runs-on: ubuntu-latest