Why does this flow ignore the "[tag] is less than [number]" card?

I am doing some tests around logic in flows, and I came across this behavior that just seems plain wrong. I assume that I am missing something fundamental, but I don’t get it. I have this flow:

The Logic variable randomNumber is calculated elsewhere, as {{round(random(0,30))}}. When running the flows, I got this printout in the Homey app:

I got the same behavior for other randomNumber values greater than 24, but not when randomNumber is 12 or less.

Can someone explain why it seems to ignore the randomNumber is less than 24 card?

Homey cloud or Pro?

It’s a Homey Pro.

1 Like

When/how exactly is the random number changed? It could be a race condition there the random number did satisfy the and but changed before it got time to create the nofification.

Ok. I’ve tried on Homey cloud
This works as expected

randomNumber is calculated by a manually triggered flow. The behavior is consistent even if I trigger this flow manually several times without the randomNumber variable changing between invocations, so I don’t believe it’s a race condition. The variable, the flow calculating and this flow here were created just for this testing purpose, so they are not used or altered by any other flows in my system.

Interesting. I will re-create my flows from scratch later this evening to see if they behave differently.

OP is using “not less than”, which is a different card from “greater than” which you’re using (although I don’t think it’ll matter, I can’t reproduce the problem).

Could it be tou have more tags called randomNumber that somehow got mixed up and you test the wrong version?

Yeah I noticed now the TS used “is not less than”
I’ll give it a test.
But it should be exactly the same filter as “is greater than”, except 12 is valid in the first filter, and invalid in the last filter?

Seems also to function as expected