Ways to break the Rule Machine UI

If you removed the trigger, it would have deleted the line. You cannot remove the device from the trigger without removing it. By definition, removing it removes it.

The OP did in fact remove a device from the system. So, that is what i was referring to. That is what caused the screen to look like this. if you also had the screen look like this without removing the device, well then removing the device isn't your problem is it? but it is the OP 's problem. And that's whose question I was answering.

Your post implied that the only way this can happen is if you exclude a device. If you read my earlier post I simply stated that I have seen this as well when editing a rule and you edit the trigger.

You should have replied to the OP then instead of posting a general reply. I was simply stating that excluding a device is not the only thing that can cause this.

I was...since i didn't specifically reply to you. it's their thread. Not yours. I didn't specifically reply to you. And you said right off the bat that you didn't exclude anything. Since the OP did, maybe that should have been your first clue.

Yeah.....i don't think so. What series of clicks did you do where you got a phantom trigger while editing a rule?

I don't really care what you think. I've already worked with Bruce to fix a different bug I found in Rule Machine. That bug was fixed in the latest release. I will work with him again on this one.

@Ryan780 is correct. You can't have an orphaned line for a missing trigger through any means except removing a device from the system. When you remove the device from the trigger itself, it does not leave this artifact. Ryan is also correct in stating that in this case of a 'missing' trigger, it does no harm beyond the eyesore.

2 Likes

With respect, this is not accurate. I have had this happen to me when editing a rule without excluding any devices. I don't have time right now but I will see if I can replicate the issue again. Give me some time and I will post the steps to cause this.

1 Like

@bravenel Here is a screenshot of a missing trigger without me excluding a device. If you want to split this into another thread I'll post the steps. Granted it is user error but RM doesn't catch it.

Here's another

Are you hitting the back button without picking a device for the trigger?

What back button? The browser back button?

Yes.

No. As I stated earlier this is a user error but not something that RM couldn't trap. Create a rule with two triggers, save the rule. Go back into the rule and click on the triggers. Select 'Edit Event Trigger', select the first trigger. From there unselect the device then click <<App List in the upper left corner. This is user error but I don't see why RM couldn't trap for this error. This is a different issue from hitting the back button in the browser. In that case RM would have no way to catch that.

Which is the same as using the back button....aka navigating away from where you are supposed to be. You always have to return to rule list by clicking "done" at the bottom of the page. That is what I said hours ago.

That's why this is on the rule's main page:
image

1 Like

You are the correct one.

I have had this happen as well with no excluding of devices, and no back browser button

I have read that.

I didn't hit the back button in the browser. This is different because RM could check for this when you hit <<App List because it is within RM control. They are not the same. If that is how RM works that's fine but to say they are the same. is incorrect That is why I specifically asked you what back button you were referring to. I never brought this up to Bruce because it is an edge case. RM should be able to check for this whereas it can't check if you hit back in the browser. Same way it catches "double operators"

Not true. There is no way to catch this in an app. We can update the Warning to say,

Thanks Bruce. I didn't come here to argue. I was just pointing out an issue that can come up. Hitting back in the browser and hitting <<App List are not the same thing. I just find it odd that you can't check for this before it exits the page. I stand corrected.

Both back button and « App List remove control from the app. It never knows what hit it. The warning will be updated.

There are many ways one can corrupt a rule, many of which cannot be prevented. And the point is?

I have no point other than what I stated.

I kept stating "Why couldn't RM (the app) check", I misspoke. What I meant is why couldn't the platform check. I don't know how HE is architected so I don't know where the check would be done.
I guess what I was thinking is why couldn't the platform check with the app prior to the <<App List function being executed. I click <<App List, platform asks app to check itself for errors, if it reports errors it cancels leaving the page. Maybe it's not possible within HE but it's something I have my code testers check for.

The only way the GUI could prevent you from clicking on a link that you're not supposed to is to remove the link from the page while you're editing a rule. And I like that they're there because you can always right click and open it in another tab without a problem.

Also, in this case, if you were to navigate back to the triggers definition page, you would see that it picks up right where you left off, allowing you to complete the definition of the trigger.

I created this one by miss-clicking the same as you did:
image

But if you click on the triggers, this is what you are presented with:

image

It picks up right where you left off to pick the device to add back to the trigger. If you finish it off correctly and come back out by clicking done, the trigger is fixed.

image

That's the big difference between miss-clicking and removing a device. If you miss click, you can end up fixing it and it won't let you do anything else in that section till you finish off what you started. That's not true if you remove a device. That ghost is there for good.