Skip to content

Stop any run, also one started elsewhere - #20

Merged
kineticsystem merged 1 commit into
mainfrom
stop-any-run
Oct 7, 2026
Merged

kineticsystem merged 1 commit into
mainfrom
stop-any-run

Conversation

@kineticsystem

Copy link
Copy Markdown
Owner

The Execution tab's Stop used to stop only a run started from this editor. It now stops any run.

  • A run of this editor: stopped by cancelling its own goal, as before.
  • A run started elsewhere, e.g. from StepIt UI or the gamepad: stopped by calling the action's cancel_goal service with an empty request, which cancels every goal. That's how StepIt UI's Stop works, and every BehaviorTree.ROS2 server has the service, as every ROS 2 action server does. The service name comes from the action set under Connection.
  • Failures show in a toast: the server refused, didn't answer within 5 s, or rosbridge can't be reached.

Tests: 148 pass, 2 of them new. They cover the request sent, the answer awaited, a refusal, a timeout and an unreachable rosbridge.

Checked on the rig, with fake motors: a move started from the command line showed Stop in the editor, labelled "Ask the server to stop this run, though it was started elsewhere". Pressed, the commander logged the cancel and halted the tree, and the editor showed "Stopped", with the running node "Halted".

Docs: README and docs/ARCHITECTURE.md.

🤖 Generated with Claude Code

Stop stopped only a run of this editor, by cancelling its goal. A run
started elsewhere, e.g. from StepIt UI, is now stopped by cancelling every
goal of the server, through the cancel_goal service of the action, as
StepIt UI's Stop does: every BehaviorTree.ROS2 server has it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kineticsystem
kineticsystem merged commit e45cf90 into main Oct 7, 2026
2 checks passed
@kineticsystem
kineticsystem deleted the stop-any-run branch October 7, 2026 11:53
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