The variable is_loop_for_key_up_held
is a negated reflection of an end user assigned variable made available to the automation from the blueprint. I think you should check out the script syntax documentation for more information on the options that exist: Script Syntax - Home Assistant
This blueprint was defined using repeat until which will continue execution until that condition evaluates as true, so when the end-user wants looping the negation of “Hold for looping”, is false and that’ll keep going forever. It doesn’t though because of mode: restart
. Never ending loops could do harm, so if you want to use this tact remember to use mode: restart
and you might consider the following
until loop evaluates while the expression is false
until: "{{ false }}"
OR
while loop evaluates while the expression is true
while: "{{ true }}"
These constructs should be semantically the same. Both need that script reset because hopefully the next button press restarts the script.