Let's say I'm at the park with the kids and I get a notification that dinner is in ten minutes. I'd give them a heads up ("it's going to be dinner in about ten minutes so we'll need to leave soon"), a reminder closer to the time ("two more minutes"), and then tell them it's time to go ("ok, time to go home for dinner now"). I'm telling them about something required, and I describe it in a way that they understand we're going to need to do it. I'm happy to have back and forth with them and explain why it's required if they ask ("David's cooking dinner and we're signed up for dinner tonight") but they do know it's required.

Now let's say we're at the park, and I realize it's about to rain. Since I expect they don't want to get soaked on the way home I'll let them know ("it looks like it's going to rain soon and we might get wet") and maybe offer suggestions ("Should we go home now?") but if they want to stay we'll stay. The worst that happens is we get wet, walk home wet, and go put on dry clothes. At 3y and 5y this is within their abilities to make good decisions about, so I make it clear that this is fully up to them.

Two things that are important to me about these interactions:

The kids know what is required and what is optional.

As much as possible is optional.

I see both moral and pragmatic reasons to approach it like this. Morally, a child is a person and deserves to be treated as an adult except so far as they're not ready for that yet. Pragmatically, children need to learn to operate in a world where they will be making real choices, and should have as much opportunity for practice as possible.

Another example: say we're out and there are puddles which it looks like they might want to play in. If they do this, their shoes will get wet. I could step in and tell them not to, but instead I'd probably say nothing and see what they do. Maybe they'll throw rocks into the puddles. Maybe they'll take their shoes off and go in barefoot. Maybe they'll decide that they don't mind having wet feet and walk in with their shoes and socks on. Maybe they don't realize their feet will get wet, walk in with shoes and socks on, and then learn that their shoes won't keep them dry when submerged. All of these are ok outcomes, and I don't need to intervene to protect them from having to walk home in squelchy shoes.

If we were on our way somewhere else in a hurry, or were far from home and I'd be risking having a grumpy kid for hours, though, I'd jump in to tell them no and give a reason ("if you get your feet wet now they'll be wet for a long time and you won't like that, so I need you to stay out of the puddles").

The main way I try to think about this is, why does this need to be a command? What happens if I give them the information I think they're missing and let them decide?