From d1cf93f9df994e936c56f4604c53c335c2be49d3 Mon Sep 17 00:00:00 2001 From: Alex Waygood Date: Tue, 1 Sep 2026 12:24:23 +0100 Subject: [PATCH 1/2] Disable uv caching for stubsabot --- .github/workflows/stubsabot.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/stubsabot.yml b/.github/workflows/stubsabot.yml index 9996d6cab635..b9290c51f004 100644 --- a/.github/workflows/stubsabot.yml +++ b/.github/workflows/stubsabot.yml @@ -28,6 +28,8 @@ jobs: - uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0 with: version-file: "requirements-tests.txt" + # Test jobs can populate this cache; stubsabot has push credentials. + enable-cache: false - name: Git config run: | git config --global user.name stubsabot From 3d30cf1ccb95aa71d6f11dcdcd4ea7ac8598b645 Mon Sep 17 00:00:00 2001 From: Alex Waygood Date: Tue, 1 Sep 2026 12:34:36 +0100 Subject: [PATCH 2/2] Explain stubsabot cache poisoning risk --- .github/workflows/stubsabot.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/stubsabot.yml b/.github/workflows/stubsabot.yml index b9290c51f004..7ca0a0cbd7b2 100644 --- a/.github/workflows/stubsabot.yml +++ b/.github/workflows/stubsabot.yml @@ -28,7 +28,9 @@ jobs: - uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0 with: version-file: "requirements-tests.txt" - # Test jobs can populate this cache; stubsabot has push credentials. + # A compromised dependency in a test job on main could poison the shared + # uv cache. Restoring it here could execute attacker-controlled code + # with access to stubsabot's SSH key and GitHub token. enable-cache: false - name: Git config run: |