A "delay" will not be cancelled unless you mark it as such and also run a "Cancel Delayed Actions" action somewhere. A "wait" of any kind will be cancelled automatically when the rule is triggered. So, in your rule, if you press button 1, then wait four minutes, then press it again, the light will turn off one minute (not five) after that last press--nothing cancelled the originally scheduled delay. A wait would be cancelled with the second button press because that is a trigger event for your rule. Alternatively, the existing rule could be written with a "Cancel Delayed Actions" at the beginning and with marking "cancel?" (sometimes displayed as "cancelable") on the delayed "Off" action.