Feature Request: Success-on-Any Parallel Composite #471
Replies: 2 comments 4 replies
-
|
The documentation states:
and the code seems to agree: elif type(self.policy) is common.ParallelPolicy.SuccessOnOne:
for child in reversed(self.children):
if child.status == common.Status.SUCCESS:
new_status = common.Status.SUCCESS
self.current_child = child
breakBut I guess the docs seem to say it will return |
Beta Was this translation helpful? Give feedback.
-
|
Hi @sea-bass, just following up on this feature request. Is there any update or feedback you could share? If you need any additional information from my side, I'm happy to provide it. Thanks! |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Feature Request: Success-on-Any Parallel Composite
Summary
I would like to propose a new parallel composite behavior that executes all children concurrently and succeeds as soon as any child succeeds, regardless of whether other children fail.
Use Case
In many real-world scenarios, we need to attempt multiple approaches simultaneously and consider the task successful if any one approach succeeds. For example:
Current Limitations
The existing
Parallelcomposite withSuccessOnOnepolicy doesn't meet this requirement because:FAILUREimmediately if any child failsThe current policies behave as follows:
SuccessOnAll: Requires all children to succeedSuccessOnOne: Succeeds if one succeeds AND no others failSuccessOnSelected: Requires specific children to succeedBeta Was this translation helpful? Give feedback.
All reactions