Rule became true but action did not run

That's the wrong date :slight_smile: It should've run this morning and the event log shows it saw it turn on but nothing beyond that.

OK. As before, are you sure that rule truth is changing? Perhaps try it as a Triggered Rule triggered by the switch state changing.

I'm 100% sure the truth is changing in so far as I checked switch states last night and all were off and the logs show it went on this morning. I'm not manually turning it off of course so I can only go by what the dashboard said it was. And we had a few power outages yesterday so I have no logs from Friday (even if they didn't roll over by now).
And I just tried setting the delayed off to 1 minute and was able to have the rule run (when I turned the switch on) twice in a row; that is, the timer expired and the switch went off thus cancelling the rule (and I can see the lights turning o) and then I was able to repeat that.

I had it as a triggered rule initially and, if I recall, I changed because I was no longer able to have the cancel on truth change work which I want so I can stop the actions easily manually.

I've updated the rule to just turn the switch off directly and the switch is now a native virtual switch (with no timer). Hopefully that removes the extra level of uncertainty that is possibly in the timed virtual switch and if nothing else makes it clearer what's happening (I hope).

Can't you test this by just turning the "Bedroom wake up" switch on / off on its device page?

Yes but that seems to work consistently (or at least the >5 times I tried). That's why I was speculating something about the auto-off part of the timed virtual switch.... it's the only part I can't easily replicate manually. I did try it ~3 times with a shorter timed off (1 minute vs. 90 minutes) and it worked just fine so maybe it's unrelated but that off event is the only thing I can think of that's messing stuff up as the rest seems relatively straightforward.

The new rule also works fine (when manually triggered) and removes the timed portion of the switch.