I allow the second attempt to be made. I don't allow it to change the result of the first attempt (i.e. no second roll) unless something has materially changed in the fiction in the meantime.In most games I run, whether it’s D&D or something else, I don’t allow second attempts as you’ve described.
Which is kind of like a thinly-veiled take-20, a mechanic I very much dislike. I mean, if they want to spend all day trying to open a door that in game terms has already been determined as beyond their capabilities, then more power to 'em. I won't disallow them from going through the motions.In D&D, I similarly don't allow multiple players to roll for their characters. The group essentially gets one roll, and if anyone else can help, then they roll with advantage. The result of that roll determines the outcome.
If we’re in a situation where multiple rolls seem like they’d make sense… like being at a locked door for over a day… then I simply grant success without a roll. Or I ask for a roll and use that to determine how much time it takes, rather than success or failure.
Except in the fiction the thief might not know (or might not be willing to admit) it's futile; and even though the player knows it is, playing the character true means that thief keeps on trying.I mean, set the whole notion of meta aside. Just tell the player “it’s futile and the thief knows it is” and then get on with the game.
It's on the rest of the party to in-character convince him it's futile, or to leave him to it while they do other things, or whatever. Not on me-as-GM.