It gave me an intuitive understanding of state machines and idempotency is one solution to transitions.
If you start with State A and a call changes it to State B, what does running the call again do? A->B? But you’re already at B. Shit’s going to break. Redesign your system.