Hi @Kitaxay ,
Thanks for your further explanation and hope I understand it correctly this time... So you would like to start the flow when you create a new item to the list and restart a new run when "update item" change "StartWF" to YES, am I right?
If so, to avoid endless start over and to ensure the flow runs as expect, advice is to separate the two ways of trigger into two flows. One will be triggered when a new item is created and another will start when "StartWF" to YES.
You can sustain the origin flow with trigger condition set to my previous suggestion.
For the "modified" trigger, refer to below screenshot:

@not(equals(triggerBody()?['Created'], triggerBody()?['Modified']))
sub(int(triggerOutputs()?['body/{VersionNumber}']),1)
The settings will only start this flow when modification was made to items, then it will contrast current list with last version of list to check whether target column got changed. If yes, the flow continues. If not, like the modification happens to other columns, the flow will ends.
Hope this helps~
Community Support Team _ Wenjuan Zou
If this post helps, then please consider Accept it as the solution to help the other members find it.