It takes a quorum of five different users to vote to close, or vote to reopen. Except for diamond moderators, each user only gets a single close vote and a single corresponding reopen vote. Fine so far, I have no problem with that policy in general.
However, for the following sequence of events:
- User X posts question
- User Y votes to close the question
- The question is closed by a quorum of users including User Y
- The question is edited
- The question is reopened, not involving user Y
- The question receives fresh close votes, not from user Y
- User Y sees that the question has been edited, has pending close votes, and wants to retract theirs because they now feel that the question is good enough to be open
...then the close vote dialog only indicates something like "You voted to close this question X hours ago".
Had the question not been closed (step 3 above), there would have been a button next to that text allowing User Y to retract their close vote.
There is nothing to indicate that the reason why the close vote cannot be retracted is that the close vote was already "used up" in the initial closure, and is no longer current. That information is available (if you know how the system works) in the revision history, but that requires actively looking for it.
In the situation described above, the vote to close dialog should indicate somehow that while the current user has previously voted to close, the question did get closed and theirs is not one of the currently pending close votes on the question, and that is the reason why their close vote cannot be retracted.