About the 50 max nodes limit in Workflows

I wonder if the 50 cap limit on Workflow nodes is technical and/or merely cosmetic.

I am building with Meta Ask Agent (aka Discourse Helper) a workflow to grant automatic cheer points from a set of badges and I see that every workflow can only have <=50 nodes.

It is suggested to split the workflow, or there is perhaps a hidden setting to raise the limit nodes available?

What is the suggested approach here? Should it work as expected, or is it too much for the functionality, and I need to build a plugin to accomplish this feature?

I think it’s just a rough point at where things could start slowing down and get difficult to manage in the UI… if you had to debug 100 nodes in one workflow it would probably be somewhat painful.

We have “workflow call” and “call workflow” nodes that can be used to split things up. You can set a workflow that starts with “workflow call” as the trigger, and use “call workflow” from another workflow to invoke that first workflow.

I hit the 50 node limit for the first time recently as well. In my case, it was reasonably straightforward to split things up. But I was a bit surprised when I hit it.

I knew the limit existed, but I it didn’t feel like I had 50 nodes yet.

I counted. I did.

I could imagine making the hard coded limit a bit higher, but I think it’s helpful to have a limit and the number isn’t far off from what it should be.

One thing though… I noticed that sticky notes count towards the limit. That felt odd, and I think we should probably change that.

It’s kind of an arbitrary limit for the reasons @awesomerobot explained. I wouldn’t be against raising it to 100 instead of not counting sticky notes. It’s a detail of the implementation that sticky notes are actually nodes :slight_smile:

That sounds good, fingers crossed for that increase :slight_smile:

For now, I managed to do a split in a simple way, as Dave mentioned earlier, but maybe in the future the increase from 50 to 100 will prevent creating too many Workflows, to keep them organized.

Without realizing it, one ends up with 10 or 20 running simultaneously, the functionality really allows a lot in Discourse and I see that many of us are exploring it.