How does that work if a pokemon only knows one sleep move? Or is locked into Encore? Or in a pp-stall situation and it only has a sleep move left? I assume in these situations we would need to make exceptions - stop greying them out and use the dq system/allowing to break sleep clause if the opponent forced it with Encore.
Seems like a rather bad solution for new players. Now instead of just wasting a turn because they didn't know about a rule, they now would lose the entire battle. Also misclicks would be more annoying. We also would have the same issue as above (pp-stall and Encore).
If you burned some sleep turns in the battle, just let your pokemon be slept by a wild pokemon and burn the same turn number against it. Of course we can't know how long the sleep would have lasted initially, but we can recreate the situation with the same uncertainty and possible outcomes.
I think the best way to enforce sleep clause on cart would be to just let the other player wake up his mon while switching around, should you have broken it. If they wake up against a different pokemon just continue switching until you both have the right ones in again. In a real battle on cartridge you could let a referee do that so no new information is revealed to either player if the clause was broken early.
In short, after some thinking the sleep clause how we have it on showdown seems indeed possible to enforce on cart.
For freezes I think you could just use the suggestion of Longfellow and try to recreate the same gamestate. Freeze clause doesn't activate that often and playing on cart would also take much longer overall. I don't know how many people would actually be willing to play a bo3 with the animations, loading time and so on.
FOMG all the counterpoints you bring up in terms of greying moves are answerable with a simple question- does the player have a choice about using sleep moves? If so, then they should make that choice rather than putting something else to sleep, be it using a different attack or switching. If they really have no choice, which is extremely rare, then they should be able to use sleep moves- in such a scenario it's fair to say that the player using sleep moves has lost and so the opponent shouldn't care too much about repeatedly being put to sleep.
I actually discussed this option on PP, I think the most troublesome issue is how a simple restriction limits otherwise fair play, while things get really complex if you try to minimise cases where those restrictions occur
As mentioned above, I think the cases of Encore and PP stall are easily resolvable. As for the prompt-DQ system, the idea behind the prompt would be to mitigate the impact of misclicks (you'd need to misclick twice in a row) as well as explain the rule to people unfamiliar with it. At that point if people still don't get it then tbh I think that's on them, there's only so much you should account for human stupidity, but I think it's reasonable to disagree on that, so I'm not really going to argue. Either way, I do agree that it's a bullshit way to lose and if people are somehow still activating it then that'll probably be really discouraging. Although I still think it's better than a mod, it's not my preferred option
Yeah I guess I focused on the wrong things for the whole sleep replicating thing, it wasn't until the day after I posted that that it occurred to me that the actual number of sleep turns remaining doesn't matter since that info is invisible anyway. As for your suggestion regarding switching pokemon until they wake, that only works in gen 1 as entry hazards kill that idea in later generations, as well as Leftovers.
I still think replicating team states is an absurd length to go to though. Saying that playing on cart would also take a while I think is a bit of a cop-out, and it's also not really comparable to the chore of replicating a team state at the time of a clause activation- I honestly don't see how the latter doesn't take several hours, or more likely a day or two (I think I'm being extremely generous with several hours tbh), an actual cart battle is not really comparable imo. The whole thing is jumping through insane hoops to rationalise something that should've never been there in the first place