Skip to content

feat(ros-z): move parameters behind async actor#2551

Open
schmidma wants to merge 3 commits into
HULKs:mainfrom
schmidma:async-parameter-actor
Open

feat(ros-z): move parameters behind async actor#2551
schmidma wants to merge 3 commits into
HULKs:mainfrom
schmidma:async-parameter-actor

Conversation

@schmidma

@schmidma schmidma commented May 29, 2026

Copy link
Copy Markdown
Member

Summary

  • moves bound ROS-Z parameters behind an async actor with a bounded mailbox
  • changes parameter binding to node.bind_parameter_as::<T>(key).await? and updates node call sites
  • routes remote parameter callbacks through actor commands with busy responses on mailbox backpressure or disconnect
  • simplifies parameter actor lifecycle ownership by storing initialized resources directly instead of impossible None states
  • narrows parameter actor internals so only Node::bind_parameter_as, NodeParameters, RemoteParameterClient, snapshots/errors, and the wire service/message types remain public API
  • documents async binding semantics, failure modes, and one-binding-per-node behavior
  • includes stale behavior_node parameter cleanup in etc/parameters/ros_z/base/behavior_node.json5 for parameters no longer consumed after the node migration

Related

Test Plan

  • cargo fmt --all -- --check
  • ./pepsi fmt --check
  • cargo clippy -p ros-z-protocol -p ros-z-cli -p ros-z --all-targets -- -D warnings
  • ./pepsi clippy --locked . -- --deny warnings
  • cargo nextest run -p ros-z-protocol -p ros-z-cli -p ros-z -E "test(fully_qualified_name_prefixes_bare_namespace) or test(fully_qualified_node_name_prefixes_bare_namespace) or test(remote_client_round_trips_and_receives_events) or test(local_mutation_reports_error_after_driver_task_aborts)"

@github-project-automation github-project-automation Bot moved this to In Progress in Development May 29, 2026
@schmidma schmidma force-pushed the async-parameter-actor branch 2 times, most recently from debf242 to 5e46202 Compare May 31, 2026 14:48
@schmidma schmidma changed the base branch from main to fix-node-fqn-formatting May 31, 2026 14:48
@schmidma schmidma marked this pull request as ready for review May 31, 2026 14:50
@schmidma schmidma changed the base branch from fix-node-fqn-formatting to main May 31, 2026 14:52
@schmidma schmidma enabled auto-merge May 31, 2026 14:53
@schmidma schmidma force-pushed the async-parameter-actor branch 2 times, most recently from e2c6ba7 to 023aaed Compare May 31, 2026 16:41
@schmidma schmidma moved this from In Progress to Review in Development Jun 2, 2026
@schmidma schmidma force-pushed the async-parameter-actor branch from 023aaed to c513a83 Compare June 12, 2026 20:21
@schmidma schmidma force-pushed the async-parameter-actor branch from c513a83 to 0f9bb5a Compare June 13, 2026 07:36
@alexschmander alexschmander self-assigned this Jun 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Review

Development

Successfully merging this pull request may close these issues.

reiterate on node_parameter.rs

3 participants