Run Actions won't run in a Paused rule

When I'm modifying a rule, I "Pause" the rule so that it doesn't trigger automatically before I'm done with the modifications. I then do some edits to the Actions, and I want to test the edits using "Run Actions". But "Pause" blocks "Run Actions". I have to "Resume", "Run Actions", and then "Pause" again. What purpose does having "Run Actions" blocked by "Pause" serve? If that can't be fixed, then could we please have a "Run Actions Even if Paused" button so that I can test a Paused rule?

2 Likes

It will be because you can run actions from another rule or other apps. Pause rule then needs to be able to pause that aswell.

Instead of pause. Use "stop" with pause, the rule is still running and wakes, sees it's paused and shuts down.

Stop however removes it's subscriptions.

2 Likes

So:

Or just stop the rule as I said before that's what you want.

Certainly not, as this would just layer on double meanings where there should be only one. A paused rule doesn't run.

Hitting Done in a rule doesn't trigger the rule. Also, depending on what modifications you are making, you don't even have to hit Done. Modifying Actions happens immediately, whether or not Done is hit. Hitting Done or Update Rule has to do with updating subscriptions or schedules, i.e. triggers.

Then disable the Run Actions button when a rule is paused.

I'm modifying a rule that has frequent triggers and I don't want the triggers to run the rule while the actions are incomplete or untested. One problem with having to do UnPause/RunActions/Pause (apart from the UI inconvenience) is that some trigger might run the rule while it is UnPaused. Would Stop be a better choice? I worry about Stop because it "removes all schedules and subscriptions"; I only want to pause the rule, not remove anything.

Schedules and subscriptions will, generally speaking, be re-instated when the rule is re-started, just as they are when you create the rule in the first place. This does also remove schedules and subscriptions that may have been created by your actions (e.g., waits, delays, etc.), which is where the "all" part in the description you quoted comes from. For rules that do not use this type of action, or even for rules that do but are not in the middle of any actions, there would be no difference before and after.

Even if your rule is affected by this, if you are modifying the actions of your rule, this behavior might be desirable. But if you do need some wait/delay to complete, you'll have to think about what you might need to check on or change — the state or value of some device, variable, etc., — given the effectively cancelled pending actions (say, if you're depending on something for a required expression).

2 Likes

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.