Skip to content

security(deps): bump the training-dependencies group across 1 directory with 69 updates#577

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/training/rl/training-dependencies-cab087d50c
Closed

security(deps): bump the training-dependencies group across 1 directory with 69 updates#577
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/training/rl/training-dependencies-cab087d50c

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Apr 27, 2026

Bumps the training-dependencies group with 69 updates in the /training/rl directory:

Package From To
numpy 1.26.4 2.4.4
marshmallow 3.26.2 4.3.0
packaging 26.1 26.2
cryptography 46.0.7 47.0.0
rsl-rl-lib 5.0.1 5.2.0
tensordict 0.12.1 0.12.2
azure-storage-file-datalake 12.22.0 12.23.0
cachetools 6.2.6 7.0.6
certifi 2026.2.25 2026.4.22
click 8.3.2 8.3.3
cuda-toolkit 13.0.2 13.2.1
databricks-sdk 0.102.0 0.105.0
farama-notifications 0.0.4 0.0.6
fastapi 0.135.3 0.136.1
filelock 3.28.0 3.29.0
gitpython 3.1.46 3.1.47
greenlet 3.4.0 3.5.0
gunicorn 23.0.0 25.3.0
gymnasium 1.2.3 1.3.0
huey 2.6.0 3.0.0
idna 3.11 3.13
importlib-metadata 8.7.1 9.0.0
matplotlib 3.10.8 3.10.9
mpmath 1.3.0 1.4.1
nvidia-cublas 13.1.0.3 13.4.0.1
nvidia-cuda-cupti 13.0.85 13.2.75
nvidia-cuda-nvrtc 13.0.88 13.2.78
nvidia-cuda-runtime 13.0.96 13.2.75
nvidia-cudnn-cu13 9.19.0.56 9.21.1.3
nvidia-cufft 12.0.0.61 12.2.0.46
nvidia-cufile 1.15.1.6 1.17.1.22
nvidia-curand 10.4.0.35 10.4.2.55
nvidia-cusolver 12.0.4.66 12.2.0.1
nvidia-cusparse 12.6.3.3 12.7.10.1
nvidia-cusparselt-cu13 0.8.0 0.9.0
nvidia-nccl-cu13 2.28.9 2.30.4
nvidia-nvjitlink 13.0.88 13.2.78
nvidia-nvshmem-cu13 3.4.5 3.6.5
nvidia-nvtx 13.0.85 13.2.75
onnx-ir 0.2.0 0.2.1
onnxscript 0.6.2 0.7.0
opentelemetry-api 1.40.0 1.41.1
opentelemetry-instrumentation 0.61b0 0.62b1
opentelemetry-instrumentation-asgi 0.61b0 0.62b1
opentelemetry-instrumentation-dbapi 0.61b0 0.62b1
opentelemetry-instrumentation-django 0.61b0 0.62b1
opentelemetry-instrumentation-fastapi 0.61b0 0.62b1
opentelemetry-instrumentation-flask 0.61b0 0.62b1
opentelemetry-instrumentation-logging 0.61b0 0.62b1
opentelemetry-instrumentation-psycopg2 0.61b0 0.62b1
opentelemetry-instrumentation-requests 0.61b0 0.62b1
opentelemetry-instrumentation-urllib 0.61b0 0.62b1
opentelemetry-instrumentation-urllib3 0.61b0 0.62b1
opentelemetry-instrumentation-wsgi 0.61b0 0.62b1
opentelemetry-proto 1.41.0 1.41.1
opentelemetry-sdk 1.40.0 1.41.1
opentelemetry-semantic-conventions 0.61b0 0.62b1
opentelemetry-util-http 0.61b0 0.62b1
pandas 2.3.3 3.0.2
protobuf 6.33.6 7.34.1
pyarrow 22.0.0 24.0.0
pydantic 2.13.1 2.13.3
pydantic-core 2.46.1 2.46.3
pytz 2025.2 2026.1.post1
setuptools 81.0.0 82.0.1
skops 0.13.0 0.14.0
tzdata 2026.1 2026.2
uvicorn 0.44.0 0.46.0
wrapt 1.17.3 2.1.2

Updates numpy from 1.26.4 to 2.4.4

Release notes

Sourced from numpy's releases.

2.4.4 (Mar 29, 2026)

NumPy 2.4.4 Release Notes

The NumPy 2.4.4 is a patch release that fixes bugs discovered after the 2.4.3 release. It should finally close issue #30816, the OpenBLAS threading problem on ARM.

This release supports Python versions 3.11-3.14

Contributors

A total of 8 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Charles Harris
  • Daniel Haag +
  • Denis Prokopenko +
  • Harshith J +
  • Koki Watanabe
  • Marten van Kerkwijk
  • Matti Picus
  • Nathan Goldbaum

Pull requests merged

A total of 7 pull requests were merged for this release.

  • #30978: MAINT: Prepare 2.4.x for further development
  • #31049: BUG: Add test to reproduce problem described in #30816 (#30818)
  • #31052: BUG: fix FNV-1a 64-bit selection by using NPY_SIZEOF_UINTP (#31035)
  • #31053: BUG: avoid warning on ufunc with where=True and no output
  • #31058: DOC: document caveats of ndarray.resize on 3.14 and newer
  • #31079: TST: fix POWER VSX feature mapping (#30801)
  • #31084: MAINT: numpy.i: Replace deprecated sprintf with snprintf...

2.4.3 (Mar 9, 2026)

NumPy 2.4.3 Release Notes

The NumPy 2.4.3 is a patch release that fixes bugs discovered after the 2.4.2 release. The most user visible fix may be a threading fix for OpenBLAS on ARM, closing issue #30816.

This release supports Python versions 3.11-3.14

Contributors

A total of 11 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Antareep Sarkar +

... (truncated)

Changelog

Sourced from numpy's changelog.

This is a walkthrough of the NumPy 2.4.0 release on Linux, which will be the first feature release using the numpy/numpy-release <https://github.com/numpy/numpy-release>__ repository.

The commands can be copied into the command line, but be sure to replace 2.4.0 with the correct version. This should be read together with the :ref:general release guide <prepare_release>.

Facility preparation

Before beginning to make a release, use the requirements/*_requirements.txt files to ensure that you have the needed software. Most software can be installed with pip, but some will require apt-get, dnf, or whatever your system uses for software. You will also need a GitHub personal access token (PAT) to push the documentation. There are a few ways to streamline things:

  • Git can be set up to use a keyring to store your GitHub personal access token. Search online for the details.

Prior to release

Add/drop Python versions

When adding or dropping Python versions, multiple config and CI files need to be edited in addition to changing the minimum version in pyproject.toml. Make these changes in an ordinary PR against main and backport if necessary. We currently release wheels for new Python versions after the first Python RC once manylinux and cibuildwheel support that new Python version.

Backport pull requests

Changes that have been marked for this release must be backported to the maintenance/2.4.x branch.

Update 2.4.0 milestones

Look at the issues/prs with 2.4.0 milestones and either push them off to a later version, or maybe remove the milestone. You may need to add a milestone.

Check the numpy-release repo

... (truncated)

Commits
  • be93fe2 Merge pull request #31090 from charris/prepare-2.4.4
  • f5245dc REL: Prepare for the NumPy 2.4.4 release
  • 02e838b Merge pull request #31084 from charris/backport-31056
  • fa74b2d MAINT: numpy.i: Replace deprecated sprintf with snprintf (#31056)
  • 533a6db Merge pull request #31079 from charris/backport-20801
  • 9e496cb TST: fix POWER VSX feature mapping (#30801)
  • 8052c4b Merge pull request #31058 from charris/backport-31021
  • 7f13b5a MAINT: Skip test on PyPy.
  • 4c5fdd6 MAINT: Remove unused import of tracemalloc.
  • a3ca5ed Update numpy/_core/src/multiarray/shape.c
  • Additional commits viewable in compare view

Updates marshmallow from 3.26.2 to 4.3.0

Changelog

Sourced from marshmallow's changelog.

4.3.0 (2026-04-03)

Features:

  • Add pre_load and post_load parameters to marshmallow.fields.Field for field-level pre- and post-processing (:issue:2787).
  • Typing: improvements to marshmallow.validate (:pr:2940).

4.2.4 (2026-04-02)

Bug fixes:

  • marshmallow.validate.URL and marshmallow.validate.Email accept Internationalized Domain Names (IDNs) (:issue:2821, :issue:2936). marshmallow.validate.Email also correctly rejects IDN domains with leading/trailing hyphens. Thanks :user:touhidurrr for the report.
  • Typing: Fix typing of nested in marshmallow.fields.Nested (:pr:2935).

4.2.3 (2026-03-25)

Bug fixes:

  • Make marshmallow.fields.Number and marshmallow.fields.Mapping abstract base classes to prevent using them within Schemas (:issue:2924). Thanks :user:MartingaleCoda for reporting.
  • Allow required to be set on marshmallow.fields.Contant (:issue:2900). Thanks :user:nosnickid for the report and :user:worksbyfriday for the PR.
  • Fix marshmallow.validate.OneOf emitting extra pairs when labels outnumber choices (:issue:2869). Thanks: user:T90REAL for the report and :user:rstar327 for the PR.
  • Fix behavior when passing a dot-delimited attribute name to partial for a key with data_key set (:pr:2903). Thanks :user:bysiber for the PR.
  • Fix Enum field by-name lookup to only return actual members (:pr:2902). Thanks :user:bysiber for the PR.
  • marshmallow.fields.DateTime with format="timestamp_ms" properly rejects bool values (:pr:2904). Thanks :user:bysiber for the PR.
  • Fix typing of error_messages argument to marshmallow.fields.Field (:pr:1636). Thanks :user:repole for reporting and :user:dhruvildarji for the PR.

Other changes:

  • Add ipaddress.* to marshmallow.Schema.TYPE_MAPPING (:issue:1695). Thanks :user:liberforce for the suggestion and :user:dhruvildarji for the PR.

4.2.2 (2026-02-04)

Bug fixes:

  • Fix behavior of fields.Contant(None) (:issue:2868).

... (truncated)

Commits

Updates packaging from 26.1 to 26.2

Release notes

Sourced from packaging's releases.

26.2

What's Changed

Fixes:

Documentation:

Internal:

New Contributors

Full Changelog: pypa/packaging@26.1...26.2

Changelog

Sourced from packaging's changelog.

26.2 - 2026-04-24


Fixes:
  • Fix incorrect sysconfig var name for pyemscripten in (:pull:1160)
  • Make Version, Specifier, SpecifierSet, Tag, Marker, and Requirement pickle-safe
    and backward-compatible with pickles created in 25.0-26.1 (including references to the removed
    packaging._structures module) (:pull:1163, :pull:1168, :pull:1170, :pull:1171)
  • Re-export ExceptionGroup in metadata for now in (:pull:1164)

Documentation:

  • Add errors section and fix missing details in (:pull:1159)
  • Document our property-based test suite in (:pull:1167)
  • Fix a DirectUrl typo in (:pull:1167)
  • Add example of is_unsatisfiable in (:pull:1166)

Internal:

  • Enable the auditor persona on zizmor in (:pull:1158)
  • Test new pickle guarantees in (:pull:1174)
  • Use new native ReadTheDocs uv integration in (:pull:1175)
Commits

Updates cryptography from 46.0.7 to 47.0.0

Changelog

Sourced from cryptography's changelog.

47.0.0 - 2026-04-24


* Support for Python 3.8 is deprecated and will be removed in the next
  ``cryptography`` release.
* **BACKWARDS INCOMPATIBLE:** Support for binary elliptic curves
  (``SECT*`` classes) has been removed. These curves are rarely used and
  have additional security considerations that make them undesirable.
* **BACKWARDS INCOMPATIBLE:** Support for OpenSSL 1.1.x has been removed.
  OpenSSL 3.0.0 or later is now required. LibreSSL, BoringSSL, and AWS-LC
  continue to be supported.
* **BACKWARDS INCOMPATIBLE:** Dropped support for LibreSSL < 4.1.
* **BACKWARDS INCOMPATIBLE:** Loading keys with unsupported algorithms or
  keys with unsupported explicit curve encodings now raises
  :class:`~cryptography.exceptions.UnsupportedAlgorithm` instead of
  ``ValueError``. This change affects
  :func:`~cryptography.hazmat.primitives.serialization.load_pem_private_key`,
  :func:`~cryptography.hazmat.primitives.serialization.load_der_private_key`,
  :func:`~cryptography.hazmat.primitives.serialization.load_pem_public_key`,
  :func:`~cryptography.hazmat.primitives.serialization.load_der_public_key`,
  and :meth:`~cryptography.x509.Certificate.public_key` when called on
  certificates with unsupported public key algorithms.
* **BACKWARDS INCOMPATIBLE:** When parsing elliptic curve private keys, we now
  reject keys that incorrectly encode a private key of the wrong length because
  such keys are impossible to process in a constant-time manner. We do not
  believe keys with this problem are in wide use, however we may revert this
  change based on the feedback we receive.
* Deprecated passing 64-bit (8-byte) and 128-bit (16-byte) keys to
  :class:`~cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES`. In a
  future release, only 192-bit (24-byte) keys will be accepted. Users should
  expand shorter keys themselves (e.g., for single DES: ``key + key + key``,
  for two-key: ``key + key[:8]``).
* Updated the minimum supported Rust version (MSRV) to 1.83.0, from 1.74.0.
* Support for ``x86_64`` macOS (including publishing wheels) is deprecated
  and will be removed in the next release. We will switch to publishing an
  ``arm64`` only wheel for macOS.
* Support for 32-bit Windows (including publishing wheels) is deprecated
  and will be removed in the next release. Users should move to a 64-bit
  Python installation.
* ``public_bytes`` and ``private_bytes`` methods on keys now raise
  ``TypeError`` (instead of ``ValueError``) if an invalid encoding is provided
  for the given ``format``.
* Moved :class:`~cryptography.hazmat.decrepit.ciphers.modes.CFB`,
  :class:`~cryptography.hazmat.decrepit.ciphers.modes.OFB`, and
  :class:`~cryptography.hazmat.decrepit.ciphers.modes.CFB8` into
  :doc:`/hazmat/decrepit/index` and deprecated them in the ``modes`` module.
  They will be removed from the ``modes`` module in 49.0.0.
* Moved :class:`~cryptography.hazmat.primitives.ciphers.algorithms.Camellia`
  into  :doc:`/hazmat/decrepit/index` and deprecated it in the ``cipher`` module.
  It will be removed from the ``cipher`` module in 49.0.0.
</tr></table> 

... (truncated)

Commits

Updates rsl-rl-lib from 5.0.1 to 5.2.0

Release notes

Sourced from rsl-rl-lib's releases.

v5.2.0

Overview

This release adds the option to keep a fixed standard deviation for the Gaussian distribution, and adds standard deviation clamping to all distributions.

Full Changelog: leggedrobotics/rsl_rl@5.1.0...v5.2.0

Added

New Contributors

v5.1.0

Overview

This release introduces model compilation via torch.compile, which can speed up training especially for large networks like CNNs. For example, the Isaac-Dexsuite-Kuka-Allegro-Lift-v0 task in Isaac Lab trains 1.3x faster with the compilation mode default. For simple networks like MLPs no speed up is expected. The release also includes a clean up of PPO, moving a large part of the extension logic to their respective files rnd.py and symmetry.py.

Full Changelog: leggedrobotics/rsl_rl@v5.0.1...5.1.0

Added

New Contributors

Commits
  • 8068577 Add clip and constant std functionalities to Gaussian Distribution (#201)
  • 64f8ee4 Bump version to 5.1.0
  • 1e77222 Clean up PPO by moving extension logic to the extension files (#200)
  • 0234a93 Add Torch compile for PPO and Distillation (#199)
  • c7beb6f minor docs fixes
  • See full diff in compare view

Updates tensordict from 0.12.1 to 0.12.2

Release notes

Sourced from tensordict's releases.

TensorDict v0.12.2

Patch release with a bug fix for consolidated nested tensors.

Bug Fixes

  • Fix _ragged_idx loss during consolidation of nested tensors, which caused numerical incorrectness when the nested tensor had more than 2 dimensions and ragged_idx != 1 (#1675)

Installation

pip install tensordict==0.12.2

Full Changelog: pytorch/tensordict@v0.12.1...v0.12.2

Commits
  • 8ee33fa [Release] Bump version to 0.12.2
  • dcb6ddd [BugFix] fix ragged_idx of consolidated tensor (#1675)
  • 85ea4e7 [CI] Temporarily use vmoens/test-infra fork for macOS builds
  • See full diff in compare view

Updates azure-storage-file-datalake from 12.22.0 to 12.23.0

Commits
  • b3301ac STG 100 GA Release Date for 2026-01-06
  • beb8dfa [Storage][STG 100] Prepare branch for GA + cherry-pick block size change (#44...
  • 6c9b459 Increment package version after release of azure-monitor-opentelemetry-export...
  • b9dcce8 Bump cspell from 9.3.2 to 9.4.0 in /eng/common/spelling (#44264)
  • 04be001 [py sdk - TA] add 2025-11-01 to Readme (#44259)
  • 31e2155 adding more agent creation traces (#44263)
  • 2f728ba Use azpysdk Bandit Check in CI (#44214)
  • 771fa84 Fix unhelpful error when no stress packages are found (#43538)
  • 8646fbe Sync eng/common directory with azure-sdk-tools for PR 13142 (#44244)
  • 874cfcf [Storage] Update Swagger and Release Date (#44243)
  • Additional commits viewable in compare view

Updates cachetools from 6.2.6 to 7.0.6

Changelog

Sourced from cachetools's changelog.

v7.0.6 (2026-04-20)

  • Minor code improvements.

  • Update project URLs.

  • Update CI environment.

v7.0.5 (2026-03-09)

  • Minor @cachedmethod performance improvements.

v7.0.4 (2026-03-08)

  • Fix and properly document @cachedmethod.cache_key behavior.

  • Minor documentation improvements.

v7.0.3 (2026-03-05)

  • Fix DeprecationWarning when creating an autospec mock with @cachedmethod decorations.

v7.0.2 (2026-03-02)

  • Provide more efficient clear() implementation for all support Cache classes (courtesy Josep Pon Farreny).

v7.0.1 (2026-02-10)

  • Various test improvements.

  • Update Copilot Instructions.

v7.0.0 (2026-02-01)

  • Require Python 3.10 or later (breaking change).

... (truncated)

Commits

Updates certifi from 2026.2.25 to 2026.4.22

Commits
  • 5dddfb0 2026.04.22 (#410)
  • f99eccd Bump peter-evans/create-pull-request from 8.1.0 to 8.1.1 (#404)
  • 918bed0 Bump actions/upload-artifact from 7.0.0 to 7.0.1 (#405)
  • 0a49067 Bump pypa/gh-action-pypi-publish from 1.13.0 to 1.14.0 (#403)
  • acf6ce8 Bump actions/download-artifact from 8.0.0 to 8.0.1 (#398)
  • feb0ed2 Bump actions/download-artifact from 7.0.0 to 8.0.0 (#397)
  • d9c11a5 Bump actions/upload-artifact from 6.0.0 to 7.0.0 (#396)
  • See full diff in compare view

Updates click from 8.3.2 to 8.3.3

Release notes

Sourced from click's releases.

8.3.3

This is the Click 8.3.3 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.

PyPI: https://pypi.org/project/click/8.3.3/ Changes: https://click.palletsprojects.com/page/changes/#version-8-3-3 Milestone: https://github.com/pallets/click/milestone/30

  • Use :func:shlex.split to split pager and editor commands into argv lists for :class:subprocess.Popen, removing shell=True. #1026 #1477 #2775
  • Fix TypeError when rendering help for an option whose default value is an object that doesn't support equality comparison with strings, such as semver.Version. #3298 #3299
  • Fix pager test pollution under parallel execution by using pytest's tmp_path fixture instead of a shared temporary file path. #3238
  • Treat Sentinel.UNSET values in a default_map as absent, so they fall through to the next default source instead of being used as the value. #3224 #3240
  • Patch pdb.Pdb in CliRunner isolation so pdb.set_trace(), breakpoint(), and debuggers subclassing pdb.Pdb (ipdb, pdbpp) can interact with the real terminal instead of the captured I/O streams. #654 #824 #843 #951 #3235
  • Add optional randomized parallel test execution using pytest-randomly and pytest-xdist to detect test pollution and race conditions. #3151
  • Add contributor documentation for running stress tests, randomized parallel tests, and Flask smoke tests. #3151 #3177
  • Show custom show_default string in prompts, matching the existing help text behavior. #2836 #2837 #3165 #3262 #3280 #3328
  • Fix default=True with boolean flag_value always returning the flag_value instead of True. The default=True to flag_value substitution now only applies to non-boolean flags, where True acts as a sentinel meaning "activate this flag by default". For boolean flags, default=True is returned as a literal value. #3111 #3239
  • Mark make_default_short_help as private API. #3189 #3250
  • CliRunner's redirected streams now expose the original file descriptor via fileno(), so that faulthandler, subprocess, and other C-level consumers no longer crash with io.UnsupportedOperation. #2865
  • Change :class:ParameterSource to an :class:~enum.IntEnum and reorder its members from most to least explicit, so values can be compared to check whether a parameter was explicitly provided. #2879 #3248
Changelog

Sourced from click's changelog.

Version 8.3.3

Released 2026-04-20

  • Use :func:shlex.split to split pager and editor commands into argv lists for :class:subprocess.Popen, removing shell=True. :issue:1026 :pr:1477 :pr:2775
  • Fix TypeError when rendering help for an option whose default value is an object that doesn't support equality comparison with strings, such as semver.Version. :issue:3298 :pr:3299
  • Fix pager test pollution under parallel execution by using pytest's tmp_path fixture instead of a shared temporary file path. :pr:3238
  • Treat Sentinel.UNSET values in a default_map as absent, so they fall through to the next default source instead of being used as the value. :issue:3224 :pr:3240
  • Patch pdb.Pdb in CliRunner isolation so pdb.set_trace(), breakpoint(), and debuggers subclassing pdb.Pdb (ipdb, pdbpp) can interact with the real terminal instead of the captured I/O streams. :issue:654 :issue:824 :issue:843 :pr:951 :pr:3235
  • Add optional randomized parallel test execution using pytest-randomly and pytest-xdist to detect test pollution and race conditions. :pr:3151
  • Add contributor documentation for running stress tests, randomized parallel tests, and Flask smoke tests. :pr:3151 :pr:3177
  • Show custom show_default string in prompts, matching the existing help text behavior. :issue:2836 :pr:2837 :pr:3165 :pr:3262 :pr:3280 :pr:3328
  • Fix default=True with boolean flag_value always returning the flag_value instead of True. The default=True to flag_value substitution now only applies to non-boolean flags, where True acts as a sentinel meaning "activate this flag by default". For boolean flags, default=True is returned as a literal value. :issue:3111 :pr:3239
  • Mark make_default_short_help as private API. :issue:3189 :pr:3250
  • CliRunner's redirected streams now expose the original file descriptor via fileno(), so that faulthandler, subprocess, and other C-level consumers no longer crash with io.UnsupportedOperation. :issue:2865
  • Change :class:ParameterSource to an :class:~enum.IntEnum and reorder its members from most to least explicit, so values can be compared to check whether a parameter was explicitly provided. :issue:2879 :pr:3248
Commits
  • c06d2d0 Release 8.3.3
  • f1f191e Apply format guidelines to commits since latest 8.3.2 release (#3343)
  • bb59ba0 Apply format guidelines to commits since latest 8.3.2 release
  • 4a35225 Reduce blast-radius of UNSET in default_map (#3240)
  • c07bb93 Merge branch 'stable' into unset-in-default-map
  • c7e1ba8 Reorder ParameterSource (#3248)
  • 76552ff Show default string in prompt (#3328)
  • ac5cec5 Reorder ParameterSource from most to least explicit
  • 8c452e0 Merge branch 'stable' into show-default-string-in-prompt
  • 8c95c73 Reconcile default value passing and default activation (#3239)
  • Additional commits viewable in compare view

Updates cuda-toolkit from 13.0.2 to 13.2.1

Updates databricks-sdk from 0.102.0 to 0.105.0

Release notes

Sourced from databricks-sdk's releases.

v0.105.0

No release notes provided.

v0.104.0

Bug Fixes

  • Add X-Databricks-Org-Id header to WorkspaceExt.upload() and WorkspaceExt.download() for SPOG host compatibility.
  • WorkspaceClient.get_workspace_id() now returns Config.workspace_id directly when set, instead of calling /api/2.0/preview/scim/v2/Me. This removes an API round-trip on every call where the workspace ID is already known (profile, ?o= query param, env var, or host metadata) and fixes a failure on SPOG hosts where the unauthenticated probe request was rejected with Unable to load OAuth Config.
  • Add X-Databricks-Org-Id header to SharesExt.list() for SPOG host compatibility.

Internal Changes

  • Expanded AI agent detection: added Goose, Amp, Augment, Copilot (VS Code), Kiro, Windsurf. Honors the AGENT=<name> standard (resolves to a known product if the value matches one, otherwise unknown). Presence-only env var matchers now treat an empty string as "set" for parity with the Go and Java SDKs. Explicit agent env vars (e.g. CLAUDECODE, GOOSE_TERMINAL) always take precedence over the generic AGENT=<name> signal. When multiple agent env vars are present (e.g. a Cursor CLI subagent invoked from Claude Code), the user-agent reports agent/multiple.

v0.103.0

New Features and Improvements

  • Add support for unified hosts. A single configuration profile can now be used for both account-level and workspace-level operations when the host supports it and both account_id and workspace_id are available. The experimental_is_unified_host flag has been removed; unified host detection is now automatic.
  • Accept DATABRICKS_OIDC_TOKEN_FILEPATH environment variable for consistency with other Databricks SDKs (Go, CLI, Terraform). The previous DATABRICKS_OIDC_TOKEN_FILE is still supported as an alias.

Breaking Changes

  • Drop support for Python 3.8 and 3.9. The minimum supported Python version is now 3.10, in line with the oldest supported Databricks Runtime LTS (DBR 13.3).

Internal Changes

  • Replace the async-disabling mechanism on token refresh failure with a 1-minute retry backoff. Previously, a single failed async refresh would disable proactive token renewal until the token expired. Now, the SDK waits a short cooldown period and retries, improving resilience to transient errors.
  • Extract _resolve_profile to simplify config file loading and improve __settings__ error messages.
  • Resolve token_audience from the token_federation_default_oidc_audiences field in the host metadata discovery endpoint, removing the need for explicit audience configuration.

API Changes

  • Add create_catalog(), create_synced_table(), delete_catalog(), delete_synced_table(), get_catalog() and get_synced_table() methods for w.postgres workspace-level service.
  • Add effective_file_event_queue field for databricks.sdk.service.catalog.CreateExternalLocation.
  • Add effective_file_event_queue field for databricks.sdk.service.catalog.ExternalLocationInfo.
  • Add effective_file_event_queue field for databricks.sdk.service.catalog.UpdateExternalLocation.
  • Add column_selection field for databricks.sdk.service.ml.Function.
  • Add cascade field for databricks.sdk.service.pipelines.DeletePipelineRequest.
  • Add default_branch field for databricks.sdk.service.postgres.ProjectSpec.
  • Add default_branch field for databricks.sdk.service.postgres.ProjectStatus.
  • Add ingress and ingress_dry_run fields for databricks.sdk.service.settings.AccountNetworkPolicy.
  • Add delete_app_thumbnail() and update_app_thumbnail() methods for w.apps workspace-level service.
  • Add create_message_comment(), list_conversation_comments() and list_message_comments() methods for w.genie workspace-level service.
  • Add apply_environment() method for w.pipelines workspace-level service.
  • Add name and permission fields for databricks.sdk.service.apps.AppResourceApp.
  • Add managed_encryption_settings field for databricks.sdk.service.catalog.CatalogInfo.
  • Add managed_encryption_settings field for databricks.sdk.service.catalog.CreateCatalog.
  • Add managed_encryption_settings field for databricks.sdk.service.catalog.UpdateCatalog.
  • Add comment field for databricks.sdk.service.dashboards.GenieFeedback.
  • Add thoughts field for databricks.sdk.service.dashboards.GenieQueryAttachment.
  • Add comment field for databricks.sdk.service.dashboards.GenieSendMessageFeedbackRequest.
  • Add request_source field for databricks.sdk.service.ml.DataSource.
  • Add is_online field for databricks.sdk.service.ml.MaterializedFeature.
  • Add connector_options field for databricks.sdk.service.pipelines.SchemaSpec.

... (truncated)

Changelog

Sourced from databricks-sdk's changelog.

Release v0.105.0 (2026-04-23)

API Changes

  • Add databricks.sdk.service.supervisoragents package.
  • Add w.secrets_uc workspace-level service.
  • Add

…with 69 updates

Bumps the training-dependencies group with 69 updates in the /training/rl directory:

| Package | From | To |
| --- | --- | --- |
| [numpy](https://github.com/numpy/numpy) | `1.26.4` | `2.4.4` |
| [marshmallow](https://github.com/marshmallow-code/marshmallow) | `3.26.2` | `4.3.0` |
| [packaging](https://github.com/pypa/packaging) | `26.1` | `26.2` |
| [cryptography](https://github.com/pyca/cryptography) | `46.0.7` | `47.0.0` |
| [rsl-rl-lib](https://github.com/leggedrobotics/rsl_rl) | `5.0.1` | `5.2.0` |
| [tensordict](https://github.com/pytorch/tensordict) | `0.12.1` | `0.12.2` |
| [azure-storage-file-datalake](https://github.com/Azure/azure-sdk-for-python) | `12.22.0` | `12.23.0` |
| [cachetools](https://github.com/tkem/cachetools) | `6.2.6` | `7.0.6` |
| [certifi](https://github.com/certifi/python-certifi) | `2026.2.25` | `2026.4.22` |
| [click](https://github.com/pallets/click) | `8.3.2` | `8.3.3` |
| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.2` | `13.2.1` |
| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.102.0` | `0.105.0` |
| [farama-notifications](https://github.com/Farama-Foundation/Farama-Notifications) | `0.0.4` | `0.0.6` |
| [fastapi](https://github.com/fastapi/fastapi) | `0.135.3` | `0.136.1` |
| [filelock](https://github.com/tox-dev/py-filelock) | `3.28.0` | `3.29.0` |
| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.46` | `3.1.47` |
| [greenlet](https://github.com/python-greenlet/greenlet) | `3.4.0` | `3.5.0` |
| [gunicorn](https://github.com/benoitc/gunicorn) | `23.0.0` | `25.3.0` |
| [gymnasium](https://github.com/Farama-Foundation/Gymnasium) | `1.2.3` | `1.3.0` |
| [huey](https://github.com/coleifer/huey) | `2.6.0` | `3.0.0` |
| [idna](https://github.com/kjd/idna) | `3.11` | `3.13` |
| [importlib-metadata](https://github.com/python/importlib_metadata) | `8.7.1` | `9.0.0` |
| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.8` | `3.10.9` |
| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |
| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.0.3` | `13.4.0.1` |
| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.2.75` |
| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.2.78` |
| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.2.75` |
| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.19.0.56` | `9.21.1.3` |
| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.2.0.46` |
| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.17.1.22` |
| [nvidia-curand](https://developer.nvidia.com/cuda-zone) | `10.4.0.35` | `10.4.2.55` |
| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.0.1` |
| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.7.10.1` |
| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.0` | `0.9.0` |
| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.28.9` | `2.30.4` |
| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.2.78` |
| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.6.5` |
| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.2.75` |
| [onnx-ir](https://github.com/onnx/ir-py) | `0.2.0` | `0.2.1` |
| [onnxscript](https://github.com/microsoft/onnxscript) | `0.6.2` | `0.7.0` |
| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.40.0` | `1.41.1` |
| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-asgi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-django](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-fastapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-flask](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-logging](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-psycopg2](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-requests](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-urllib](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-urllib3](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-instrumentation-wsgi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.41.0` | `1.41.1` |
| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.40.0` | `1.41.1` |
| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.61b0` | `0.62b1` |
| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.61b0` | `0.62b1` |
| [pandas](https://github.com/pandas-dev/pandas) | `2.3.3` | `3.0.2` |
| [protobuf](https://github.com/protocolbuffers/protobuf) | `6.33.6` | `7.34.1` |
| [pyarrow](https://github.com/apache/arrow) | `22.0.0` | `24.0.0` |
| [pydantic](https://github.com/pydantic/pydantic) | `2.13.1` | `2.13.3` |
| [pydantic-core](https://github.com/pydantic/pydantic) | `2.46.1` | `2.46.3` |
| [pytz](https://github.com/stub42/pytz) | `2025.2` | `2026.1.post1` |
| [setuptools](https://github.com/pypa/setuptools) | `81.0.0` | `82.0.1` |
| [skops](https://github.com/skops-dev/skops) | `0.13.0` | `0.14.0` |
| [tzdata](https://github.com/python/tzdata) | `2026.1` | `2026.2` |
| [uvicorn](https://github.com/Kludex/uvicorn) | `0.44.0` | `0.46.0` |
| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `1.17.3` | `2.1.2` |



Updates `numpy` from 1.26.4 to 2.4.4
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst)
- [Commits](numpy/numpy@v1.26.4...v2.4.4)

Updates `marshmallow` from 3.26.2 to 4.3.0
- [Changelog](https://github.com/marshmallow-code/marshmallow/blob/dev/CHANGELOG.rst)
- [Commits](marshmallow-code/marshmallow@3.26.2...4.3.0)

Updates `packaging` from 26.1 to 26.2
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](pypa/packaging@26.1...26.2)

Updates `cryptography` from 46.0.7 to 47.0.0
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](pyca/cryptography@46.0.7...47.0.0)

Updates `rsl-rl-lib` from 5.0.1 to 5.2.0
- [Release notes](https://github.com/leggedrobotics/rsl_rl/releases)
- [Commits](leggedrobotics/rsl_rl@v5.0.1...v5.2.0)

Updates `tensordict` from 0.12.1 to 0.12.2
- [Release notes](https://github.com/pytorch/tensordict/releases)
- [Commits](pytorch/tensordict@v0.12.1...v0.12.2)

Updates `azure-storage-file-datalake` from 12.22.0 to 12.23.0
- [Release notes](https://github.com/Azure/azure-sdk-for-python/releases)
- [Commits](Azure/azure-sdk-for-python@azure-storage-file-datalake_12.22.0...azure-storage-file-datalake_12.23.0)

Updates `cachetools` from 6.2.6 to 7.0.6
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](tkem/cachetools@v6.2.6...v7.0.6)

Updates `certifi` from 2026.2.25 to 2026.4.22
- [Commits](certifi/python-certifi@2026.02.25...2026.04.22)

Updates `click` from 8.3.2 to 8.3.3
- [Release notes](https://github.com/pallets/click/releases)
- [Changelog](https://github.com/pallets/click/blob/main/CHANGES.rst)
- [Commits](pallets/click@8.3.2...8.3.3)

Updates `cuda-toolkit` from 13.0.2 to 13.2.1

Updates `databricks-sdk` from 0.102.0 to 0.105.0
- [Release notes](https://github.com/databricks/databricks-sdk-py/releases)
- [Changelog](https://github.com/databricks/databricks-sdk-py/blob/main/CHANGELOG.md)
- [Commits](databricks/databricks-sdk-py@v0.102.0...v0.105.0)

Updates `farama-notifications` from 0.0.4 to 0.0.6
- [Release notes](https://github.com/Farama-Foundation/Farama-Notifications/releases)
- [Commits](Farama-Foundation/Farama-Notifications@0.0.4...0.0.6)

Updates `fastapi` from 0.135.3 to 0.136.1
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](fastapi/fastapi@0.135.3...0.136.1)

Updates `filelock` from 3.28.0 to 3.29.0
- [Release notes](https://github.com/tox-dev/py-filelock/releases)
- [Changelog](https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst)
- [Commits](tox-dev/filelock@3.28.0...3.29.0)

Updates `gitpython` from 3.1.46 to 3.1.47
- [Release notes](https://github.com/gitpython-developers/GitPython/releases)
- [Changelog](https://github.com/gitpython-developers/GitPython/blob/main/CHANGES)
- [Commits](gitpython-developers/GitPython@3.1.46...3.1.47)

Updates `greenlet` from 3.4.0 to 3.5.0
- [Changelog](https://github.com/python-greenlet/greenlet/blob/master/CHANGES.rst)
- [Commits](python-greenlet/greenlet@3.4.0...3.5.0)

Updates `gunicorn` from 23.0.0 to 25.3.0
- [Release notes](https://github.com/benoitc/gunicorn/releases)
- [Commits](benoitc/gunicorn@23.0.0...25.3.0)

Updates `gymnasium` from 1.2.3 to 1.3.0
- [Release notes](https://github.com/Farama-Foundation/Gymnasium/releases)
- [Commits](Farama-Foundation/Gymnasium@v1.2.3...v1.3.0)

Updates `huey` from 2.6.0 to 3.0.0
- [Release notes](https://github.com/coleifer/huey/releases)
- [Changelog](https://github.com/coleifer/huey/blob/master/CHANGELOG.md)
- [Commits](coleifer/huey@2.6.0...3.0.0)

Updates `idna` from 3.11 to 3.13
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](kjd/idna@v3.11...v3.13)

Updates `importlib-metadata` from 8.7.1 to 9.0.0
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/NEWS.rst)
- [Commits](python/importlib_metadata@v8.7.1...v9.0.0)

Updates `matplotlib` from 3.10.8 to 3.10.9
- [Release notes](https://github.com/matplotlib/matplotlib/releases)
- [Commits](matplotlib/matplotlib@v3.10.8...v3.10.9)

Updates `mpmath` from 1.3.0 to 1.4.1
- [Release notes](https://github.com/mpmath/mpmath/releases)
- [Changelog](https://github.com/mpmath/mpmath/blob/1.4.1/CHANGES)
- [Commits](mpmath/mpmath@1.3.0...1.4.1)

Updates `nvidia-cublas` from 13.1.0.3 to 13.4.0.1

Updates `nvidia-cuda-cupti` from 13.0.85 to 13.2.75

Updates `nvidia-cuda-nvrtc` from 13.0.88 to 13.2.78

Updates `nvidia-cuda-runtime` from 13.0.96 to 13.2.75

Updates `nvidia-cudnn-cu13` from 9.19.0.56 to 9.21.1.3

Updates `nvidia-cufft` from 12.0.0.61 to 12.2.0.46

Updates `nvidia-cufile` from 1.15.1.6 to 1.17.1.22

Updates `nvidia-curand` from 10.4.0.35 to 10.4.2.55

Updates `nvidia-cusolver` from 12.0.4.66 to 12.2.0.1

Updates `nvidia-cusparse` from 12.6.3.3 to 12.7.10.1

Updates `nvidia-cusparselt-cu13` from 0.8.0 to 0.9.0

Updates `nvidia-nccl-cu13` from 2.28.9 to 2.30.4

Updates `nvidia-nvjitlink` from 13.0.88 to 13.2.78

Updates `nvidia-nvshmem-cu13` from 3.4.5 to 3.6.5

Updates `nvidia-nvtx` from 13.0.85 to 13.2.75

Updates `onnx-ir` from 0.2.0 to 0.2.1
- [Release notes](https://github.com/onnx/ir-py/releases)
- [Commits](onnx/ir-py@v0.2.0...v0.2.1)

Updates `onnxscript` from 0.6.2 to 0.7.0
- [Release notes](https://github.com/microsoft/onnxscript/releases)
- [Commits](microsoft/onnxscript@v0.6.2...v0.7.0)

Updates `opentelemetry-api` from 1.40.0 to 1.41.1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/v1.41.1/CHANGELOG.md)
- [Commits](open-telemetry/opentelemetry-python@v1.40.0...v1.41.1)

Updates `opentelemetry-instrumentation` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-asgi` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-dbapi` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-django` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-fastapi` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-flask` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-logging` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-psycopg2` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-requests` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-urllib` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-urllib3` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-wsgi` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-proto` from 1.41.0 to 1.41.1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/v1.41.1/CHANGELOG.md)
- [Commits](open-telemetry/opentelemetry-python@v1.41.0...v1.41.1)

Updates `opentelemetry-sdk` from 1.40.0 to 1.41.1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/v1.41.1/CHANGELOG.md)
- [Commits](open-telemetry/opentelemetry-python@v1.40.0...v1.41.1)

Updates `opentelemetry-semantic-conventions` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python/commits)

Updates `opentelemetry-util-http` from 0.61b0 to 0.62b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `pandas` from 2.3.3 to 3.0.2
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Commits](pandas-dev/pandas@v2.3.3...v3.0.2)

Updates `protobuf` from 6.33.6 to 7.34.1
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Commits](https://github.com/protocolbuffers/protobuf/commits)

Updates `pyarrow` from 22.0.0 to 24.0.0
- [Release notes](https://github.com/apache/arrow/releases)
- [Commits](apache/arrow@apache-arrow-22.0.0...apache-arrow-24.0.0)

Updates `pydantic` from 2.13.1 to 2.13.3
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](pydantic/pydantic@v2.13.1...v2.13.3)

Updates `pydantic-core` from 2.46.1 to 2.46.3
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/commits)

Updates `pytz` from 2025.2 to 2026.1.post1
- [Release notes](https://github.com/stub42/pytz/releases)
- [Commits](stub42/pytz@release_2025.2...release_2026.1.post1)

Updates `setuptools` from 81.0.0 to 82.0.1
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](pypa/setuptools@v81.0.0...v82.0.1)

Updates `skops` from 0.13.0 to 0.14.0
- [Release notes](https://github.com/skops-dev/skops/releases)
- [Changelog](https://github.com/skops-dev/skops/blob/main/docs/changes.rst)
- [Commits](skops-dev/skops@v0.13.0...v0.14)

Updates `tzdata` from 2026.1 to 2026.2
- [Release notes](https://github.com/python/tzdata/releases)
- [Changelog](https://github.com/python/tzdata/blob/master/NEWS.md)
- [Commits](python/tzdata@2026.1...2026.2)

Updates `uvicorn` from 0.44.0 to 0.46.0
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](Kludex/uvicorn@0.44.0...0.46.0)

Updates `wrapt` from 1.17.3 to 2.1.2
- [Release notes](https://github.com/GrahamDumpleton/wrapt/releases)
- [Changelog](https://github.com/GrahamDumpleton/wrapt/blob/develop/docs/changes.rst)
- [Commits](GrahamDumpleton/wrapt@1.17.3...2.1.2)

---
updated-dependencies:
- dependency-name: numpy
  dependency-version: 2.4.4
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: marshmallow
  dependency-version: 4.3.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: packaging
  dependency-version: '26.2'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: cryptography
  dependency-version: 47.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: rsl-rl-lib
  dependency-version: 5.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: tensordict
  dependency-version: 0.12.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: azure-storage-file-datalake
  dependency-version: 12.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: cachetools
  dependency-version: 7.0.6
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: certifi
  dependency-version: 2026.4.22
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: click
  dependency-version: 8.3.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: cuda-toolkit
  dependency-version: 13.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: databricks-sdk
  dependency-version: 0.105.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: farama-notifications
  dependency-version: 0.0.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: fastapi
  dependency-version: 0.136.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: filelock
  dependency-version: 3.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: gitpython
  dependency-version: 3.1.47
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: greenlet
  dependency-version: 3.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: gunicorn
  dependency-version: 25.3.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: gymnasium
  dependency-version: 1.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: huey
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: idna
  dependency-version: '3.13'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: importlib-metadata
  dependency-version: 9.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: matplotlib
  dependency-version: 3.10.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: mpmath
  dependency-version: 1.4.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cublas
  dependency-version: 13.4.0.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cuda-cupti
  dependency-version: 13.2.75
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cuda-nvrtc
  dependency-version: 13.2.78
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cuda-runtime
  dependency-version: 13.2.75
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cudnn-cu13
  dependency-version: 9.21.1.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cufft
  dependency-version: 12.2.0.46
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cufile
  dependency-version: 1.17.1.22
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-curand
  dependency-version: 10.4.2.55
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: nvidia-cusolver
  dependency-version: 12.2.0.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cusparse
  dependency-version: 12.7.10.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-cusparselt-cu13
  dependency-version: 0.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-nccl-cu13
  dependency-version: 2.30.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-nvjitlink
  dependency-version: 13.2.78
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-nvshmem-cu13
  dependency-version: 3.6.5
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: nvidia-nvtx
  dependency-version: 13.2.75
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: onnx-ir
  dependency-version: 0.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: onnxscript
  dependency-version: 0.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: opentelemetry-api
  dependency-version: 1.41.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-asgi
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-dbapi
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-django
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-fastapi
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-flask
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-logging
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-psycopg2
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-requests
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-urllib
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-urllib3
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-instrumentation-wsgi
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-proto
  dependency-version: 1.41.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: opentelemetry-sdk
  dependency-version: 1.41.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: opentelemetry-semantic-conventions
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: opentelemetry-util-http
  dependency-version: 0.62b1
  dependency-type: direct:production
  dependency-group: training-dependencies
- dependency-name: pandas
  dependency-version: 3.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: protobuf
  dependency-version: 7.34.1
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: pyarrow
  dependency-version: 24.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: pydantic
  dependency-version: 2.13.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: pydantic-core
  dependency-version: 2.46.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: training-dependencies
- dependency-name: pytz
  dependency-version: 2026.1.post1
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: setuptools
  dependency-version: 82.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
- dependency-name: skops
  dependency-version: 0.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: tzdata
  dependency-version: '2026.2'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: uvicorn
  dependency-version: 0.46.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: training-dependencies
- dependency-name: wrapt
  dependency-version: 2.1.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: training-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Dependency version updates python Pull requests that update python code training labels Apr 27, 2026
@github-actions github-actions Bot changed the title chore(deps): bump the training-dependencies group across 1 directory with 69 updates security(deps): bump the training-dependencies group across 1 directory with 69 updates Apr 27, 2026
@github-actions
Copy link
Copy Markdown
Contributor

Dependency Review

The following issues were found:
  • ✅ 0 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ⚠️ 63 package(s) with unknown licenses.
See the Details below.

Snapshot Warnings

⚠️: No snapshots were found for the head SHA 8df03b8.
Ensure that dependencies are being submitted on PR branches and consider enabling retry-on-snapshot-warnings. See the documentation for more information and troubleshooting advice.

License Issues

training/rl/pyproject.toml

PackageVersionLicenseIssue Type
cryptography47.0.0NullUnknown License
marshmallow4.3.0NullUnknown License
packaging26.2NullUnknown License
rsl-rl-lib5.2.0NullUnknown License
tensordict0.12.2NullUnknown License

training/rl/requirements.txt

PackageVersionLicenseIssue Type
cachetools7.0.6NullUnknown License
click8.3.3NullUnknown License
cryptography47.0.0NullUnknown License
cuda-toolkit13.2.1NullUnknown License
databricks-sdk0.105.0NullUnknown License
fastapi0.136.1NullUnknown License
filelock3.29.0NullUnknown License
greenlet3.5.0NullUnknown License
gunicorn25.3.0NullUnknown License
gymnasium1.3.0NullUnknown License
huey3.0.0NullUnknown License
idna3.13NullUnknown License
marshmallow4.3.0NullUnknown License
matplotlib3.10.9NullUnknown License
mpmath1.4.1NullUnknown License
nvidia-cublas13.4.0.1NullUnknown License
nvidia-cuda-cupti13.2.75NullUnknown License
nvidia-cuda-nvrtc13.2.78NullUnknown License
nvidia-cuda-runtime13.2.75NullUnknown License
nvidia-cudnn-cu139.21.1.3NullUnknown License
nvidia-cufft12.2.0.46NullUnknown License
nvidia-cufile1.17.1.22NullUnknown License
nvidia-curand10.4.2.55NullUnknown License
nvidia-cusolver12.2.0.1NullUnknown License
nvidia-cusparse12.7.10.1NullUnknown License
nvidia-cusparselt-cu130.9.0NullUnknown License
nvidia-nccl-cu132.30.4NullUnknown License
nvidia-nvjitlink13.2.78NullUnknown License
nvidia-nvshmem-cu133.6.5NullUnknown License
nvidia-nvtx13.2.75NullUnknown License
onnx-ir0.2.1NullUnknown License
onnxscript0.7.0NullUnknown License
opentelemetry-api1.41.1NullUnknown License
opentelemetry-instrumentation0.62b1NullUnknown License
opentelemetry-instrumentation-asgi0.62b1NullUnknown License
opentelemetry-instrumentation-dbapi0.62b1NullUnknown License
opentelemetry-instrumentation-django0.62b1NullUnknown License
opentelemetry-instrumentation-fastapi0.62b1NullUnknown License
opentelemetry-instrumentation-flask0.62b1NullUnknown License
opentelemetry-instrumentation-logging0.62b1NullUnknown License
opentelemetry-instrumentation-psycopg20.62b1NullUnknown License
opentelemetry-instrumentation-requests0.62b1NullUnknown License
opentelemetry-instrumentation-urllib0.62b1NullUnknown License
opentelemetry-instrumentation-urllib30.62b1NullUnknown License
opentelemetry-instrumentation-wsgi0.62b1NullUnknown License
opentelemetry-proto1.41.1NullUnknown License
opentelemetry-sdk1.41.1NullUnknown License
opentelemetry-semantic-conventions0.62b1NullUnknown License
opentelemetry-util-http0.62b1NullUnknown License
packaging26.2NullUnknown License
pyarrow24.0.0NullUnknown License
pydantic2.13.3NullUnknown License
rsl-rl-lib5.2.0NullUnknown License
skops0.14.0NullUnknown License
tensordict0.12.2NullUnknown License
uvicorn0.46.0NullUnknown License
certifi2026.4.22NullUnknown License
tzdata2026.2NullUnknown License

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
pip/cryptography 47.0.0 UnknownUnknown
pip/marshmallow 4.3.0 UnknownUnknown
pip/numpy 2.4.4 UnknownUnknown
pip/packaging 26.2 UnknownUnknown
pip/rsl-rl-lib 5.2.0 UnknownUnknown
pip/tensordict 0.12.2 UnknownUnknown
pip/azure-storage-file-datalake 12.23.0 🟢 6.7
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Packaging⚠️ -1packaging workflow not detected
Code-Review🟢 10all changesets reviewed
CII-Best-Practices🟢 5badge detected: Passing
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Binary-Artifacts🟢 8binaries present in source code
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing🟢 10project is fuzzed
pip/cachetools 7.0.6 UnknownUnknown
pip/certifi 2026.4.22 🟢 6.6
Details
CheckScoreReason
Maintained🟢 1010 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 10security policy file detected
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review🟢 5Found 1/2 approved changesets -- score normalized to 5
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Pinned-Dependencies🟢 5dependency not pinned by hash detected -- score normalized to 5
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 9license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Packaging🟢 10packaging workflow detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
pip/click 8.3.3 UnknownUnknown
pip/cryptography 47.0.0 UnknownUnknown
pip/cuda-toolkit 13.2.1 UnknownUnknown
pip/databricks-sdk 0.105.0 UnknownUnknown
pip/farama-notifications 0.0.6 UnknownUnknown
pip/fastapi 0.136.1 UnknownUnknown
pip/filelock 3.29.0 UnknownUnknown
pip/gitpython 3.1.47 🟢 7.7
Details
CheckScoreReason
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Code-Review🟢 6Found 4/6 approved changesets -- score normalized to 6
Packaging⚠️ -1packaging workflow not detected
Maintained🟢 1030 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10
Binary-Artifacts🟢 10no binaries found in the repo
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions🟢 9detected GitHub workflow tokens with excessive permissions
Fuzzing🟢 10project is fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 3branch protection is not maximal on development and all release branches
SAST🟢 10SAST tool is run on all commits
pip/greenlet 3.5.0 UnknownUnknown
pip/gunicorn 25.3.0 UnknownUnknown
pip/gymnasium 1.3.0 UnknownUnknown
pip/huey 3.0.0 UnknownUnknown
pip/idna 3.13 UnknownUnknown
pip/importlib-metadata 9.0.0 UnknownUnknown
pip/marshmallow 4.3.0 UnknownUnknown
pip/matplotlib 3.10.9 UnknownUnknown
pip/mpmath 1.4.1 UnknownUnknown
pip/numpy 2.4.4 UnknownUnknown
pip/nvidia-cublas 13.4.0.1 UnknownUnknown
pip/nvidia-cuda-cupti 13.2.75 UnknownUnknown
pip/nvidia-cuda-nvrtc 13.2.78 UnknownUnknown
pip/nvidia-cuda-runtime 13.2.75 UnknownUnknown
pip/nvidia-cudnn-cu13 9.21.1.3 UnknownUnknown
pip/nvidia-cufft 12.2.0.46 UnknownUnknown
pip/nvidia-cufile 1.17.1.22 UnknownUnknown
pip/nvidia-curand 10.4.2.55 UnknownUnknown
pip/nvidia-cusolver 12.2.0.1 UnknownUnknown
pip/nvidia-cusparse 12.7.10.1 UnknownUnknown
pip/nvidia-cusparselt-cu13 0.9.0 UnknownUnknown
pip/nvidia-nccl-cu13 2.30.4 UnknownUnknown
pip/nvidia-nvjitlink 13.2.78 UnknownUnknown
pip/nvidia-nvshmem-cu13 3.6.5 UnknownUnknown
pip/nvidia-nvtx 13.2.75 UnknownUnknown
pip/onnx-ir 0.2.1 UnknownUnknown
pip/onnxscript 0.7.0 UnknownUnknown
pip/opentelemetry-api 1.41.1 UnknownUnknown
pip/opentelemetry-instrumentation 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-asgi 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-dbapi 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-django 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-fastapi 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-flask 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-logging 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-psycopg2 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-requests 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-urllib 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-urllib3 0.62b1 UnknownUnknown
pip/opentelemetry-instrumentation-wsgi 0.62b1 UnknownUnknown
pip/opentelemetry-proto 1.41.1 UnknownUnknown
pip/opentelemetry-sdk 1.41.1 UnknownUnknown
pip/opentelemetry-semantic-conventions 0.62b1 UnknownUnknown
pip/opentelemetry-util-http 0.62b1 UnknownUnknown
pip/packaging 26.2 UnknownUnknown
pip/pandas 3.0.2 UnknownUnknown
pip/protobuf 7.34.1 UnknownUnknown
pip/pyarrow 24.0.0 UnknownUnknown
pip/pydantic 2.13.3 UnknownUnknown
pip/pydantic-core 2.46.3 🟢 6.7
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 16 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 10all changesets reviewed
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies🟢 8dependency not pinned by hash detected -- score normalized to 8
License🟢 10license file detected
Fuzzing🟢 10project is fuzzed
Signed-Releases⚠️ 0Project has not signed or included provenance with any releases.
Security-Policy🟢 10security policy file detected
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Packaging🟢 10packaging workflow detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
pip/pytz 2026.1.post1 UnknownUnknown
pip/rsl-rl-lib 5.2.0 UnknownUnknown
pip/setuptools 82.0.1 UnknownUnknown
pip/skops 0.14.0 UnknownUnknown
pip/tensordict 0.12.2 UnknownUnknown
pip/tzdata 2026.2 🟢 5.4
Details
CheckScoreReason
Code-Review🟢 7Found 16/22 approved changesets -- score normalized to 7
Maintained🟢 45 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 4
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
License🟢 9license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
Security-Policy🟢 10security policy file detected
Packaging🟢 10packaging workflow detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
pip/uvicorn 0.46.0 UnknownUnknown
pip/wrapt 2.1.2 UnknownUnknown

Scanned Files

  • training/rl/pyproject.toml
  • training/rl/requirements.txt

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 27, 2026

AW Dependabot PR Review completed successfully!

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 27, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 66.56%. Comparing base (d77c167) to head (8df03b8).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #577      +/-   ##
==========================================
+ Coverage   63.91%   66.56%   +2.65%     
==========================================
  Files         250      262      +12     
  Lines       15409    16639    +1230     
  Branches     2163     2301     +138     
==========================================
+ Hits         9848    11076    +1228     
  Misses       5274     5274              
- Partials      287      289       +2     
Flag Coverage Δ *Carryforward flag
pester 83.13% <ø> (ø) Carriedforward from d77c167
pytest-data-pipeline 100.00% <ø> (ø) Carriedforward from d77c167
pytest-dataviewer 65.12% <ø> (ø) Carriedforward from d77c167
pytest-dm-tools 100.00% <ø> (ø) Carriedforward from d77c167
pytest-evaluation 99.83% <ø> (?)
pytest-fuzz 4.97% <ø> (ø)
pytest-inference 0.00% <ø> (ø) Carriedforward from d77c167
pytest-training 82.14% <ø> (ø)
vitest 51.08% <ø> (ø) Carriedforward from d77c167

*This pull request uses carry forward flags. Click here to find out more.
see 12 files with indirect coverage changes

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

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

⚠️ Maintainer review recommended

Advisory Review Summary

PR: security(deps): bump the training-dependencies group across 1 directory with 69 updates
Ecosystem: uv / pip/training/rl
Manifests touched: training/rl/pyproject.toml (direct deps), training/rl/requirements.txt (lockfile)

Surfaces affected:

  • training-rl-abi — numpy major bump violates Isaac Sim hard pin (HIGH RISK)
  • python-runtime (training) — pandas, pyarrow, marshmallow, protobuf major bumps (MEDIUM RISK)
Package From To Severity Surface
numpy 1.26.4 2.4.4 🔴 High training-rl-abi
marshmallow 3.26.2 4.3.0 🟡 Medium python-runtime
cryptography 46.0.7 47.0.0 🟡 Medium python-runtime
pandas 2.3.3 3.0.2 🟡 Medium python-runtime
pyarrow 22.0.0 24.0.0 🟡 Medium python-runtime
protobuf 6.33.6 7.34.1 🟡 Medium python-runtime
wrapt 1.17.3 2.1.2 🟠 Medium-High python-runtime
gunicorn 23.0.0 25.3.0 🟡 Medium python-runtime
huey 2.6.0 3.0.0 🟡 Medium python-runtime
importlib-metadata 8.7.1 9.0.0 🟡 Medium python-runtime
cachetools 6.2.6 7.0.6 🟢 Low python-runtime
gymnasium 1.2.3 1.3.0 🟢 Low python-runtime
rsl-rl-lib 5.0.1 5.2.0 🟢 Low python-runtime
tensordict 0.12.1 0.12.2 🟢 Low python-runtime
certifi 2026.2.25 2026.4.22 🟢 Low python-runtime
52 other packages 🟢 Low python-runtime

numpy

Surface: training-rl-abiHIGH RISK trigger fired

numpy==2.4.4 is a major version bump (1.26.4 → 2.4.4) that directly violates the hard runtime pin in training/rl/scripts/train.sh:

uv pip install --upgrade "numpy>=1.26.0,<2.0.0"

This pin exists for Isaac Sim 4.x ABI compatibility. Isaac Sim bundles native C extensions compiled against numpy 1.x ABI (NPY_1_7_API_VERSION). Loading numpy 2.x in the same process causes symbol resolution failures or silent numerical corruption.

The conflict manifests at runtime because train.sh:

  1. First installs numpy<2.0.0 (1.x)
  2. Then runs uv pip install --no-deps -r requirements.txt which installs numpy==2.4.4 (2.x), overriding step 1

No GHSA/CVE advisory IDs were present in the PR body for this package — this is a routine upstream release bump, not a security fix.

Required action: Verify Isaac Sim 4.x (Isaac Lab 2.3.2 container at nvcr.io/nvidia/isaac-lab:2.3.2) is compatible with numpy 2.x before merging. If not, exclude numpy from this grouped update and update the train.sh pin separately after validation on GPU nodes.

Validation Results

⚠️ Validation skipped: Python/uv toolchain unavailable in the review runner environment. Manual validation recommended.

Required validation: GPU smoke-test RL training with nvcr.io/nvidia/isaac-lab:2.3.2 container after updating train.sh pin.


marshmallow

Surface: python-runtime — direct dependency

marshmallow==4.3.0 is a major bump from 3.26.2. The marshmallow 4.0 release introduced breaking changes to schema field validators, Meta options, and dump/load return types. This dependency is used by azure-ai-ml for ML job schema serialization.

No GHSA/CVE advisories identified for this bump. Source: [marshmallow changelog]((marshmallow.readthedocs.io/redacted)


cryptography

Surface: python-runtime

cryptography==47.0.0 is a major bump from 46.0.7. The cryptography library is part of the security(deps): group signal. This package frequently carries CVE remediations in major releases; however no explicit GHSA or CVE IDs were referenced in the PR body. The 47.x series drops legacy cipher support. Validate Azure SDK TLS and JWT signing behavior.

Source: [cryptography changelog]((cryptography.io/redacted)


pandas

Surface: python-runtime — transitive via mlflow

pandas==3.0.2 is a major bump from 2.3.3. pandas 3.0 enforces copy-on-write semantics by default and removes several deprecated APIs. This is a lockfile-only (transitive) bump via mlflow. No explicit advisory IDs referenced.


pyarrow

Surface: python-runtime — transitive via mlflow

pyarrow==24.0.0 is a 2-major-version bump from 22.0.0. pyarrow has ABI sensitivity with numpy and pandas. With numpy 2.x also landing in this PR, the combined numpy+pyarrow upgrade requires validation. Source: [Apache Arrow releases]((arrow.apache.org/redacted)


wrapt

Surface: python-runtime — transitive via opentelemetry-instrumentation

wrapt==2.1.2 is a major bump from 1.17.3. wrapt 2.x changes decorator wrapping behavior and drops Python 2 compatibility shims. OpenTelemetry instrumentation wraps FastAPI/Flask handlers — verify instrumented endpoints still function correctly.


Other notable major bumps (overflow from inline comment limit)

Package From To Notes
protobuf 6.33.6 7.34.1 Major bump; affects MLflow gRPC serialization
gunicorn 23.0.0 25.3.0 2 major jumps; worker config API changes
huey 2.6.0 3.0.0 Task queue; breaking API in 3.0
importlib-metadata 8.7.1 9.0.0 Build tooling; affects package discovery
cachetools 6.2.6 7.0.6 TTLCache/LRUCache eviction API changes
onnxscript 0.6.2 0.7.0 Used by rsl-rl-lib; ONNX export path

Validation Results

⚠️ Validation skipped: python3 / uv toolchain unavailable in the review runner environment. Manual validation recommended per the per-surface rubric.

Recommended manual steps before merging:

  1. Update training/rl/scripts/train.sh numpy pin or verify Isaac Sim 2.3.2 container numpy 2.x compatibility
  2. Run cd training && uv sync && uv run ruff check . && uv run pytest --tb=short -q
  3. Smoke-test RL training on a GPU node with the Isaac Lab container

Advisory verdict: COMMENT — The numpy 1.x → 2.x bump directly violates the enforced train.sh pin (>=1.26.0,<2.0.0) required for Isaac Sim 4.x ABI compatibility; this grouped update should not merge until that conflict is resolved and validated on a GPU node.

Note

🔒 Integrity filter blocked 1 item

The following item were blocked because they don't meet the GitHub integrity level.

  • #577 pull_request_read: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".

To allow these resources, lower min-integrity in your GitHub frontmatter:

tools:
  github:
    min-integrity: approved  # merged | approved | unapproved | none

Generated by AW Dependabot PR Review for issue #577 · ● 1.9M

"azure-identity==1.25.3",
"azure-ai-ml==1.32.0",
"marshmallow==3.26.2",
"marshmallow==4.3.0",
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.

marshmallow 3 → 4 (breaking API changes)

marshmallow==4.3.0 is a major version bump from 3.26.2. The marshmallow 4.0 release contains breaking schema serialization changes (field validators, Meta class options, and dump/load method signatures changed). This is used transitively by azure-ai-ml and directly by this package.

Review the [marshmallow 4.0 migration guide]((marshmallow.readthedocs.io/redacted) and confirm no ML job submission or model logging code depends on removed 3.x API surface.

requires-python = ">=3.12"
dependencies = [
"numpy==1.26.4",
"numpy==2.4.4",
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.

⚠️ ABI breakage — Isaac Sim incompatibility

numpy==2.4.4 is a major version bump (1.x → 2.x) that directly violates the hard pin in training/rl/scripts/train.sh:

uv pip install --upgrade "numpy>=1.26.0,<2.0.0"

train.sh enforces <2.0.0 at runtime to satisfy Isaac Sim's ABI requirements. At execution time, train.sh first installs a 1.x numpy, then uv pip install --no-deps -r requirements.txt re-installs numpy==2.4.4, leaving 2.x on the path. This will cause CUDA_ERROR_NO_DEVICE or silent numerical failures in Isaac Lab environments.

Resolution: Update the train.sh pin constraint first and validate against Isaac Sim 4.x before merging. If numpy 2.x is not yet supported by Isaac Sim, revert this single line to "numpy==1.26.4" and exclude numpy from this grouped bump.

"packaging==26.2",
"psutil==7.2.2",
"pynvml==13.0.1",
"pyperclip==1.11.0",
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.

cryptography 46 → 47 (security update)

cryptography==47.0.0 is a major bump from 46.0.7. This package is part of the security(deps): group signal; the cryptography library frequently ships major versions with CVE remediations. The 47.x release drops support for some legacy cipher suites. Validate that no Azure SDK or JWT signing code depends on deprecated ciphers from 46.x.

Source: [cryptography changelog]((cryptography.io/redacted)

# tensorboard
# tensordict
pandas==2.3.3
pandas==3.0.2
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.

pandas 2 → 3 (breaking changes, transitive via mlflow)

pandas==3.0.2 is a major version bump from 2.3.3. pandas 3.0 removes .swapaxes(), changes copy-on-write semantics by default, and drops Python 3.9 support. This is a transitive dependency via mlflow. Confirm MLflow 3.11.1 is tested against pandas 3.x — check the [MLflow compatibility matrix]((mlflow.org/redacted) if MLflow metric logging or artifact loading breaks in CI.

networkx==3.6.1
# via torch
numpy==1.26.4
numpy==2.4.4
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.

Lockfile echo of the ABI-breaking numpy bump

This locked entry (numpy==2.4.4) is regenerated from pyproject.toml. Fixing line 7 of pyproject.toml back to numpy==1.26.4 and re-running uv pip compile pyproject.toml -o requirements.txt will reset this entry to 1.26.4 and restore compatibility with the train.sh runtime pin.

katriendg added a commit that referenced this pull request Apr 28, 2026
#580)

## Description

Rewired the AW Dependabot PR Review workflow to fire *after* the `PR
Validation` orchestrator finishes instead of racing it on `pull_request`
events, replaced the agent persona's unreachable in-sandbox validation
commands with a deterministic **Validation Signal** rubric, and pruned
11 dead bash allow-list entries from the AWF firewall sandbox.

> **Motivation.** PR #577 exposed a structural problem: the agent
persona instructed execution of `uv`, `pytest`, `npm ci`, `terraform`,
and `go` inside the AWF firewall sandbox, but those binaries live on the
host runner and are never mounted into the container. The agent reported
`⚠️ Validation skipped: Python/uv toolchain unavailable` — misleading
output that obscured actual advisory value. Concurrently, the
`pull_request` trigger meant the agent could commit to a verdict before
slow CI surfaces (training pytest, terraform tests) finalized, producing
approvals that disagreed with later-red merge gates.

Additional note:

> This change is an experimental phase to learn optimal solutions with
the current AWF capabilities. The long-term solution may involve
re-enabling in-agent validation if AWF supports additional host mounts,
or it may involve a more complex multi-agent choreography with a
dedicated validation agent. This is the reason for why we related the
Issue ID to #579 instead of closing it as a direct fix.

## Type of Change

- [ ] 🐛 Bug fix (non-breaking change fixing an issue)
- [x] ✨ New feature (non-breaking change adding functionality)
- [ ] 💥 Breaking change (fix or feature causing existing functionality
to change)
- [ ] 📚 Documentation update
- [x] 🏗️ Infrastructure change (Terraform/IaC)
- [ ] ♻️ Refactoring (no functional changes)

## Component(s) Affected

- [ ] `infrastructure/terraform/prerequisites/` - Azure subscription
setup
- [ ] `infrastructure/terraform/` - Terraform infrastructure
- [ ] `infrastructure/setup/` - OSMO control plane / Helm
- [ ] `workflows/` - Training and evaluation workflows
- [ ] `training/` - Training pipelines and scripts
- [ ] `docs/` - Documentation

## Testing Performed

- [ ] Terraform `plan` reviewed (no unexpected changes)
- [ ] Terraform `apply` tested in dev environment
- [ ] Training scripts tested locally with Isaac Sim
- [ ] OSMO workflow submitted successfully
- [ ] Smoke tests passed (`smoke_test_azure.py`)

## Documentation Impact

- [x] No documentation changes needed
- [ ] Documentation updated in this PR
- [ ] Documentation issue filed

## Bug Fix Checklist

*Complete this section for bug fix PRs. Skip for other contribution
types.*

- [ ] Linked to issue being fixed
- [ ] Regression test included, OR
- [ ] Justification for no regression test:

## Checklist

- [x] My code follows the [project conventions](copilot-instructions.md)
- [x] Commit messages follow [conventional commit
format](instructions/commit-message.instructions.md)
- [x] I have performed a self-review
- [x] Documentation impact assessed above
- [x] No new linting warnings introduced

---

## Changes

### Trigger migration: `pull_request` → `workflow_run`

The workflow previously fired on `pull_request` events with path filters
for dependency manifests. This meant the agent ran in parallel with CI
and could finalize its verdict before slow check suites completed —
producing approvals that later contradicted red merge gates.

- Switched the trigger to `workflow_run` after the **`PR Validation`**
orchestrator completes, so the agent has final per-job pass/fail
conclusions before reasoning about the PR.
- Added a **`resolve-pr`** step using `actions/github-script@v9` that
extracts the Dependabot PR context from the `workflow_run` payload. The
step implements two-tier PR resolution (direct from
`workflow_run.pull_requests` → search API fallback for forks) and
exports `PR_VALIDATION_CONCLUSION`, `PR_NUMBER`, `PR_HEAD_SHA`, and
other context as environment variables.
- Removed `bots:`, `reaction:`, and `status-comment:` frontmatter keys
(not applicable under `workflow_run` context).
- Simplified concurrency from per-PR grouping to per-workflow singleton
— consistent with `workflow_run` semantics where `pull_request.number`
is not in the event payload.
- Updated activation and pre-activation `if:` conditions to validate
`workflow_run.event == 'pull_request'` with fork guards via
`repository.id` and `!(repository.fork)`.
- Added `# zizmor: ignore[dangerous-triggers]` annotations at the
trigger and activation condition with justification that the trigger is
secured with role and fork validation.

### Persona rewrite: Validation Execution → Validation Signal

The old "Validation Execution" section instructed the agent to run `uv
sync`, `pytest`, `ruff check`, `npm ci`, `terraform validate`, and `go
vet` inside the AWF firewall sandbox. Those binaries are installed on
the host runner but never mounted into the sandbox container — every
invocation failed, producing the misleading `⚠️ Validation skipped`
banner observed in PR #577.

- Replaced the entire section with **Validation Signal** anchored on
three sources: deterministic CI check-run conclusions, static manifest
reasoning, and advisory enrichment.
- Added a **Surface to Check Run Map** table mapping 10 surfaces
(dataviewer-frontend, python-runtime variants, terraform, gomod, docker,
github-actions) to their authoritative CI check run names.
- Added **Static Impact Reasoning** with five manifest-level checks the
sandbox *can* do safely: Isaac Sim ABI guard (`numpy>=1.26.0,<2.0.0`),
torch/tensordict/onnxruntime-gpu flagging, dataviewer peer-dep conflict
detection via `npm view`, terraform provider changelog scraping via
`web-fetch`, and go module direct major quoting.
- Rewrote **Verdict Adjustment** to key off `PR_VALIDATION_CONCLUSION` —
green CI with clean static reasoning may upgrade to `APPROVE`; red CI
forces `COMMENT` with failing check-run names and URLs. The Isaac Sim
ABI guard is "sticky": a `numpy` 2.x bump keeps the verdict at `COMMENT`
regardless of CI.
- Added a `## Trigger Posture` section to the workflow prompt
documenting the `workflow_run` model, exported env vars, and sandbox
constraints.
- Expanded **Step-by-Step** from 4 to 6 steps — added context resolution
and CI signal reading as steps 1–2. Explicit instruction to never skip
enrichment on red CI so maintainers can triage grouped PRs.

### Bash allow-list cleanup

- Removed **11 dead entries** from the `tools.bash:` allow-list that
invoked `uv`, `pytest`, `npm ci`, `terraform`, and `go` — all
unreachable inside the AWF firewall container.
- Added **2 targeted entries**: `cat training/rl/requirements.txt` and
`cat training/rl/scripts/train.sh` to support the Isaac Sim ABI guard
static check.

### Permissions and lifecycle cleanup

- Dropped `discussions: write`, `issues: write`, and `pull-requests:
write` from the activation job (no longer needed without the
reaction/comment steps).
- Added `actions: read` to both activation and copilot jobs (required
for check-run queries).
- Removed the eyes-reaction, body-computation, workflow-run-comment, and
conclusion-notification steps — the `workflow_run` trigger has no direct
PR event to react to.

## Related Issues

Related to #579

## Notes

- The lock file (`.github/workflows/aw-dependabot-pr-review.lock.yml`)
was recompiled via `gh aw compile`, which changes metadata hashes and
heredoc delimiters throughout — these are mechanical changes, not
hand-edits.
- The review will now appear 5–15 minutes later than the old
`pull_request` trigger (after CI completes), but the trade-off is
accurate CI signal in every review.
- The agent retains its advisory-only posture (`APPROVE` or `COMMENT`,
never `REQUEST_CHANGES`) and its safe-output caps (5 inline comments, 1
review, 2 add-comments).

## Follow-up Tasks

- Observe the workflow for one full Dependabot cycle to confirm the
`resolve-pr` step correctly resolves PRs from the `workflow_run`
payload.
- Consider adding the `docker` ecosystem to `.github/dependabot.yml` —
the persona's docker surface row currently never fires because no
Dockerfile entries are configured.
- Investigate whether future AWF releases support mounting additional
host directories into the sandbox, which would re-enable in-agent
validation as a complementary signal.
@katriendg
Copy link
Copy Markdown
Collaborator

@dependabot rebase

@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github Apr 28, 2026

Looks like these dependencies are updatable in another way, so this is no longer needed.

@dependabot dependabot Bot closed this Apr 28, 2026
@dependabot dependabot Bot deleted the dependabot/pip/training/rl/training-dependencies-cab087d50c branch April 28, 2026 10:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Dependency version updates python Pull requests that update python code training

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants