No problem.
Regarding Step Sequencer, it is really a simple node that just increase child index whenever it is reset. I dont really understand what you say is wrong with it. Of course, depending on the current changes you may have in Selector and Sequencer code, it might affect when it gets reset and as such mess up what Step Sequencer is indented to do. This is exactly why I want to take an extra carefull approach to any changes in the Dynamic Sequencer and Dynamic Selector (which are the culprit in this case) by the way 🙂
I had a bit of time to investigate. Fortunately it seems I was incorrect in some of my assumptions on how the step sequencer works. It looks like things work as they should.
I tried writing down a bit of info/some rules on what we’ve discussed here. Do you think this, or something similar can be included in the documentation?
“If a node returns a non-Running status from its OnExecute, the node is considered to have finished and it will get a call to OnReset before the next call to OnExecute. It is the responsibility of each node to ensure this rule also applies to their outConnections (if they have any). However, because a reset is executed recursively, simple nodes do not need to reset their outConnections manually and can instead rely on the fact that all outConnections will be reset when that node itself is reset.” (perhaps extend with some examples)