Add whole-assignment attempt policy - #54
Open
vosslab wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
This PR adds an opt-in whole-assignment attempt policy to ADAPT.
Instructors may retain the existing per-question model or require students to answer every question as one complete attempt.
Attempts can be limited or unlimited, and the highest completed score is retained.
Pedagogical purpose
The goal is to support mastery-based practice. Students complete the entire assignment, review immediate feedback, and then
start a new attempt. When algorithmic variation is enabled, WeBWorK and IMathAS questions can provide fresh problem variants,
encouraging students to learn the concepts rather than memorize answers.
Implementation
This PR includes:
The feature is disabled by default, so existing assignments retain their current behavior. Native, WeBWorK, and IMathAS
questions are supported; H5P and open-ended questions are not.
Screenshots
Instructor configuration: Select whole-assignment attempts and set the number of allowed attempts.
Attempt in progress: Students see the current attempt and remaining attempts.
Completed attempt: Students see their score and can start another attempt.
Mastered assignment: The completed native-question workflow retains the student’s highest score.
Testing and feedback
I tested the instructor and student workflows locally in Docker.
Please feel free to reach out with questions or concerns. I will try to attend LibreTexts Office Hours on Tuesday and would be
happy to demonstrate the workflow or discuss the implementation.