Source US asset root from Kit configuration - #7595
Conversation
Greptile SummaryThe PR makes the shipped Kit configuration the canonical source for the US asset root.
Confidence Score: 5/5The PR appears safe to merge, with no actionable correctness, security, or repository-rule violations identified. The supported source and wheel layouts ship the parsed Kit experience, all shipped experiences now agree on the production root, and the US profile preserves the existing environment-variable precedence and resolution behavior. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart LR
K[isaaclab.python.kit] --> P[_parse_kit_asset_root]
P --> U[_US_ASSET_ROOT]
U --> S[US storage profile]
E[ISAACSIM_ASSET_ROOT] --> R[_resolve_asset_root]
S --> R
R --> N[NUCLEUS_ASSET_ROOT_DIR]
Reviews (2): Last reviewed commit: "Initialize US asset root from Kit config..." | Re-trigger Greptile |
There was a problem hiding this comment.
Isaac Lab Review Bot
The us asset region profile now resolves through the shipped Kit configuration, and all six shipped experiences consistently use the production 6.1 asset root.
- Design and architecture: The Kit experience is now the single source of truth for the
usroot, while the China profile retains its explicit regional override. The directory-wide regression test deliberately requires everyapps/*.kitexperience to define identicaldefault,cloud, andnvidiaroots, so future inherited or specialized experiences would require updating that contract and test. - API: Asset-root precedence remains
ISAACSIM_ASSET_ROOT, then a profile-specific override, then the Kit configuration. Exported root constants retain their types and derivation; the removed_US_ASSET_ROOTsymbol was private, and the optionalasset_rootprofile field is handled with a guarded lookup. The behavior change is recorded in the changelog fragment. - Implementation: The environment override, China profile override, empty
usprofile, Kit parser fallback, and all six changed experience files were traced consistently. Tests coverusfallback and production-root alignment. The remaining operational dependency is that the production bucket contains the referenced 6.1 assets.
No blocking issues. No inline issue met the actionable-evidence threshold; the assessment above records the review feedback.
Automated review; human maintainers own approval decisions.
|
run-ci |
|
Backported to |
# Description Uses the shipped Kit experience as the single source of truth for the `us` Asset Region Profile instead of duplicating the production asset URL in Python. All six shipped `.kit` experiences now use the production asset root for their `default`, `cloud`, and `nvidia` settings. Focused regression coverage verifies that `_US_ASSET_ROOT` is initialized by the Kit parser, the `us` profile keeps its existing resolution path, and every shipped experience remains aligned with the canonical production root. Follow-up to #7549. No additional dependencies are required. ## Type of change - Bug fix (non-breaking change which fixes an issue) ## Release backport - [x] <!-- backport-active-release --> Backport this pull request to the active release branch after it merges into `develop` ## Screenshots Not applicable. ## Checklist Docker and GPU tests run on demand. Push the commits you want tested, then comment `run-ci` on the pull request. - [x] I have read and understood the [contribution guidelines](https://isaac-sim.github.io/IsaacLab/main/source/refs/contributing.html) - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) on the changed files - [x] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [x] I have added tests that prove my fix is effective or that my feature works - [x] I have added a changelog fragment under `source/<pkg>/changelog.d/` for every touched package - [x] I have added my name to the `CONTRIBUTORS.md` or my name already exists there ## Validation - The two focused regression checks fail against the pre-fix #7549 head and pass with this change. - `13 passed, 48 deselected` for the asset-root and Kit-experience subset of `test_assets.py`. - All pre-commit hooks passed on the changed files, including Ruff, formatting, codespell, changelog validation, and Git LFS pointer validation. - Python compilation and `git diff --check` passed. - Full `uv run isaaclab -f` was unavailable locally because the project lockfile does not support macOS; the equivalent changed-file pre-commit suite passed. (cherry picked from commit f754f29)
Description
Uses the shipped Kit experience as the single source of truth for the
usAsset Region Profile instead of duplicating the production asset URL in Python.All six shipped
.kitexperiences now use the production asset root for theirdefault,cloud, andnvidiasettings. Focused regression coverage verifies that_US_ASSET_ROOTis initialized by the Kit parser, theusprofile keeps its existing resolution path, and every shipped experience remains aligned with the canonical production root.Follow-up to #7549. No additional dependencies are required.
Type of change
Release backport
developScreenshots
Not applicable.
Checklist
Docker and GPU tests run on demand. Push the commits you want tested, then
comment
run-cion the pull request.pre-commitchecks on the changed filessource/<pkg>/changelog.d/for every touched packageCONTRIBUTORS.mdor my name already exists thereValidation
13 passed, 48 deselectedfor the asset-root and Kit-experience subset oftest_assets.py.git diff --checkpassed.uv run isaaclab -fwas unavailable locally because the project lockfile does not support macOS; the equivalent changed-file pre-commit suite passed.