I am putting this in the script section because I actually count on the functionality in scenes and scripts. I may misunderstand the way this mechanism is supposed to work.

I assumed this was a timer that would always reset to the last time the switch was invoked and left on. For example Say A light with a timeout of 10 minutes is turned on and someone hits the on switch one minute before it times out, the timeout should reset to 10. What I seem to be experiencing is possibly multiple threads turning the light off per the original request, ignoring the new, overriding request.