From d61b9b49e1bf40b91c4177ea70b0f2c81e228882 Mon Sep 17 00:00:00 2001 From: Jonathan Haas Date: Sat, 25 Apr 2026 11:32:27 -0700 Subject: [PATCH] =?UTF-8?q?[agent-harness]=20Swap=20pip=20=E2=86=92=20uv?= =?UTF-8?q?=20in=20CI=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace `python -m pip install --upgrade pip` + `pip install -e ".[dev]"` with `astral-sh/setup-uv@v8.1.0` (pinned by SHA) followed by `uv pip install --system -e ".[dev]"`. No version pin changes. Hardens CI against the same PyPI partial-read timeouts that took down post-merge evals on `main` (precedent: evalops/maestro-internal#1492). `uv` resumes partial downloads and retries on connection drops by default, removing a class of transient failures that `pip` cannot recover from. No CLI tool installs in this workflow, so no retry wrapper is needed yet. Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/ci.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ccf586e..74bff9e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,11 +20,13 @@ jobs: uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - + + - name: Install uv + uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + - name: Install dependencies run: | - python -m pip install --upgrade pip - pip install -e ".[dev]" + uv pip install --system -e ".[dev]" - name: Lint with ruff run: |