-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Better deduplication of answers #2276
Comments
If two people submit the same guess to the same puzzle at different enough times that the client submitting guess 2 sees guess 1, I believe we prompt them to reconsider (and if they persist, still allow them to create the duplicate guess). I'm not sure if we have the same guardrail in the no-guess-queue form variant, though, so that might be something worth checking/implementing if we don't yet! If two people submit the same answer to the same puzzle at truly the same time, we usually have the operator manually reject one of the submissions as a duplicate to match the expected answer count. If you wind up with a puzzle that has two correct answers, you can always go back to the guess history page and mark one of the "correct" submissions as "rejected" instead, which I think should remove the duplicate answer on the Puzzle object. |
Confirmed that the above guardrail is only present for the guess-queue mode; will send a PR to replicate it for the no-guess-queue mode, which should hopefully make a big difference here even if things aren't fully transactional. We can discuss transactions after hunt since they're also an open question for deduping puzzles. Regarding the workaround of rejecting one of the submissions - this would be reasonable, except in no-queue mode there is a related bug. If you submit the same answer twice, then remove one of those answers, it appears that the guess remains around, but the answer list is cleared. This puts you in a strange inconsistent state. We should probably fix that as well. |
If two people submit answers to the same puzzle at the same time, they both get added as distinct answers.
I'm not sure how easy this is to resolve in the general case, particularly if there are more than 1 intended solution. But it feels like adding a solution would ideally be wrapped in a read-modify-write such that if the new solution would cause us to exceed the expected solution count of the puzzle, it replaces the latest one rather than being added on top of it.
The text was updated successfully, but these errors were encountered: