Skip to content

fix(deps): upgrade uv.lock for Critical/High advisories (13 Critical + 116 High -> 4 + 15); adapt agent_xray to gradio 6 - #50

Open
vanessasalas-cog wants to merge 10 commits into
mainfrom
devin/1791212967-uv-lock-security-bumps
Open

vanessasalas-cog wants to merge 10 commits into
mainfrom
devin/1791212967-uv-lock-security-bumps

Conversation

@vanessasalas-cog

@vanessasalas-cog vanessasalas-cog commented Oct 5, 2026 •

Copy link
Copy Markdown

Summary

2026-11-03: NLTK model-path sandbox fix

Advisory Severity / CVSS Change
CVE-2026-81726 / GHSA-8mgp-746c-j5xp High; CVSS 3.1 7.0 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:L) nltk 3.10.3 → 3.10.4; regenerated only its version and artifact hashes in uv.lock

The advisory was published earlier, but its GHSA record was updated 2026-11-02 to mark 3.10.4 fixed; the PYSEC alias still incorrectly identifies 3.10.3 as fixed. This is an actionable update, not a newly published November 2 CVE.

Compatibility / impact: runtime transitive dependency via browsergym → browsergym-webarena / browsergym-visualwebarena → libwebarena / libvisualwebarena → nltk. Both parents have unconstrained nltk requirements, and the project Python range is compatible. The upstream changelog documents stricter trusted-data-directory, network and parser restrictions; legitimate corpora/models must live in approved nltk.data.path directories. No sandbox-disable workaround was added. AgentLab/WebArena use word_tokenize; model-artifact API reachability from untrusted input was not established, so no false-positive dismissal is claimed.

Verification (macOS arm64 / Python 3.12):

  • Frozen all-extras sync, uv lock --check, Black (62 files), source compilation, and wheel/sdist build pass.
  • Targeted regression: allowed-root model save/load succeeds; outside-root reads and writes are rejected in 3.10.4. The same check reproduces the outside-root read in 3.10.3.
  • punkt_tab download, word_tokenize, Treebank tokenization and BLEU scoring pass.
  • pytest tests -m "not pricy" -n 5: 59 passed / 15 skipped / 9 failed. A separate worktree at the prior PR head 552b31e, with NLTK 3.10.3 supplied via an isolated import overlay and the same other dependencies, reproduces the same nine failures: seven need MiniWoB setup; two fail Ray startup. Live benchmark/browser and paid-LLM flows were not verified.
  • Re-audit removes this advisory with no added advisories: 8 Critical / 36 High → 8 Critical / 35 High (source-labelled, canonical package/GHSA counts). One additional older Transformers advisory has no source severity label but has a CVSS 3.0 vector corresponding to 7.8 (High); it is not counted as clean. Historical counts elsewhere in this description are from earlier snapshots.

CI: all 10 checks passed on 8b54a92, including the Linux agentlab job, formatting, Python compatibility (3.10/3.11/3.12), Snyk, Socket and Devin Review.

Architecture review — this incremental patch only
The detector flagged the changed PyPI artifact URLs as T3; this is a false positive because files.pythonhosted.org was already used for NLTK and no runtime vendor or outbound integration was introduced. Manual diff review confirms the patch-only exception.

ARB triage: NO_ARB
Triggers:
- none: existing transitive dependency patch bump only; no manifest, infrastructure, runtime or contract change
Not triggered: T1, T2, T3, T4, T5, T6, T7, T8, T9
Required next steps: none

Review checklist

  • Confirm NLTK resolves to 3.10.4 for supported deployment environments.
  • Smoke-test WebArena/VisualWebArena with the deployment's real corpus paths.
  • Confirm CI and review the previously documented residual risks below.

Original remediation summary

A fresh scan of the locked environment (uv export + Snyk / pip-audit, severities cross-checked against OSV) reported 13 Critical and 115 High advisories across 25 packages. This PR re-locks only the affected packages (plus the pins that were blocking them) with uv lock --upgrade-package ...; pyproject.toml constraints are unchanged and every new version satisfies the existing >= ranges. After the change the locked tree has 4 Critical / 15 High, all in packages that cannot move further (see "Residual").

Package Before -> After Before (C/H) Example advisories
nltk 3.9.1 -> 3.10.4 4C / 22H CVE-2026-0847, CVE-2026-0846, CVE-2025-14009
gitpython 3.1.45 -> 3.2.0 1C / 22H CVE-2026-87819, CVE-2026-67326
litellm 1.75.3 -> 1.80.0 3C / 6H CVE-2026-35030, CVE-2026-49468 (partially fixed, see residual)
ray 2.48.0 -> 2.59.0 3C / 2H CVE-2023-48022, CVE-2025-62593, CVE-2025-34351
torch 2.2.2 -> 2.14.1 1C / 1H CVE-2025-32434, CVE-2026-24747
anyio 4.10.0 -> 4.14.2 1C CVE-2026-63374
pillow 11.3.0 -> 12.3.0 13H CVE-2026-40192, CVE-2026-54059
tornado 6.5.2 -> 6.5.10 8H CVE-2026-31958, CVE-2025-67725
urllib3 2.5.0 -> 2.8.0 6H CVE-2026-44431, CVE-2025-66418
pyasn1 0.6.1 -> 0.6.4 5H CVE-2026-23490, CVE-2026-30922
gradio 5.41.1 -> 6.17.3 3H CVE-2026-28416, CVE-2026-28414, CVE-2026-48545
mcp 1.10.1 -> 2.3.0 3H CVE-2025-66416, CVE-2026-59950
starlette 0.47.2 -> 1.7.0 3H CVE-2026-54283, CVE-2025-62727
python-multipart 0.0.20 -> 0.0.32 3H CVE-2026-24486, CVE-2026-53539
virtualenv 20.33.1 -> 21.14.5 3H CVE-2026-102930 (dev-only, via pre-commit/ray)
aiohttp, soupsieve 3.12.15 -> 3.14.3 (now 3.14.5, see below), 2.7 -> 2.10 2H each CVE-2025-69223, CVE-2026-49477
brotli, msgpack, orjson, protobuf, pyarrow 1.2.0, 1.2.3, 3.12.0, 7.36.2, 25.0.1 1H each CVE-2025-6176, CVE-2026-57585, CVE-2025-67221, CVE-2026-0994, CVE-2026-25087
black, click (dev) 25.1.0 -> 26.10.0, 8.2.1 -> 8.5.0 1C / 2H PYSEC-2026-2120, PYSEC-2026-2132
fsspec (added 2026-10-06) 2026.2.0 -> 2026.9.0 1H CVE-2026-104851 / GHSA-27vj-qcqg-25rc (SSTI -> RCE in ReferenceFileSystem, CVSS 8.8; transitive via torch/dask/datasets/huggingface-hub, published 2026-10-05)
aiohttp (+yarl), added 2026-10-20 3.14.3 -> 3.14.5 (yarl 1.20.1 -> 1.25.1, required by aiohttp>=3.14.4) 2H CVE-2026-111064 / GHSA-5wr8-gcqf-gqf3 (server lacks initial request/header timeout), GHSA-2g87-pp6c-29x5 (excessive/unbounded memory/CPU use); transitive, both published 2026-10-19, fixed in 3.14.4
certifi, added 2026-10-21 2025.8.3 -> 2026.10.19 1C PYSEC-2026-4320 / GHSA-6q48-6c7w-9gw2 (bundled emSign root CAs whose intermediate CA keys were compromised; fixed in 2026.10.18 by removing those roots). Transitive via requests/httpx; affects every TLS connection that trusts the certifi bundle. Published 2026-10-20
virtualenv, added 2026-10-22 21.14.5 -> 21.14.12 2H CVE-2026-113725, CVE-2026-113722 (dev-only, via pre-commit/ray)
gitpython, brotli, black, added 2026-10-23 3.2.0 -> 3.2.1, 1.2.0 -> 1.2.1, 26.10.0 -> 26.10.1 1H / 1H (CVSS4 AV:N, OSV has no severity label) / 1H gitpython CVE-2026-114145 / GHSA-83vg-56qc-22m7 (submodule .git path validated only after clone -> RCE; used by reproducibility_util.py); brotli PYSEC-2026-4322 / CVE-2026-111497 (out-of-bounds write in the decoder; transitive); black CVE-2026-114134 / GHSA-cg8m-r9f2-5wm2 (dev-only; the advisory targets the black GitHub Action, which CI does not use — code_format.yml runs uv run black — bumped anyway because it is a patch release)
filelock, added 2026-10-24 4.0.12 -> 4.2.4 on Python >=3.11; 4.0.12 -> 4.1.0 on Python 3.10 1H (+2 Low) CVE-2026-112940 / GHSA-v4x8-3wr5-3wq8 (CVSS 3.1 7.1, AV:L: ReadWriteLock reopens its SQLite DB by name, so a planted symlink/journal file lets a local attacker make the lock owner overwrite/unlink its own files; transitive via torch/huggingface-hub/datasets/virtualenv, GHSA published 2026-10-23, fixed in 4.2.1). Also clears CVE-2026-112907, CVE-2026-112913 (Low)
pyasn1, added 2026-10-31 0.6.4 -> 0.6.5 4H CVE-2026-119194 / GHSA-fm9c-5rcf-2q5p, CVE-2026-119195 / GHSA-9m75-vc3g-4x39, CVE-2026-119196 / GHSA-2qm8-x737-gmw5, CVE-2026-119197 / GHSA-mm57-4v3p-rchx (published 2026-10-29/30, fixed in 0.6.5). Transitive via google-auth -> rsa / pyasn1-modules (pyasn1-modules 0.4.2 and rsa accept 0.6.5)

Code change (gradio 6): gradio 5 -> 6 removes show_copy_button / show_download_button and moves theme=/css= from gr.Blocks(...) to .launch(...). src/agentlab/analyze/agent_xray.py is adapted accordingly:

- with gr.Blocks(theme=gr.themes.Soft(), css=css) as demo:
+ with gr.Blocks() as demo:
...
- gr.Markdown(elem_classes="error-report", show_copy_button=True)
+ gr.Markdown(elem_classes="error-report", buttons=["copy"])
- gr.Image(..., show_download_button=False)
+ gr.Image(..., buttons=[])
...
- demo.launch(server_port=port, share=do_share)
+ demo.launch(server_port=port, share=do_share, theme=gr.themes.Soft(), css=css)

Platform trade-off — Intel macOS is dropped. PyTorch 2.2.x was the last line with macOS x86_64 wheels; every torch release that fixes CVE-2025-32434 / CVE-2026-24747 is arm64/Linux/Windows only, so the new lock cannot uv sync on Intel Macs (ray 2.59 likewise). CI runs on Linux and is unaffected. If Intel-Mac development must remain supported, the alternative is a marker-split torch dependency in pyproject.toml that keeps 2.2.2 on Darwin/x86_64 and accepts the two torch findings there — maintainer decision requested.

Residual (not fixable in this PR, documented for risk acceptance):

  • litellm stops at 1.80.0 (3C/8H remain, fixed in 1.83–1.84): newer litellm needs openai>=2, but libwebarena / libvisualwebarena pin openai<2.
  • transformers stops at 4.57.6 (1C/5H remain, fixed in 5.x): libwebarena / libvisualwebarena pin transformers<5.
  • lxml 5.4.0 (1H, fixed in 6.1.0): pinned <6 by browsergym-core, sacrebleu, weblinx-browsergym.
  • text-generation 0.7.0 (1H, fixed in 3.3.7): pinned by libwebarena / libvisualwebarena.
  • filelock on Python 3.10 only stays affected (4.1.0): every fixed release (4.2.1+) declares requires-python >=3.11 and the project allows >3.10, so uv forks the lock by Python version. AgentLab code does not import filelock or use ReadWriteLock. Fully fixed if the project raises its floor to 3.11.
  • pillow 12.3.0 (6H published 2026-10-19/20, e.g. GHSA-58r4-6rv3-gfh8, GHSA-p4wg-p73j-c528; fixed only in 13.0.0, no 12.x backport): gradio (latest 6.30.0) still pins pillow<13 (streamlit 1.66.1 now allows <14); as of 2026-10-24 this includes 2 Critical (GHSA-w889-685w-c8fh, GHSA-332p-7hrc-92wf), and pillow 13 needs Python >=3.11 while the project allows >3.10. Re-checked 2026-10-31: latest gradio 6.31.0 still declares pillow<13.0,>=8.0.
    Unblocking these requires upstream releases of the webarena packages (or dropping them), which is out of scope for a lockfile PR.

Verification

  • uv sync --frozen --extra dev --python 3.12 succeeds (macOS arm64).
  • pytest tests -m "not pricy": 60 passed, 8 failed, 15 skipped — the same 8 failures occur on main with the old lock (tests/agents/test_agent.py, tests/experiments/test_launch_exp.py; all need MINIWOB_URL / a running MiniWoB server). No new failures.
  • AgentXray UI: run_gradio() builds all 91 blocks under gradio 6.17.3 with launch stubbed; not driven interactively in a browser.
  • black --check src/ (CI code_format.yml runs the locked black, now 26.10.0): black 26 changed its style for multi-line f-string call arguments, so six untouched files (generic_agent.py, generic_agent_prompt.py, most_basic_agent.py, visual_agent_prompts.py, episode_to_html.py, reproduce_study.py) are reformatted in a separate formatting-only commit (style: reformat with black 26.10, +30/-63, whitespace/parenthesis changes only).
  • 2026-10-06 follow-up (fsspec): uv sync --frozen --extra dev OK, pip-audit shows no fsspec findings; pytest tests -m "not pricy" 59 passed / 9 failed / 15 skipped — the 8 known failures plus tests/experiments/test_ray.py::test_execute_task_graph ("node timed out during startup", raylet waiting on the dashboard agent's metrics port file). That ray failure reproduces identically with fsspec pinned back to 2026.2.0, so it is environmental on the verification host, not caused by the bump.
  • 2026-10-20 follow-up (aiohttp/yarl): only aiohttp and yarl versions change in uv.lock (other hunks are uv re-normalising environment markers, no version changes). uv lock --check and uv sync --frozen --extra dev --python 3.12 OK; pip-audit shows no aiohttp findings and no Critical/High yarl findings, and the residual Critical/High package set is unchanged (litellm, lxml, nltk, text-generation, transformers). black src/ --check OK. pytest tests -m "not pricy": 59 passed / 9 failed / 15 skipped — the same 8 known MiniWoB failures plus the macOS ray startup timeout (test_execute_task_graph) as on the 2026-10-06 run.
  • 2026-10-21 follow-up (certifi): uv lock --upgrade-package certifi changes only certifi in uv.lock. uv lock --check, uv sync --frozen --extra dev --python 3.12 OK; HTTPS request with requests against the new bundle succeeds. pip-audit + OSV: certifi finding gone; remaining Critical/High packages are litellm, lxml, nltk, pillow (new, blocked as above), text-generation, transformers. black src/ --check OK. pytest tests -m "not pricy": 59 passed / 9 failed / 15 skipped — identical to the 2026-10-20 run (8 MiniWoB + macOS ray startup timeout).
  • 2026-10-23 follow-up (gitpython/brotli/black): uv lock --upgrade-package gitpython --upgrade-package brotli --upgrade-package black changes only those three versions in uv.lock. uv sync --frozen --extra dev --python 3.12 OK; black src/ --check OK with black 26.10.1 (no reformat). pip-audit + OSV: the three findings are gone and no new advisory IDs appear; pillow remains blocked (gradio 6.30.0 still declares pillow<13.0). pytest tests -m "not pricy": 59 passed / 9 failed / 15 skipped, same as the 2026-10-21 run (8 MiniWoB + macOS ray startup timeout).
  • 2026-10-24 follow-up (filelock): uv lock --upgrade-package filelock changes only filelock entries in uv.lock (split into 4.1.0 for python_full_version < '3.11' and 4.2.4 for >= '3.11'). uv lock --check OK; uv sync --frozen OK on Python 3.10, 3.11 and 3.12 (the python_version_compatibility.yml matrix); black src/ --check OK. pip-audit + OSV (Python 3.12 markers): the three filelock findings are gone and no new advisory IDs appear. pytest tests -m "not pricy" (ray test file deselected): 58 passed / 8 failed / 15 skipped, the same 8 failures at the previous head 89a19b6 (5 test_agent.py + 2 test_launch_exp.py need MINIWOB_URL; test_launch_system_ray is the macOS ray startup timeout).
  • 2026-10-31 follow-up (pyasn1): uv lock --upgrade-package pyasn1 --python 3.12 changes only the pyasn1 entry in uv.lock. uv lock --check OK; uv sync --frozen --extra dev --python 3.12 OK and import pyasn1, rsa, google.auth reports pyasn1 0.6.5. pip-audit + OSV (Python 3.12 export): the four pyasn1 findings are gone and no new advisory IDs appear. black src/ --check OK. pytest tests -m "not pricy": 59 passed / 9 failed / 15 skipped, the same known set (5 test_agent.py + 3 test_launch_exp.py need MINIWOB_URL; 1 macOS ray startup timeout in test_ray.py).

Impact: runtime dependencies (torch, transformers, gradio, ray, litellm are all imported by agentlab). Several bumps are major (gradio 5->6, mcp 1->2, starlette 0.47->1.x, protobuf 6->7, pyarrow 21->25, torch 2.2->2.14); only gradio needed a code change for import/build, but downstream behaviour should be smoke-tested.

Architecture review

ARB triage: ARB_LIGHT
Triggers:

  • T7 (minor): major-version bumps of existing libraries inside one repo (gradio 5->6, torch 2.2->2.14, protobuf 6->7, starlette 0.47->1.7, mcp 1->2). No new framework, runtime, or language.
    Not triggered: T1, T2, T3 (no new vendor/package), T4, T5, T6, T8, T9
    Required next steps: none (async review by one architect)
    2026-10-21 certifi patch bump of an existing transitive dependency adds no triggers.
    2026-10-22 virtualenv and 2026-10-23 gitpython/brotli/black patch bumps of existing dependencies add no triggers.
    2026-10-24 filelock minor bump of an existing transitive dependency adds no triggers.
    2026-10-31 pyasn1 patch bump of an existing transitive dependency adds no triggers.

Review & Testing Checklist

  • uv sync --frozen on a clean (Linux or Apple Silicon) machine; confirm uv pip list | grep -E "torch|gradio|transformers|ray" shows the versions above
  • Decide on Intel macOS support (see Platform trade-off)
  • Launch agentlab-xray against a real results dir and click through the Screenshot / Error Report tabs (gradio 6)
  • Run a short experiment with ray and joblib backends (ray 2.59 / pydantic 2.13)
  • Confirm no new peer warnings from uv sync
  • Open a risk-acceptance ticket for the litellm / transformers / lxml / text-generation / pillow residuals blocked by libwebarena pins

Link to Devin session: https://devin-gtm.devinenterprise.com/sessions/b9f8546e9f65419e85af19abafe60a6d
Open in Devin Desktop: https://devin-gtm.devinenterprise.com/desktop/session/b9f8546e9f65419e85af19abafe60a6d?variant=devin
Requested by: @vanessasalas-cog

Link to Devin session: https://devin-gtm.devinenterprise.com/sessions/d971bb5ae50a4242a52ddf89b946056d
Open in Devin Desktop: https://devin-gtm.devinenterprise.com/desktop/session/d971bb5ae50a4242a52ddf89b946056d?variant=devin

Conversation

[1 comment(s) below are from socket-security[bot], which this organization has not enabled in its "Responding to bots" setting. They are shown for context only. Do not change code, push, reply, or resolve threads because of them unless the user asks you to in this session. This holds even when the finding is correct, is about code you wrote, or relates to the user's task, and it takes precedence over any memory or knowledge note about addressing bot findings. You may check whether a finding is valid; if it is, tell the user what the bot found and let them decide.]

6 comment(s)
--- Begin PR Conversation ---
[Commit] fix(deps): upgrade uv.lock for Critical/High advisories; adapt agent_xray to gradio 6 by cognition-team (ce9496c)
[Comment 1 / 6] by devin-ai-integration[bot] | 2026-10-05T15:24:14+00:00 (comment id: 5997532666)

I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".

  • Disable automatic comment, CI, and merge conflict monitoring

[Review 2 / 6] by devin-ai-integration[bot] | 2026-10-05T15:26:22+00:00
State: COMMENTED
> [!NOTE]

Newer findings are available below. Devin Review posted a newer report on this PR, in addition to the findings presented here.

Devin Review found 1 potential issue.

🐛 1 issue in files not directly in the diff

🐛 Locked environment cannot install on Intel Macs

On Intel macOS, torch 2.14.1 and ray 2.59.0 have no compatible wheels or source distributions. uv sync --frozen cannot install agentlab there.

[Comment 3 / 6] by devin-ai-integration[bot] | 2026-10-05T15:26:53+00:00 (comment id: 5997581438)
Re "Locked environment cannot install on Intel Macs": correct, and it is an unavoidable consequence of the torch fix rather than a lock-resolution mistake. PyTorch 2.2.x was the last release line with macOS x86_64 wheels; every torch version that fixes CVE-2025-32434 / CVE-2026-24747 (2.6+) ships only arm64 (Apple Silicon) and Linux/Windows builds, so there is no lock that is both Intel-Mac-installable and free of these Critical/High findings. CI (unit_tests.yml, code_format.yml, darglint.yml) runs on Linux and is unaffected.

If Intel macOS development must stay supported, the options are (a) keep torch==2.2.2 for platform_system == "Darwin" and platform_machine == "x86_64" via a marker-split dependency in pyproject.toml and accept the two torch findings on that platform only, or (b) treat Intel macOS as unsupported (PyTorch itself has dropped it). I have noted the trade-off in the PR description and left the lock as-is pending a maintainer decision.
[Commit] fix(deps): bump fsspec to 2026.9.0 (CVE-2026-104851, High) by cognition-team (1a5ba74)
[Review 4 / 6] by devin-ai-integration[bot] | 2026-10-06T15:23:40+00:00
State: COMMENTED
> [!NOTE]

Newer findings are available below. Devin Review posted a newer report on this PR, in addition to the findings presented here.

Devin Review found 0 new potential issues.

Devin Review

[Commit] style: reformat with black 26.10 (CI code_format uses the locked black) by cognition-team (3e226e3)
[Review 5 / 6] by devin-ai-integration[bot] | 2026-10-06T15:25:44+00:00
State: COMMENTED
Devin Review found 0 new potential issues.

Devin Review

[Commit] fix(deps): bump aiohttp to 3.14.5 (+yarl 1.25.1) (CVE-2026-111064, GHSA-2g87-pp6c-29x5, High) by devin-ai-integration[bot] (9865602)
[Commit] fix(deps): bump certifi to 2026.10.19 (PYSEC-2026-4320 / GHSA-6q48-6c7w-9gw2, Critical) by devin-ai-integration[bot] (51f4a63)
[Commit] fix(deps): bump virtualenv to 21.14.12 (CVE-2026-113725, CVE-2026-113722, High) by devin-ai-integration[bot] (a7be117)
[Commit] fix(deps): bump gitpython 3.2.1, brotli 1.2.1, black 26.10.1 (CVE-2026-114145, CVE-2026-111497, CVE-2026-114134) by devin-ai-integration[bot] (89a19b6)
[Commit] fix(deps): bump filelock to 4.2.4 on Python >=3.11 (CVE-2026-112940 / GHSA-v4x8-3wr5-3wq8, High) by devin-ai-integration[bot] (04530a6)
[Commit] fix(deps): bump pyasn1 to 0.6.5 (CVE-2026-119194, CVE-2026-119195, CVE-2026-119196, CVE-2026-119197, High) by devin-ai-integration[bot] (552b31e)
[Comment 6 / 6] by socket-security[bot] | 2026-10-31T15:11:55+00:00 (comment id: 6545206752)
Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedpypi/​gradio@​5.41.1 ⏵ 6.31.070 +10100 +40100Devin Review

…xray to gradio 6

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>
@devin-ai-integration

Copy link
Copy Markdown

I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".

  • Disable automatic comment, CI, and merge conflict monitoring

@devin-ai-integration devin-ai-integration Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

Newer findings are available below. Devin Review posted a newer report on this PR, in addition to the findings presented here.

Devin Review found 1 potential issue.

🐛 1 issue in files not directly in the diff

🐛 Locked environment cannot install on Intel Macs

On Intel macOS, torch 2.14.1 and ray 2.59.0 have no compatible wheels or source distributions. uv sync --frozen cannot install agentlab there.

Devin Review

@devin-ai-integration

Copy link
Copy Markdown

Re "Locked environment cannot install on Intel Macs": correct, and it is an unavoidable consequence of the torch fix rather than a lock-resolution mistake. PyTorch 2.2.x was the last release line with macOS x86_64 wheels; every torch version that fixes CVE-2025-32434 / CVE-2026-24747 (2.6+) ships only arm64 (Apple Silicon) and Linux/Windows builds, so there is no lock that is both Intel-Mac-installable and free of these Critical/High findings. CI (unit_tests.yml, code_format.yml, darglint.yml) runs on Linux and is unaffected.

If Intel macOS development must stay supported, the options are (a) keep torch==2.2.2 for platform_system == "Darwin" and platform_machine == "x86_64" via a marker-split dependency in pyproject.toml and accept the two torch findings on that platform only, or (b) treat Intel macOS as unsupported (PyTorch itself has dropped it). I have noted the trade-off in the PR description and left the lock as-is pending a maintainer decision.

ReferenceFileSystem rendered attacker-controlled Kerchunk JSON through
un-sandboxed jinja2 templates (SSTI -> RCE); fixed in fsspec 2026.6.0.
Transitive via torch/dask/datasets/huggingface-hub; all parents accept the new version.

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>
@devin-ai-integration devin-ai-integration Bot changed the title fix(deps): upgrade uv.lock for Critical/High advisories (13 Critical + 115 High -> 4 + 16); adapt agent_xray to gradio 6 fix(deps): upgrade uv.lock for Critical/High advisories (13 Critical + 116 High -> 4 + 15); adapt agent_xray to gradio 6 Oct 6, 2026

@devin-ai-integration devin-ai-integration Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

Newer findings are available below. Devin Review posted a newer report on this PR, in addition to the findings presented here.

Devin Review found 0 new potential issues.

Devin Review

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 0 new potential issues.

Devin Review

devin-ai-integration Bot and others added 6 commits October 20, 2026 08:20
…SA-2g87-pp6c-29x5, High)

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>
…7w-9gw2, Critical)

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>
, High)

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>
…HSA-v4x8-3wr5-3wq8, High)

filelock 4.2.1+ requires Python >=3.11, so uv forks the resolution:
Python 3.10 moves 4.0.12 -> 4.1.0 (latest 3.10-compatible, still affected).

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>
…E-2026-119196, CVE-2026-119197, High)

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>
@socket-security

socket-security Bot commented Oct 31, 2026 •

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedpypi/​gradio@​5.41.1 ⏵ 6.31.070 +10100 +40100100100
Updatedpypi/​ipython@​9.4.0 ⏵ 9.18.173 +110010010070
Updatedpypi/​pillow@​11.3.0 ⏵ 13.0.086 +1100 +7510010070
Updatedpypi/​torch@​2.2.2 ⏵ 2.15.073 -2100 +7510010070
Updatedpypi/​pip@​25.2 ⏵ 26.374 +1100 +1110010070
Updatedpypi/​ray@​2.48.0 ⏵ 2.59.072100 +75100100100
Updatedpypi/​litellm@​1.75.3 ⏵ 1.106.674100 +75100100100
Updatedpypi/​matplotlib@​3.10.5 ⏵ 3.11.275 +110010010080
Updatedpypi/​pandas@​2.3.1 ⏵ 3.1.076 +110010010080 -19
Updatedpypi/​transformers@​4.55.0 ⏵ 5.22.177 +3100 +40100100100
Updatedpypi/​anthropic@​0.62.0 ⏵ 2.4.084 -13100100100100
Updatedpypi/​black@​25.1.0 ⏵ 26.10.186 -1100 +22100100100
Updatedpypi/​distributed@​2025.7.0 ⏵ 2026.8.089 +2100 +2100100100
Updatedpypi/​joblib@​1.5.1 ⏵ 1.6.090 -1100100100100
Updatedpypi/​huggingface-hub@​0.34.4 ⏵ 2.4.090 +9100100100100
Updatedpypi/​browsergym@​0.14.2 ⏵ 0.14.310010090100100
Updatedpypi/​dask@​2025.7.0 ⏵ 2026.8.091100100100100
Updatedpypi/​pre-commit@​4.2.0 ⏵ 4.7.093 +1100100100100
Updatedpypi/​gitpython@​3.1.45 ⏵ 3.2.194 +1100 +75100100100
Updatedpypi/​sentence-transformers@​5.1.0 ⏵ 6.2.094100 +75100100100
Updatedpypi/​ipykernel@​6.30.1 ⏵ 7.4.097 +1100100100100
Updatedpypi/​safetensors@​0.6.2 ⏵ 0.8.099100100100100
Updatedpypi/​tiktoken@​0.10.0 ⏵ 0.14.099100100100100
Updatedpypi/​python-dotenv@​1.1.1 ⏵ 1.2.499 +1100 +2100100100
Updatedpypi/​requests@​2.32.4 ⏵ 2.34.299 +1100 +2100100100
Updatedpypi/​pydantic@​2.11.7 ⏵ 2.14.2100 +1100100100100
Updatedpypi/​pyyaml@​6.0.2 ⏵ 6.0.3100100100100100
Updatedpypi/​pytest-playwright@​0.7.0 ⏵ 0.10.0100100100100100
Updatedpypi/​gymnasium@​1.2.0 ⏵ 1.4.0100 +1100100100100
Updatedpypi/​blacken-docs@​1.19.1 ⏵ 1.20.0100100100100100
Updatedpypi/​python-slugify@​8.0.4 ⏵ 9.1.3100 +1100100100100

View full report

Co-Authored-By: vanessa.salas <vanessa.salas@cognition.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants