The problem is you have a WAIT command nested inside a condition statement that will no longer be true after the wait period passes. Here is what happens:
Motion is detected or a button is pushed.
Push notification is sent and lights are set to 100%
Your piston sets a wake-up timer for 1 minute in the future.
1 minute later, your piston wakes up and evaluates your IF condition. A button push or change in motion will not have been detected, so your IF condition evaluates FALSE now… so your piston skips any commands in the “THEN” section. If you had commands in the “ELSE” section, it would execute those.
The easiest way to change this is to change your task cancellation policy on that section. Click on your WITH statement, then the gear cog at the bottom to expand settings. Change your Task Cancellation Policy to “never cancel tasks”. You’ll see there the default webCoRE setting is to cancel pending tasks if the condition of an IF statement changes.
Repeat this activity for your WITH statements that have WAITS nested in conditions that will change. Looks like your piston has 3 of them in total.
Hope this helps!