Skip to content

cherrypick: automated workflow for release tag#454

Closed
jiwenc-nv wants to merge 25 commits into
mainfrom
jiwenc/auto-release-cp-1.1.x
Closed

cherrypick: automated workflow for release tag#454
jiwenc-nv wants to merge 25 commits into
mainfrom
jiwenc/auto-release-cp-1.1.x

Conversation

@jiwenc-nv
Copy link
Copy Markdown
Collaborator

@jiwenc-nv jiwenc-nv commented May 1, 2026

Summary by CodeRabbit

  • New Features

    • CloudXR runtime containerization with Docker support for OpenXR integration
    • Depth reprojection mesh grid configuration in WebXR UI for improved rendering
    • Version bump to 1.1.x
  • Improvements

    • CloudXR SDK upgraded to stable 6.1.0 (from release candidates)
    • Optimized polling with exponential backoff strategy
    • NumPy minimum version updated to 1.23
    • Parallel CMake builds for faster compilation
  • Documentation

    • Updated device compatibility matrix (Meta Quest 2/3/3S, Pico 4 Ultra support)
    • Clarified hardware and software requirements by use case
    • Fixed documentation links and typos
    • Added build optimization instructions

jiwenc-nv and others added 25 commits March 5, 2026 07:52
* Revert "Promote run_cloudxr_via_wheel.sh to run_cloudxr.sh"

This reverts commit 882ae3b.

* Add Kitmaker integration (#172)

* Revert "Rename run_cloudxr.sh to run_cloudxr_via_docker.sh"

This reverts commit ae0d9b6.

* Revert "Revert "Rename run_cloudxr.sh to run_cloudxr_via_docker.sh""

This reverts commit 706d746.

* Revert "Revert "Promote run_cloudxr_via_wheel.sh to run_cloudxr.sh""

This reverts commit c32b91d.

* WIP test

---------

Co-authored-by: Jiwen Cai <jiwenc@nvidia.com>
Co-authored-by: Andrei Aristarkhov <aaristarkhov@nvidia.com>
- Copy ndarray slots via np.from_dlpack(input).copy() before in-place transforms
- Numpy version tests / smoke; requirements numpy>=1.23
- Tests for optional absent/present toggling across calls
@jiwenc-nv jiwenc-nv closed this May 1, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 1, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 5d9dced3-682f-4f7d-8247-bc2aa2eb4b57

📥 Commits

Reviewing files that changed from the base of the PR and between a939dd1 and 237c40d.

⛔ Files ignored due to path filters (7)
  • docs/source/_static/hardware-req-01.svg is excluded by !**/*.svg
  • docs/source/_static/hardware-req-02.svg is excluded by !**/*.svg
  • docs/source/_static/hardware-req-03.svg is excluded by !**/*.svg
  • docs/source/_static/hardware-req-04.svg is excluded by !**/*.svg
  • docs/source/_static/isaac-teleop-architecture.svg is excluded by !**/*.svg
  • docs/source/_static/isaaclab.jpg is excluded by !**/*.jpg
  • docs/source/_static/isaacros.png is excluded by !**/*.png
📒 Files selected for processing (40)
  • .github/workflows/build-ubuntu.yml
  • .github/workflows/release-tag.yml
  • .nspect-allowlist.toml
  • README.md
  • VERSION
  • deps/cloudxr/.env.default
  • deps/cloudxr/Dockerfile.runtime-ngc
  • deps/cloudxr/Dockerfile.test
  • deps/cloudxr/docker-compose.yaml
  • deps/cloudxr/runtime/entrypoint-ngc.sh
  • deps/cloudxr/runtime/main.py
  • deps/cloudxr/webxr_client/helpers/DeviceProfiles.ts
  • deps/cloudxr/webxr_client/helpers/react/CloudXRComponent.tsx
  • deps/cloudxr/webxr_client/helpers/utils.ts
  • deps/cloudxr/webxr_client/src/CloudXR2DUI.tsx
  • deps/cloudxr/webxr_client/src/index.html
  • docs/source/_static/css/custom.css
  • docs/source/getting_started/build_from_source.rst
  • docs/source/getting_started/quick_start.rst
  • docs/source/index.rst
  • docs/source/overview/ecosystem.rst
  • docs/source/references/license.rst
  • docs/source/references/requirements.rst
  • examples/oxr/python/pyproject.toml
  • examples/retargeting/python/pyproject.toml
  • examples/teleop_session_manager/python/pyproject.toml
  • scripts/download_cloudxr_runtime_sdk.sh
  • scripts/download_cloudxr_sdk.sh
  • scripts/run_cloudxr_via_docker.sh
  • src/core/cloudxr/python/CMakeLists.txt
  • src/core/cloudxr/python/runtime.py
  • src/core/deviceio/cpp/full_body_tracker_pico.cpp
  • src/core/python/requirements.txt
  • src/core/retargeting_engine/python/utilities/controller_transform.py
  • src/core/retargeting_engine/python/utilities/hand_transform.py
  • src/core/retargeting_engine/python/utilities/head_transform.py
  • src/core/retargeting_engine/python/utilities/transform_utils.py
  • src/core/retargeting_engine_tests/python/test_transform_numpy_versions.py
  • src/core/retargeting_engine_tests/python/test_transforms.py
  • src/core/retargeting_engine_tests/python/transform_numpy_version_smoke.py

📝 Walkthrough

Walkthrough

This pull request updates Isaac Teleop to version 1.1.x, introducing CloudXR runtime container support with reprojection grid configuration, automating release tagging via GitHub Actions, upgrading NumPy dependency requirements, optimizing retargeter tensor handling, and updating documentation for Isaac Lab develop branch references and detailed use-case requirements.

Changes

Cohort / File(s) Summary
CI/CD Workflows
.github/workflows/build-ubuntu.yml, .github/workflows/release-tag.yml
Updated build polling with exponential backoff (20→15 attempts, 1.25× delay multiplier); introduced new release-tag workflow for automated semantic versioning and tag management with build validation.
Version and Allowlist
VERSION, .nspect-allowlist.toml
Bumped release version from 1.0.x to 1.1.x; added OSS documentation exclusion allowlist.
CloudXR Runtime Container
deps/cloudxr/Dockerfile.runtime-ngc, deps/cloudxr/runtime/entrypoint-ngc.sh, deps/cloudxr/runtime/main.py, deps/cloudxr/docker-compose.yaml
Added production CloudXR runtime image (Ubuntu 24.04, Vulkan/OpenXR support, EULA handling); new Python entrypoint with signal handling; docker-compose service with healthcheck and persistent volume mounting.
CloudXR SDK Download Scripts
scripts/download_cloudxr_runtime_sdk.sh, scripts/download_cloudxr_sdk.sh, scripts/run_cloudxr_via_docker.sh
Refactored SDK download paths to use public NGC REST API via wget instead of ngc CLI; simplified tarball extraction and error handling.
CloudXR SDK Versions
deps/cloudxr/.env.default, deps/cloudxr/Dockerfile.test
Updated CloudXR SDK to stable 6.1.0; adjusted test Dockerfile to use two-phase isaacteleop wheel installation.
CloudXR WebXR Device Profiles
deps/cloudxr/webxr_client/helpers/DeviceProfiles.ts, deps/cloudxr/webxr_client/helpers/utils.ts
Extended DeviceProfile interface with reprojectionGridCols and reprojectionGridRows; added getGridFromInputs() utility for HTML form parsing.
CloudXR WebXR UI
deps/cloudxr/webxr_client/src/CloudXR2DUI.tsx, deps/cloudxr/webxr_client/src/index.html, deps/cloudxr/webxr_client/helpers/react/CloudXRComponent.tsx
Added reprojection grid depth-mesh configuration UI controls with validation; updated session options and form persistence.
NumPy Dependency Updates
src/core/python/requirements.txt, examples/oxr/python/pyproject.toml, examples/retargeting/python/pyproject.toml, examples/teleop_session_manager/python/pyproject.toml, README.md
Upgraded minimum NumPy requirement from 1.22.2 to 1.23.0 across core and example projects.
Retargeter Transform Optimization
src/core/retargeting_engine/python/utilities/transform_utils.py, src/core/retargeting_engine/python/utilities/controller_transform.py, src/core/retargeting_engine/python/utilities/hand_transform.py, src/core/retargeting_engine/python/utilities/head_transform.py
Introduced _copy_tensor_group_slots_from_dlpack_input() helper to eliminate copy.deepcopy() and repeated np.from_dlpack() conversions; refactored pose transforms to operate directly on output buffers.
Build System CloudXR Integration
src/core/cloudxr/python/CMakeLists.txt, src/core/cloudxr/python/runtime.py
Added conditional patchelf post-processing step to remove libssl.so.3 NEEDED dependency; updated library loading to use RTLD_DEEPBIND mode.
Pico Body Tracker Graceful Degradation
src/core/deviceio/cpp/full_body_tracker_pico.cpp
Implemented "limp mode" fallback when body tracking is unsupported (log and return early instead of throwing exception).
Retargeter Testing
src/core/retargeting_engine_tests/python/test_transforms.py, src/core/retargeting_engine_tests/python/test_transform_numpy_versions.py, src/core/retargeting_engine_tests/python/transform_numpy_version_smoke.py
Added regression tests for optional tensor group state toggling; introduced NumPy version compatibility smoke tests using isolated uv run environments.
Documentation Updates
README.md, docs/source/.../*
Updated Isaac Lab documentation links from /main/ to /develop/; added parallel CMake build; restructured quick-start next-steps into card grid; expanded ecosystem headset matrix; detailed use-case-specific hardware/software requirements tables; added CSS styling for cards and trademark notices.
Documentation Styling
docs/source/_static/css/custom.css
Added header/image styling for "next steps" cards and .trademark-notice class; added .no-image-zoom opt-out for figure click-to-zoom.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~55 minutes

Poem

🐰 A runtime for XR, now dancing in docker,
Grid meshes take shape, reprojection's a knocker,
From 1.0 to 1.1, with backoff so clever,
Tensors dance freely—no deepcopy endeavor!
Release tags automate, docs bloom anew,
Isaac Teleop hops forward—vers. 1.1, it's true! 🚀

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch jiwenc/auto-release-cp-1.1.x
⚔️ Resolve merge conflicts
  • Resolve merge conflict in branch jiwenc/auto-release-cp-1.1.x

Review rate limit: 9/10 reviews remaining, refill in 6 minutes.

Comment @coderabbitai help to get the list of available commands and usage tips.

@jiwenc-nv jiwenc-nv deleted the jiwenc/auto-release-cp-1.1.x branch May 1, 2026 21:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants