Odd Bug with Wait

I am not sure what happened-but I did a "wait" for a condition. The condition was true already (apparently, RM said "not waiting"), However, the very next instruction I checked the condition (to detect a "timeout" so I could tell if the wait timed out vs. the condition actually happening).

Oddly, the condition that was TRUE for the wait was FALSE .03 seconds later (and it should have been TRUE--it certainly shouldn't have changed back at that point).

Any ideas what might have caused that or how to get around it?

Here's the "Event Log" for that device--it didn't flip back to "Away" as far as I can tell:

But, interestingly, the timestamp in the Event log is somewhat AFTER the timestamp on both of those log entries--I wonder if the "If" statement is looking some place different than the "Wait" statement (cache, etc.) and they're ending up with different results in certain "race" conditions??

Have you set it to wait for event or condition in the rule?

Wait for condition, as I stated above.

Definitely looks weird from that screenshot, but if you share the rule (triggers and actions in their entirety), maybe someone can spot something odd?

I added an arbitrary delay to try to work around what appears to be a "race" conditions in RM.