If the hello home action changes the mode, then nothing in that hello home action will run if the system is already in that mode.
This trips up a lot of people, because intuitively it seems like all the other parts would run and then just the last mode change wouldn’t matter. But it’s just not the way smartthings works. Instead, if there’s a Mode change, the very first thing it does is check to see if you’re already in that mode.
In fact, I think this is probably the most typical granularity problem when you have two people living in the house. It’s really common to set up a hello home action so that when either of the two people arrives home, the door unlocked, and the mode changes to “home.”
The problem is that this will only unlock the door for the first person. Once they arrive and the mode is changed to “home” then the door will not unlock for the second person because the hello home action won’t run since the house is already in “home” mode.
The easiest way to fix this is to split it into two hello home actions. One changes the mode to home when either of the two people arrive. The other unlocks the door when either of the two people arrive, but does not change the mode.
That way when the first person arrives, both of those hello actions run, and the mode gets changed to home and the door unlocked.
When the second person arrives, hello home action that unlocks the door still runs. Hello home action that changes the mode does not run, but it doesn’t matter, because the mode is already set to home.
So again it all comes down to the details of what you want to have happen when.