-
Notifications
You must be signed in to change notification settings - Fork 178
Add Recovery composite #478
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: devel
Are you sure you want to change the base?
Conversation
9f6177c
to
b2719fd
Compare
…ne or more recovery behaviors
b2719fd
to
866d9ae
Compare
Hi @sea-bass , sorry for asking you for help directly. On this PR I'm waiting for your support (or any other maintainer, but you look like the only one active). What I ask
Thanks! |
Hi @corot, my high-level though is: Instead of being a special case for the GUI etc., is there a way to treat it as another of the composites? I guess this is where my BehaviorTree.CPP comes out, in that there the colors of the GUI correspond go leaf nodes, control nodes, and decorators only. So maybe what we should do here is pick a new color to correspond to "other" (custom) control nodes and go that way? This would make it easy to later integrate more custom control nodes. How about purple? Really, any color that is not here Otherwise, looks fine to me to add the new functionality. |
😆 green Nice — since your Here are a few good options:
✅ Recommended choice:
It’s visually distinct from your existing set and semantically intuitive (green = recover / OK). |
Aren't red, green, and blue used to denote success/failure/running in the lines? I'm kinda still thinking purple for that reason. But some visuals of a real tree ticking may help us decide. |
Ah, true. Let's try purple then Adding the color there is the only required change? |
Retry a failed main task after attempting one or more recovery behaviors.
This is similar to the recovery node implemented in Nav2.
I know @stonier is more in the purist side and won't like this so much, but I tried to implement the same behavior with existing components, but it's much harder than it sounds.
Thanks!