Description
The configurations should have an additional section containing a sample solution module.
To be used in two ways:
First, upon upload of the configuration, part of the configuration validity checking is whether the contained sample solution would itself pass all the checks that will be performed on student submissions eventually.
Second, optionally and controlled by another new configuration option, part of evaluating a student submission is to compare it to the stored sample solution (using the same matching procedure that is also comparing student submissions against the task template, but probably with settings allowAdding = allowModifying = allowRemoving = False
, or at the very least allowModifying = False
). This being controlled by an option like messageOnCloningSampleSolution :: Maybe String
. If that option is not set, no comparison happens. If that option is set to some string (e.g., "Your submission looks suspiciously similar to the spoiler provided in collection.pdf"
), then the comparison happens, and if it indicates a clone, then the set string is output as part of the feedback.