Skip to content

chore(ci): update meta-ros to f4a5e480 (wrynose) - #369

Draft
Jiaxing Shi (jiaxshi) wants to merge 1 commit into
qualcomm-linux:wrynosefrom
jiaxshi:chore/update-meta-ros-wrynose-f4a5e480
Draft

chore(ci): update meta-ros to f4a5e480 (wrynose)#369
Jiaxing Shi (jiaxshi) wants to merge 1 commit into
qualcomm-linux:wrynosefrom
jiaxshi:chore/update-meta-ros-wrynose-f4a5e480

Conversation

@jiaxshi

Copy link
Copy Markdown
Contributor

Summary

Update meta-ros commit hash to the latest upstream wrynose branch.

Commit
Previous c671acf8a948e22a614a6d6d1dcf18bdf4113df5
New f4a5e4800a90ae435b5437d895ea4cd894fad53a

Motivation

meta-ros upstream has new commits on the wrynose branch. This update
pulls in the latest upstream changes.

Impact

Pulls in upstream meta-ros changes. Patch compatibility has not been
verified automatically; manual review is required.

TODO

  • Verify that the following patches still apply cleanly:
    • patches/0001-fix-Update-LAYERSERIES_COMPAT-to-adapt-to-upstream-u.patch
    • patches/0001-fix-remove-bbappend-and-patch-for-rosbag2-compressio.patch
    • patches/0001-jazzy-remove-outdated-bbappend-and-patches-of-stomp.patch
    • patches/0001-ros2-ament_cmake-add-python-configurations-for-class.patch
    • patches/0002-jazzy-update-libdir-of-ompl.patch
    • patches/0003-jazzy-move-some-nav2-and-moveit-packages-out-of-blac.patch
    • patches/Initial-commit-of-license.patch

Motivation: meta-ros upstream has new commits on the wrynose branch.
Previous commit: c671acf8a948e22a614a6d6d1dcf18bdf4113df5
New commit: f4a5e4800a90ae435b5437d895ea4cd894fad53a

Impact: Pulls in upstream meta-ros changes. Patch compatibility has not
been verified automatically; manual review is required.

TODO: Verify that the following patches still apply cleanly:
- patches/0001-fix-Update-LAYERSERIES_COMPAT-to-adapt-to-upstream-u.patch
- patches/0001-fix-remove-bbappend-and-patch-for-rosbag2-compressio.patch
- patches/0001-jazzy-remove-outdated-bbappend-and-patches-of-stomp.patch
- patches/0001-ros2-ament_cmake-add-python-configurations-for-class.patch
- patches/0002-jazzy-update-libdir-of-ompl.patch
- patches/0003-jazzy-move-some-nav2-and-moveit-packages-out-of-blac.patch
- patches/Initial-commit-of-license.patch

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
@qualcomm-ai-code-review-assistant

Copy link
Copy Markdown

Qualcomm AI Review

Click to expand Deep Code Review

Qualcomm AI Deep Code Review Assistant

Key Findings Summary

Total Issues Found: 1

Severity Breakdown:

  • 🔴 High: 1
  • 🟡 Medium: 0
  • 🟢 Low: 0

Issue Categories:

  • Build System Risk: 1

Quick Statistics: 1 high-severity build-breaking risk identified in CI configuration that could cause complete pipeline failure.


Detailed Analysis

Unverified Patch Compatibility When Updating meta-ros Commit Hash

Severity: High
Category: Bug (Build-Breaking Risk)
Location: ci/qcom-robotics-distro.yml:46

Problem Description

The pull request updates the meta-ros repository commit hash from c671acf8a948e22a614a6d6d1dcf18bdf4113df5 to f4a5e4800a90ae435b5437d895ea4cd894fad53a without verifying compatibility with the 5 patches that are applied to this repository during the KAS build process.

The configuration applies these patches sequentially:

  1. qcom-fixes1 (lines 31-33): Deletes stomp bbappend files
  2. qcom-fixes2 (lines 34-36): Modifies ompl bbappend configuration
  3. qcom-fixes3 (lines 37-39): Removes entries from blacklist
  4. ament_cmake_py_fix (lines 40-42): Adds python configuration
  5. remove-rosbag2-compressionn-zstd-bbappend (lines 43-45): Deletes rosbag2 compression files

Impact Analysis

  • Build Failure Risk: If any patch fails to apply cleanly, the entire build terminates immediately with no recovery mechanism
  • CI/CD Pipeline: Complete blockage of all qcom-robotics-distro builds for both iq-8275-evk and iq-9075-evk machines
  • Deployment Impact: Failed deployments for the Qualcomm Robotics SDK
  • Debugging Cost: Time-consuming investigation required to identify which specific patch failed and why

Specific Failure Scenarios:

  • Deletion patches may fail if upstream already removed the target files
  • Modification patches may fail if target files changed structure between commits
  • No automated validation exists to catch these issues before merge

Recommended Fix

Add comprehensive documentation and verification guidance directly in the configuration file to prevent future unverified updates:

# WARNING: When updating the commit hash below, you MUST verify that all 5 patches
# still apply cleanly to the new commit. Failure to do so will cause build failures.
#
# Patches that must be verified:
#   1. qcom-fixes1: 0001-jazzy-remove-outdated-bbappend-and-patches-of-stomp.patch
#   2. qcom-fixes2: 0002-jazzy-update-libdir-of-ompl.patch
#   3. qcom-fixes3: 0003-jazzy-move-some-nav2-and-moveit-packages-out-of-blac.patch
#   4. ament_cmake_py_fix: 0001-ros2-ament_cmake-add-python-configurations-for-class.patch
#   5. remove-rosbag2-compressionn-zstd-bbappend: 0001-fix-remove-bbappend-and-patch-for-rosbag2-compressio.patch
#
# Verification steps:
#   1. Clone meta-ros at the new commit: git clone <repo> && git checkout <new-commit>
#   2. Test each patch: git apply --check <patch-file>
#   3. Update or remove patches that no longer apply
#   4. Run full build test before merging
#
commit: f4a5e4800a90ae435b5437d895ea4cd894fad53a

Before Merging This PR:

  1. Clone meta-ros at the new commit hash
  2. Verify each patch applies without conflicts:
    git apply --check patches/0001-jazzy-remove-outdated-bbappend-and-patches-of-stomp.patch
    git apply --check patches/0002-jazzy-update-libdir-of-ompl.patch
    # ... repeat for all 5 patches
  3. Update any patches that fail to apply
  4. Execute a complete test build with the new commit

Additional Context

The codebase shows evidence of manual commit management without automated validation (.github/workflows/build-yocto.yml has commented-out lockfile downloads with a note about "special commit id"). Consider implementing:

  • Pre-merge CI check: Automated patch compatibility validation
  • Patch versioning: Track which patches work with which commit ranges
  • Documentation: Maintain a changelog of meta-ros updates and required patch modifications

Review Conclusion

This pull request requires verification before merging. While updating dependency commits is routine maintenance, this specific change carries high risk due to the patch application mechanism. The recommended documentation additions will help prevent similar issues in future updates and provide clear guidance for developers working with this configuration.

Risk Assessment: High probability of immediate build failure if patches are incompatible with the new commit.


⚠️ This review was generated using AI assistance. Please verify all suggestions before applying.

@jiaxshi
Jiaxing Shi (jiaxshi) marked this pull request as draft September 2, 2026 06:55
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.

1 participant