Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Here is a proposal on how to deal with duplicate
grade_id
s during autograding. Feedback is very welcome. Note that three of these commits might be worth considering merging independent of this PR:converter.py
to allow continuing with the other submitted notebooks (from the same student) in an assignment even if one of them is problematic. This way, for example, if an assignment had multiple notebooks and only one contained a duplicated cell, the rest would still get autograded.Dealing with duplicate grade_ids
The main idea of this PR is to add a
duplicate
flag to cells that were observed to have duplicategrade_id
s during autograding, so that they can be ignored and the rest of the notebook can be autograded. At the end of autograding, theduplicate
flag is caught in order to raise an error and let the instructor know that some cells were ignored. These ignored cells are also marked with a comment for easy identification, however, the problem of the instructor editing the notebook remains unfixed (as it breaks the feedback workflow, #1202).3b3c672 changes the order cells are processed by `DeduplicateIds´ with the idea that often if one is copy-pasting a cell, the pasted cell goes below the original one. This makes it more likely for the original to be more important for the grading, implying that we should be ignoring the cells lower in the notebook.