Repository navigation
Bump certifi in the Python examples and uv in the DSPy workflow - #167
Conversation
certifi -> 2026.10.19 in 14 example uv.lock files and 5 poetry.lock files, and the DSPy workflow's setup-uv pin 0.11.26 -> 0.13.4. These are the versions https://emudhra.we-have-a-problem.com/ lists as patched. Each lock changes only certifi. The uv locks move from revision 3 to 5, the format uv 0.13 writes, and the claude-code-in-sandbox lock drops one redundant marker (typing-extensions under exceptiongroup, which only installs below Python 3.11). Not bumped: openai-computer-use-python, whose 7-day exclude-newer guard still excludes certifi 2026.10.19, and anthropic-managed-agents/python, whose lock is already out of date with its pyproject.toml, so uv re-resolves a dozen packages.
PR SummaryMedium Risk Overview examples/anthropic-managed-agents/python/uv.lock is not certifi-only: it refreshes e2b (2.21 → 2.59), updates the Reviewed by Cursor Bugbot for commit eac8d48. Bugbot is set up for automated code reviews on this repo. Configure here. |
There was a problem hiding this comment.
I reviewed this PR and didn't find any bugs. It changes the pinned CA-bundle package and its hashes in 19 lockfiles, and I couldn't check those hashes against PyPI from here, so a human should confirm them before merging.
What was reviewed:
- Every certifi entry across the 14 uv.lock and 5 poetry.lock files has the same
files.pythonhosted.orgURLs and the same pair of sha256 hashes. I didn't confirm that those hashes match the files PyPI actually serves for 2026.10.19. revision = 5is safe for--frozen/--locked.openai-computer-use-python/uv.lockwas already at revision 5 on the base commit. The TRL and OpenEnv workflows don't pin a uv version, and DSPy now pins 0.13.4.- The one lock edit that isn't certifi is in
anthropic-claude-code-in-sandbox-python/uv.lock, where thepython_full_version < '3.13'marker on exceptiongroup's typing-extensions dependency is gone. It does no harm because exceptiongroup only installs below 3.11. But it doesn't match exceptiongroup's own metadata, so it may have been edited by hand rather than re-resolved. - The advisory link given as the reason for the bump points to an unofficial-looking domain. It's worth checking against an upstream certifi or Mozilla source.
Extended reasoning...
The change bumps certifi to 2026.10.19 in 19 example lockfiles, moves the uv locks from revision 3 to 5, and raises the DSPy workflow's setup-uv pin from 0.11.26 to 0.13.4. Its security-sensitive surface is supply chain: it swaps the trusted CA-bundle package and its hashes across every Python example. The new hashes are the same in every file, but PyPI couldn't be reached from this review to confirm they are genuine. The stated reason links to a non-official advisory domain, and one lock contains a dependency-marker edit that isn't certifi. Those two unverifiable points decided the deferral, even though the edits themselves are mechanical.
Its lock pinned e2b 2.21.1 although pyproject.toml requires e2b>=2.38.0, so it no longer matched. Re-locking brings certifi to 2026.10.19 and e2b to 2.59.0 with its new dependencies (connectrpc, pyqwest, protobuf-py, opentelemetry-api).
|
Re the hash check: I compared every certifi entry in the 20 changed lockfiles (15 |
Moves certifi to 2026.10.19 in 14 example
uv.lockfiles and 5poetry.lockfiles, and the DSPy workflow's setup-uv pin 0.11.26 → 0.13.4 — the versions the eMudhra intermediate-CA disclosure lists as patched: https://emudhra.we-have-a-problem.com/. Every lock changes only certifi (the uv locks also moverevision3 → 5, the format uv 0.13 writes, and the claude-code-in-sandbox lock drops one redundanttyping-extensionsmarker underexceptiongroup); poetry locks keep their content-hash and generator version. Two examples are deliberately left out:openai-computer-use-python, whose 7-dayexclude-newerguard still excludes certifi 2026.10.19 (it clears on 2026-10-27, or with acertifi = falseexception beside theopenaione), andanthropic-managed-agents/python, whose lock is already out of date with itspyproject.toml, so uv re-resolves a dozen packages. Reviewers: check the lock diffs are certifi-only and the DSPy, TRL and OpenEnv workflows pass.anthropic-managed-agents/python (second commit): its lock pinned e2b 2.21.1 although
pyproject.tomlrequirese2b>=2.38.0,<3, so it no longer matched its own project. Re-locking it is the only way to move certifi there, and it also brings e2b to 2.59.0 with its new dependencies (connectrpc, pyqwest, protobuf-py, opentelemetry-api).uv lock --checkpasses. The example has no CI, so a quickuv sync && uv run anthropic-managed-agents-show-environment --helpis worth running.