Here's how I think it should work.

Within the current vision cone: a stealth check should be made. If obscured, that check should have advantage and last for three rounds before requiring a new check. If lightly obscured, the check should be normal and last for two rounds before a new check is required. If not obscured at all, that check should have disadvantage and last for only one round if successful.

Outside the current vision cone, there's a distance where the enemy automatically notices the character if the character isn't in stealth. Whatever that distance is, there should be an immediate stealth check made with advantage. That check should last for ten rounds instead of one round. After ten rounds, the check should have to be made again, assuming the character is still within that boundary.

*

Checking every round is just too much. Even the stealthiest character is bound to fail soon under those conditions. That's why I suggest extending the number of rounds one can stay hidden after making a successful check.

If you're right in plain view, obviously one round. Then make the check again.

If you're lightly obscured, a couple of rounds, then make the check again.

If you're heavily obscured, a few rounds, then make the check again.

If you're outside the current vision cone, but close enough to be heard and such, give the character ten rounds of not being noticed after a successful check, then force another check, assuming the character's still in the vicinity.