Fix articulation and schema documentation CI failures - #7504
Conversation
|
run-ci |
There was a problem hiding this comment.
Isaac Lab Review Bot
The PR consistently updates the mirrored Newton, PhysX, and OVPhysX articulation tests to check total root angular speed rather than only the world-Z component, while preserving the existing threshold and adding appropriate .skip changelog fragments.
- Design and architecture: The axis-agnostic assertion is applied identically across all three backend test mirrors. No production architecture or shared helper is changed; the main tradeoff is reduced axis specificity, which matches the stated intent because the response axis depends on link-frame transformations.
- API: No public API or extension-facing behavior changes. The patch only reads the existing
root_ang_vel_wtest data, and each touched source package includes the required non-user-visible changelog fragment. - Implementation: Using
torch.linalg.vector_normon the three-component angular velocity directly tests whether the articulation rotates regardless of response axis. Keeping the 0.1 threshold preserves the prior minimum-response criterion, while broadening the accepted response from Z-axis rotation to rotation on any axis.
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.
Greptile SummaryUpdates mirrored articulation tests to measure total root angular speed instead of only the world-Z component, preventing valid rotation on another axis from failing the test.
Confidence Score: 5/5The test-only change appears safe to merge. The updated assertions continue to require substantial articulation rotation while avoiding an invalid dependency on a particular world-space axis, and the mirrored backend tests remain consistent. Important Files Changed
Reviews (1): Last reviewed commit: "Fix articulation wrench response asserti..." | Re-trigger Greptile |
|
run-ci |
…7504) (#7512) # Description Backports #7504 to `release/3.0.0` by cherry-picking the actual merged commit, `541de9a7a91f9e7c24b24b923c0620475a00e051`. The automatic backport stopped during source validation because the documentation hunk from #7504 had already reached `develop` through #7493. GitHub therefore omitted that already-present hunk from #7504's squash commit, while the PR files API still reported the original seven-file change. The validator rejected the resulting six-file squash patch before attempting a cherry-pick. This PR replays those six remaining files exactly. The overlapping documentation change is handled separately by #7508. Failed automation: https://github.com/isaac-sim/IsaacLab/actions/runs/33710984910/job/100510198896 No runtime dependencies are added. ## Type of change - Bug fix (non-breaking change which fixes an issue) ## Release backport - [ ] <!-- backport-active-release --> This PR already targets the active release branch; do not backport it again. ## Validation - `uv run --no-project python -m compileall -q` on all three modified test modules - `uv run --no-project python tools/changelog/cli.py check codex-backport-pr-7504-base` - `uvx --from pre-commit==4.6.2 pre-commit run --all-files` with `check-changelog-fragments` skipped because that hook assumes `origin/develop`; the release-base check above passed - `.github/scripts/backport.py validate-candidate ... --exact_patch` - `git diff --check upstream/release/3.0.0..HEAD` - The simulator-backed CUDA regression remains for Linux GPU CI ## Checklist - [x] I have read and understood the contribution guidelines - [x] I have run the available pre-commit checks - [x] Documentation changes are not needed for this six-file backport - [x] My changes generate no new warnings - [x] The existing mirrored regression tests cover the fix - [x] Each touched package includes its original `.skip` changelog fragment - [x] My name already exists in `CONTRIBUTORS.md`
Description
The
test_external_force_on_multiple_bodies_at_positiontest asserted only the world-Z component of root angular velocity. The applied offset wrench can produce rotation on another axis, especially when body-frame wrenches are transformed, so the articulation can rotate while the Z component remains below the threshold.Check the total angular-speed magnitude instead, preserving the existing
0.1threshold. Apply the same assertion to the OVPhysX, PhysX, and Newton test mirrors.This addresses the recurring CUDA failure observed in the
test_articulationjob, where the world-Z angular velocity was0.004370182752609253.Related to #7458.
No runtime dependencies are added.
Type of change
Release backport
developScreenshots
Not applicable; this is a test-only change.
Validation
uv run --no-project python -m compileall -qon all three modified test modulesuv run --no-project python tools/changelog/cli.py check codex-changelog-base --include-worktreeuvx pre-commit run --all-filesrun-ciChecklist
pre-commitchecks with./isaaclab.sh --formatsource/<pkg>/changelog.d/for every touched package (do not editCHANGELOG.rstor bumpextension.toml— CI handles that)CONTRIBUTORS.mdor my name already exists thereDocumentation CI follow-up
The docs workflow also exposed 14 duplicate object registrations for schema fragment classes documented on both
isaaclab.simandisaaclab.sim.schemas. Keep the top-level public API rendering but mark its alias copies:no-index:, leaving the canonical schema page as the only Sphinx cross-reference target.Failure: Build Latest Docs.
A full local Sphinx build completed without the original duplicate-object warnings. Remaining local warnings were import failures for project packages unavailable in the macOS validation environment; the pushed Linux docs workflow provides the authoritative warning-free result.