The roll is obligatory, with three exceptions: if the move ends with a check, the piece reaches the last line as rook, bishop or knight, or if a pawn reaches the last line.
The first exclusion as written includes discovered check; is that intended?
The second exclusion sounds like it's there to prevent rolling a pawn and it being stuck; but maybe it fits better to force a roll, and if it lands pawn then the player immediately promotes (chooses a face)?
I've removed the Incomplete Information category. I don't think we include randomness in that definition, just deterministic information that's hidden (?).
The first exclusion as written includes discovered check; is that intended?
The second exclusion sounds like it's there to prevent rolling a pawn and it being stuck; but maybe it fits better to force a roll, and if it lands pawn then the player immediately promotes (chooses a face)?
I've removed the Incomplete Information category. I don't think we include randomness in that definition, just deterministic information that's hidden (?).