I downvoted an answer 17 seconds after it was posted, and left. I came back 17 minutes later (what a coincidence) and the post had been edited, but the system didn't let me undo my vote. I believe it was because the edits took place during the grace period and weren't registered. Is that so? I wish I were able to remove my downvote.
-
Exactly the same thing happened to me so this problem still exists despite being apparently fixed as per meta.stackexchange.com/questions/23701/…– Richard TingleMay 13, 2013 at 12:48
-
2The "fix" implemented in 2010 was to let us undo votes freely during the grace period. The problem is that we both voted during the grace period, but tried to undo it after it expired. The lesson I learnt here was, wait until the grace period is over before downvoting, unless you're keeping an eye on the post in real time. Not the ideal solution, but it's all we can do unless they change how this works.– bfavarettoMay 13, 2013 at 14:28
-
1I partially disagree with that @bfavaretto. If people are going to post answers that aren't answers then they deserve the downvote immediately. If they then go on to improve it then it's up to you whether you remove it or not. You should have the choice, but the initial downvote is more than warranted; one doesn't have to post the initial answer.– ben is uǝq backwardsJul 6, 2013 at 11:31
-
Another bug report: Bad answer -> Downvote -> Edit within 5 mins -> Undo -> Vote locked in– Danny BeckettJul 6, 2013 at 11:34
-
@DannyBeckett it is probably not quite a bug, but it is definitely a bad UX.– psubsee2003Jul 6, 2013 at 11:36
-
@psubsee2003 The idea of locking a vote in is to stop it being revoked unless the answer is edited. Here, the answer is edited, so revoking the vote should be allowed. It isn't; therefore in my mind: bug.– Danny BeckettJul 6, 2013 at 11:38
-
1@DannyBeckett ok... you convinced me. I was thinking it was status-bydesign more than anything, but that is a valid argument for calling it a bug.– psubsee2003Jul 6, 2013 at 11:39
1 Answer
From what I understand of the grace period, all revisions get wiped. This would imply there's no real way to confirm whether or not a post was changed and therefore whether you should be able to remove your vote or not.
One solution would be to keep the first version of a post; you will then know if it's been edited within the grace period.
If the first version isn't kept then there is a column, LastEditDate
in the Posts
table. From what Nick describes of how the re-indexing of posts for search takes place the time a post was last edited is stored. If it's edited in the grace period you could store this value in the LastEditDate
, even if you don't store the revisions themselves.
I suspect this column is used to create the edit timestamp link beneath a post, which might cause problems with links being available but no versions being visible. If you didn't want this to appear you could use the edited timestamp described by Nick to create a simple flag, to determine whether the post was edited during the grace period and allow people to revoke their votes if this is true.
-
Not sure if unlocking votes that were made after the late edit if it was within the grace period is a good idea, but otherwise I'm all in! Please get this implemented! :-) Jul 6, 2013 at 12:03
-
1No @Jan, you should be able to unlock votes on posts that were edited after you voted but within the grace period.. Jul 6, 2013 at 12:07