Skip to content

fix(security): refresh Python and native runtime trust - #3321

Open
rtemperini wants to merge 2 commits into
kagent-dev:mainfrom
rtemperini:codex/fix-emudhra-trust-main
Open

rtemperini wants to merge 2 commits into
kagent-dev:mainfrom
rtemperini:codex/fix-emudhra-trust-main

Conversation

@rtemperini

@rtemperini rtemperini commented Oct 22, 2026 •

Copy link
Copy Markdown

Extend the Go-only mitigation in #3304 to the independent trust stores shipped in the runtime images.

  • Upgrade uv to 0.13.5, certifi to 2026.10.19, and boto3/botocore to 1.43.117. The managed runtime resolves to Python 3.13.17. Require fixed certifi in the published core package.
  • Refresh Debian/Wolfi bases, require fixed Alpine/Wolfi CA packages, and update Claude Code to 2.1.308 with checksums from its upstream manifest.
  • Use gRPC's supported system CA bundle setting pending a published wheel for its upstream roots fix. No certificate files are filtered or patched.
  • Keep Bookworm samples on official Python 3.13.17 plus uv 0.13.5; uv no longer publishes the combined Bookworm image.

Remaining release blocker: the pinned Codex 0.161.0 embeds rustls-webpki 0.103.15 and webpki-roots 1.0.5. The latest stable Codex 0.163.0 has the same versions. Its upstream main branch has 0.103.16 / 1.0.10, but those fixes need a released binary before this can claim to remediate every runtime. This PR keeps the existing released Codex pin.

Local validation: rebuilt ARM64 Python ADK image passes all five trust checks. Lockfile validation, Python lint, and whitespace checks pass. The corresponding release-branch fix also reproduces the failure in published 0.10.4 and validates ARM64 slim/full and AMD64 slim images, plus 36 offline chain rejections. Native harness images and the complete application suite were not built/tested locally; vulnerability scans were not run locally.

A new release and rollout are required after merging. gRPC and httplib2 still contain inactive fallback bundles; the validation covers effective trust.

References: incident and fixed versions, uv 0.13.5, certifi, botocore, Codex stable dependencies.

Release-branch counterpart: #3320.

Signed-off-by: rtemperini <29879569+rtemperini@users.noreply.github.com>
@github-actions github-actions Bot added the bug Something isn't working label Oct 22, 2026
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Oct 22, 2026
@rtemperini
rtemperini marked this pull request as ready for review October 22, 2026 13:01
@rtemperini
rtemperini requested a review from a team as a code owner October 22, 2026 13:01
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Oct 22, 2026
Signed-off-by: rtemperini <29879569+rtemperini@users.noreply.github.com>
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Oct 22, 2026
Comment thread python/Dockerfile
ENV LANG=C.UTF-8 \
LC_ALL=C.UTF-8 \
PYTHONUNBUFFERED=1 \
GRPC_DEFAULT_SSL_ROOTS_FILE_PATH=/etc/ssl/certs/ca-certificates.crt \

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

could ca-certificates get a version floor like alpine has?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants