Feature/unified ground station bringup - #9
Conversation
|
Addressed comments and fixed PR.
|
yassinsolim
left a comment
There was a problem hiding this comment.
Changes Requested
Reviewed and tested commit 7d7523b.
The unified launch works when the full workspace is built, but these issues need to be fixed before merging:
-
Temporary diagnostics publisher crashes
ground_station.launch.pypassesmode: mock.- The publisher only accepts
normal,fault,stale, orcycle. - Enabling
start_temporary_diagnostics_publishercauses an immediateValueError.
-
Build instructions exclude the RViz plugin
BuildInstructions.mdandscripts/check_waybionic_ws.shonly buildwaybionic_descriptionandwaybionic_bringup.- A fresh build opens RViz without the diagnostics panel because
waybionic_rviz_pluginsis not installed. - Build the full workspace or include all three packages.
- Add
waybionic_rviz_pluginsas anexec_dependinwaybionic_bringup/package.xml.
-
The new launch test is not actually running
test_ground_station_launch.pyis not registered inCMakeLists.txt.- CI only runs the existing lint and metadata tests.
- The test also uses
process=Noneand immediately passes without confirming that the expected nodes remain alive. - Register it with
add_launch_testand assert the expected processes or diagnostics topic.
-
Generated Python cache was committed
- Remove the committed
__pycache__/*.pycfile. - Add
__pycache__/and*.pycto.gitignore.
- Remove the committed
I verified the full build and RViz startup on Ubuntu and macOS. These failures are not macOS-specific. Once these issues are fixed and CI runs the real launch test, this should be ready to approve.
yassinsolim
left a comment
There was a problem hiding this comment.
Changes Requested
Reviewed commit 6544d39.
The previous runtime issues are fixed:
- The diagnostics publisher now uses the valid
normalmode. - The full workspace and RViz plugin are built.
- Package dependencies are declared correctly.
- The launch test is registered and runs in CI.
- The committed
.pycfile was removed. - Ubuntu CI passes all 32 tests.
- The publisher successfully emits diagnostics at runtime.
One functional test issue still needs fixing:
-
The smoke test does not verify that the diagnostics publisher initializes successfully
test_ground_station_launch.pyonly checks that at least one process started, then immediately shuts everything down.I changed the publisher mode back to the original invalid
mockvalue in an isolated test workspace, rebuilt it, and the launch test still passed. This means CI would not catch the original runtime crash.Make the test wait for the publisher startup message, verify the diagnostics topic, or explicitly confirm that both expected processes remain alive before shutdown.
-
Fix the malformed
.gitignoreruleThe current lines combine two patterns:
TestResult.xml__pycache__/ *.pyc
Changed commands to run ground station to a single command
Created
ground_station.launch.pyfor a unified launch processAdded passing smoke tests
Updated BuildInstructions.md
Validation logs: