Elaborating a bit more: whenever I find myself struggling to rearm something edge triggered, Stage always cures it. Maybe you don't think of such things as sequences, but they really are. You fire them, wait for an unknown time for completion, determine whether you want to run again, and repeat.
The reason I asked about DL vs Do-more on stage is that I think that DL stage can cause more trouble than it's worth. Stage is a tool. When it's the right tool, there is nothing better. Do-more's stage implementation allows you to use it only where it makes sense, but DL tends to be more all in. In Do-more I almost never use stages in $Main, but frequently do in program blocks. Even then, only when it's the right tool.