fix(design): align the control node designs with the packages they describe - #13340
Open
technolojin wants to merge 2 commits into
Open
fix(design): align the control node designs with the packages they describe#13340technolojin wants to merge 2 commits into
technolojin wants to merge 2 commits into
Conversation
technolojin
marked this pull request as ready for review
September 7, 2026 04:35
technolojin
requested review from
PanConChicharron,
TaikiYamada4,
isamu-takagi,
maxime-clem,
mkquda,
takayuki5168,
yhisaki and
zulfaqar-azmi-t4
as code owners
September 7, 2026 04:35
…scribe ControlCommandGate and the operation mode transition manager name a plugin class and pin publishers that do not match the built package: the registered component is ControlCmdGate, and the transition flags belong on the design graph rather than on global: pins that link_manager skips. TrajectoryFollower declares three debug publishers with message types the node never publishes and a stop_reason publisher it does not create at all. VehicleCmdGate keeps gate_mode and engage on their official topic names through remap_target: alone, so the two inputs are connected through the design. Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp>
technolojin
force-pushed
the
fix/node-design-control
branch
from
September 7, 2026 04:36
ee1bfdf to
b09c90b
Compare
|
Thank you for contributing to the Autoware project! 🚧 If your pull request is in progress, switch it to draft mode. Please ensure:
|
…nd legacy interfaces as remap targets The operation mode state publisher, the two operation mode change services and the legacy engage and gate mode publishers are node-side fixed names. Declaring them as remap targets puts them on the design graph; a port pinned with global: is skipped by link_manager and the exporter emits no remap for it. Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp>
technolojin
marked this pull request as draft
September 7, 2026 04:52
technolojin
marked this pull request as ready for review
September 7, 2026 04:54
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #13340 +/- ##
==========================================
- Coverage 20.49% 20.48% -0.01%
==========================================
Files 1948 1948
Lines 137202 137201 -1
Branches 48933 48932 -1
==========================================
- Hits 28113 28109 -4
Misses 86314 86314
- Partials 22775 22778 +3
*This pull request uses carry forward flags. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Split of #13298 — the
controlslice. TheCollisionDetectorpart of that slice already landed as #13312; what remains is four designs.ControlCommandGate— plugin nameautoware_control_command_gateregistersautoware::control_command_gate::ControlCmdGate, not…::ControlCommandGateNode.AutonomousModeTransitionFlag— fixed-name publisherstransition_availableandtransition_completedare pinned to/system/command_mode/transition/{available,completed}withglobal:. A port pinned withglobal:connects outside the design graph on a fixed topic:link_managerskips any connection whose target is a global input port, and the exporter emits no remap. Withremap_target:the port takes part in the graph like any other, while the launcher still binds it to the official name.TrajectoryFollower— interface typesChecked against the installed message definitions and the
create_publishercall sites.slope_anglestd_msgs/msg/Float32Stamped(no such type)autoware_internal_debug_msgs/msg/Float32MultiArrayStampedlateral_diagnostic,longitudinal_diagnosticdiagnostic_msgs/msg/DiagnosticStatusautoware_internal_debug_msgs/msg/Float32MultiArrayStampedThe
stop_reasonpublisher is dropped; the node never creates it.VehicleCmdGate— gate mode and engage on the design graphThe
gate_mode(/control/gate_mode_cmd) andengage(/autoware/engage) subscribers drop theirglobal:pins and keep theirremap_targetdeclarations, so these inputs are connected through the design.OperationModeTransitionManager— system and legacy interfacesThe operation mode state publisher, the two operation mode change services and the legacy
engage/gate_mode_cmdpublishers are node-side fixed names. They are declared as remap targets so they sit on the design graph, matching theVehicleCmdGateside above.Related links
Parent Issue:
Related:
CollisionDetectorpart of this slice, already mergedglobal:pins on the VehicleCmdGate compatibility inputs that this PR converts to design-graph connectionsHow was this PR tested?
pre-commit run --fileson all four changed designs (Autoware System Design Format lint, prettier, yamllint) passes.CMakeLists.txtandRCLCPP_COMPONENTS_REGISTER_NODE; interface types against the installed.msgdefinitions.autoware_sample_designsdeployment build across four modes.AutowareSamplereference system was built and run with these designs against feat(autoware_sample_designs): compose the AD API, system and vehicle components from design modules autoware_launch#1976:colcon build --packages-select autoware_sample_designssucceeds with zero warnings and exports all four modes (Runtime, LoggingSimulation, PlanningSimulation, E2ESimulation), and planning simulation reaches autonomous mode.Notes for reviewers
Design metadata only; no launch file or node source is touched.
The
gate_mode/engageinputs ofVehicleCmdGatewere declaredglobal:in #13281 because of external publishers (internal API adaptor, joy controller, RViz panel); this PR moves them onto the design graph, so please check the multi-publisher expectation still holds for your systems.Interface changes
None.
TrajectoryFollower's debug publishers are corrected to the types the node already publishes, andstop_reasonis removed from the design because the node does not create it — there is no node-side change.Effects on system behavior
None.