Broken Conditional Trigger

@bravenel
Hub is C8 running 2.3.7.140 Platform

Here is a Conditional Triggers:

And here is a related log:

First Conditional Trigger (first line at a bottom) did not trigger because it assigned wrong
condition (please check first conditional trigger definition)
Actually according to the log both Conditional Triggers assigned the to the same Condition.

The behavior is 100% reproducible.

And just in case, here is the entire RM rule:

I'll look into it.

First blush, I created a rule with similar conditions and triggers to yours, and it doesn't fail. I've tried all of the combinations, and it works as expected for all of them.

This won't be easy to diagnose...

Well, I am not sure what could be wrong with this (actually very fresh new) rule.
I recreated these two conditional triggers:

Second one must be triggering if reported power is above threshold.
However according to the log it is not triggering because the condition is false:

But this is incorrect condition.
The correct condition is this:


and it is TRUE.
But trigger fails:

Well,
I am thinking how to create this rule (or set of rules) in a different way.

I have many rules with conditional triggers.
Now I have to re-test all of them to make sure they are not broken.

I think the problem is that the 'Any reports' test is against the full list of devices, not just the one reporting.

I would suggest you try this with only a single device in the trigger portion.

Yes, this is exactly what I want - to trigger a rule if any Power Meter reports high power.
Why this is a problem?

Because one of the devices in the list meets the test in the trigger. So it then goes on to test the corresponding condition. It doesn't only look at the value of the device that caused it to check the triggers.

It's not a problem, it's just that the test isn't what you think it is. Try it with only one device in the trigger, not a list of devices.

OK,
I guess, I have to create two separate rules and instead of using a Conditional Trigger to use
a Required Expression.

I don't know what the easiest way is to do this. But it's not the first time I've seen someone thrown off by 'Any reports' picking out a different value from th list of devices in the trigger.

It's almost like there needs to be another choice for a case like this, where it's a list of devices, but only the instigating device is tested -- like 'only latest device'. That's not the way RM has ever worked though.

Maybe useful for you to know that one of only two tests are made both for triggers that have comparisons in them and for conditions, when there are multiple devices listed. One is the Any test, and it looks at each device in the list, and the other is the All test, and all devices in the list must pass the test. What you are wanting is a third flavor of test that currently doesn't exist.

I am thinking about two separate rule with the Required Expression or in this case 8 Conditional
Triggers. What is yours recommendation? I am thinking, two separate rules is cleaner but
I really prefer (for readability and maintainability) all logic in a single rule .

I don't have one. Required Expression with 2 rules would be more efficient, if less concise. Both rules could run the same actions (one runs the actions of the other), so you'd only have one set of Actions to maintain.

OK, Than I will create two rules solution.

You may still have an issue with the Any test.

Why?
I am really surprised to hear this.
I have many working OK (I think) rules with "Any" is a Triggering source.
For instance, multiple Motion Sensors are controlling lighting without any problems.

With comparisons, just be aware that any device in the list meeting the comparison test will cause it to trigger. Not just the instigating device.

OK, Very BIG THANK YOU for the advice and warning.
I will keep this in mind and recheck all my existing rules.
But so far, everything is working just fine (I think).

Something I cannot understand all together.
Here is a modified rule:


Triggers are 4 power reporting outlets. All 4 by themselves are working fine.
However ZEN15 does not trigger the rule at all but the remaining 3 have no triggering problem.
ZEN15 reports power as expected and should trigger this rule:

What I am missing now?

Logs from rule? I don't know why.

The problem is - there is no logs at all for ZEN15 triggering.
Logs are 100% normal for the other 3 outlets.
Just in case, here is one for the Kettle Power Outlet:

And just in case, here is the entire rule:

Then there is no event hitting RM. Look at the App Status page to see if there is a subscription there for the ZEN15. Other possibility is that the ZEN15 isn't sending the event.

Setup a stand-alone test rule for ZEN15 power event....