On ROS2 jazzy, I encountered a behavior where the Fallback container appears to skip subsequent children when a Connect stage inside one of its child containers returns a failure solution.
In my case, the Fallback has multiple children, and each child is a container structured like:
Fallbacks:
child 1:
- MoveTo
- Connect
- MoveTo
child 2:
- MoveTo
- Connect
- MoveTo
when the first child produces a failure solution, the Fallback container does not continue evaluating the following children. As a result, later children that could produce a valid solution are skipped.
I assume that if one child fails, the Fallback should continue trying the remaining children until a valid solution is found or all other children have been exhausted. However, in the case above after the first child fails, the fallback stops and does not evaluate the subsequent children.
If I move the MoveTo stage (set before the connect stage) outside the fallbacks, the fallbacks behaves expectedly (first child fails, the fallback evaluate next child).
Hence I was wondering if this behavior is intentional.