BUT the next node (the one branched to the True condition) is executed (and fail here, because it’s missing input datas since the true condition was not reached…)
I’ve tried to rebuild the if from scratch but the error persists.
For me it looks just fine, it return false you can see there green line with number of item
On the first and second ss you see what would happened if would be true/false (not sure but I understand it that way, if I am wrong may some1 correct me, pls)
Please try add discord node to see what really happen, e.g.
We can see that the IF node somewhat execute correctly the test : the green line if going to false with 1 item, the “true” line is grey.
BUT the GO YES node is executed.
I was not expecting that.
Clearly it’s because of the wait node.
If I replace the wait node by another standard node like this one: it’s fine again:
you have a very interesting problem. I don’t know if your examples match your problem exactly. To merge 2 webhooks into one “If note”, then to separate them and finally to wait for the result of the other one - that is really impractical . Better would be one webhook and then check with one If.
The “Wait” and “No Operation” nodes behave correctly in my opinion. “NoOp” needs no further input in contrast to “Wait”. Wait also “knows” that input 1 will never get an input - but has a node before, which it triggers. In other scenarios this is very useful.
I am very interested in what the specific goal should be. Then surely a solution can be found. It doesn’t necessarily have to be the code, but a picture of the complete workflow could help a lot.
The 2 webhooks, & no op nodes are here to try to isolate and illustrate my problem.
But In real life, the IF can be used to separate 2 use cases:
the go-yes node can be replaced by a series of nodes doning action ‘A’ on all datas matching IF node
the go-no node can be replaced by a series of nodes doing action ‘B’
and then we wait for the 2 branches before continuing.
this is pretty common in my workflows, but the problem here is to handle when one of the IF branch returns nothing. This should be fine (we just don’t execute the branch)
Yes you are right, the combination If and Wait are often used, but not in combination with 2 webhooks as “Start”. One webhook cannot wait for the other. That’s why “Merge” triggers the previous node.
Without knowing the workflow, the solution could be to use only one webhook and if necessary make decisions with the help of queries.
yes totally agree, the two webhooks here where only for test purposes.
The current workflow is pretty big, i’ve refactored to replace the “merge” nodes at the end (I added this merge node to wait for all the execution before sending a slack message).
I’m monitoring the executions to see if all the cases are ok now (seems fine for now).