Skip to content

Commit b910097

Browse files
Document that a None checkpoint can mean an unreachable server
``omni.client`` reports a checkpoint that was never published and a server it cannot reach identically, so both leave the download raising FileNotFoundError and both return None. The printed message says so, but the docstring and the changelog described None as an unpublished checkpoint only, inviting callers to read a transient outage as a confirmed absence.
1 parent ab97f79 commit b910097

2 files changed

Lines changed: 7 additions & 4 deletions

File tree

source/isaaclab_rl/changelog.d/antoiner-pretrained-checkpoint-errors.minor.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@ Changed
1313
``RuntimeError`` when a published checkpoint cannot be downloaded, for instance when the
1414
``.pretrained_checkpoints`` cache directory is not writable, instead of returning ``None``. The
1515
originating error is chained as the cause. ``None`` is now returned only when the asset server does not
16-
provide the checkpoint, so callers that treat ``None`` as "no checkpoint published for this task" are
17-
unchanged; callers that relied on ``None`` to mask local download failures must catch ``RuntimeError``.
16+
report the checkpoint, which covers both an unpublished checkpoint and a server that could not be
17+
reached; callers that relied on ``None`` to mask local download failures must catch ``RuntimeError``.

source/isaaclab_rl/isaaclab_rl/utils/pretrained_checkpoint.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -239,8 +239,11 @@ def get_published_pretrained_checkpoint(
239239
to use the legacy checkpoint layout.
240240
241241
Returns:
242-
The path, or None when the asset server does not publish a checkpoint for this
243-
task and backend combination. The reason is printed before returning.
242+
The path, or None when the asset server does not report a checkpoint for this task
243+
and backend combination. That covers both a checkpoint that was never published and
244+
a server that could not be reached, which ``omni.client`` does not distinguish, so a
245+
transient outage is not evidence that a checkpoint does not exist. The reason is
246+
printed before returning.
244247
245248
Raises:
246249
RuntimeError: If the checkpoint is published but could not be downloaded, for

0 commit comments

Comments
 (0)