> Pick the option that minimizes possible state and capture the requirement logic

Which is what booleans do when the requirement is two states.

> Also, doesn't "... a weird hack that wastes space" contradict "Avoid premature optimization"?

No, because including the timestamp "just in case" is the premature optimization.