From 5d9f2fe12f55c88bf25e4efb62daf662c7db9b25 Mon Sep 17 00:00:00 2001 From: Michael Roytman Date: Wed, 7 Apr 2021 14:44:21 -0400 Subject: [PATCH] fix: Display Useful Status in InstructorDashboard StudentOnboardingPanel for "onboarding reset" Attempt Status JIRA: MST-736 Due to inconsistencies in the way we handle attempts in past due practice proctored/onboarding exams, learners can end up in an unintended liminal state after attempting to reset their onboarding attempt. If a learner attempts to reset their rejected onboarding attempt after the exam's due date, we process the reset request and move their attempt into the "onboarding_reset" state. Theoretically, a new exam attempt should be created immediately thereafter. However, we have code that prevents the creation of an exam attempt after the exam's due date, so the call to create a subsequent exam attempt fails, leaving the learner with an exam attempt with the "onboarding_reset" status. Theoretically, this situation should never occur, and the fact that it does is a bug. Because of this, we did not handle the "onboarding_reset" status in the StudentOnboardingStatus panel, and this status appears as "null". As an intermediate step, while we think about our due date logic, this pull request bumps the edx-proctoring library to version 3.8.5, which adds a new onboarding status "onboarding_status_past_due". This status is displayed as "Onboarding Reset Failed Due to Past Due Exam" in the StudentOnboardingPanel in the InstructorDashboard, which should provide course staff with a clearer explanation. JIRA: MST-745 tracks the removal of this intermediate code from the code base once we fix the underlying cause of this bug. JIRA: MST-749 tracks the fix for the behavior that allowed for this state to occur. --- requirements/edx/base.txt | 2 +- requirements/edx/development.txt | 2 +- requirements/edx/testing.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements/edx/base.txt b/requirements/edx/base.txt index 9a91fed9db..fce0454166 100644 --- a/requirements/edx/base.txt +++ b/requirements/edx/base.txt @@ -108,7 +108,7 @@ edx-milestones==0.3.1 # via -r requirements/edx/base.in edx-opaque-keys[django]==2.2.0 # via -r requirements/edx/paver.txt, edx-bulk-grades, edx-ccx-keys, edx-completion, edx-drf-extensions, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-user-state-client, edx-when, lti-consumer-xblock, xmodule edx-organizations==6.9.0 # via -r requirements/edx/base.in edx-proctoring-proctortrack==1.0.5 # via -r requirements/edx/base.in -edx-proctoring==3.8.3 # via -r requirements/edx/base.in, edx-proctoring-proctortrack +edx-proctoring==3.8.5 # via -r requirements/edx/base.in, edx-proctoring-proctortrack edx-rbac==1.4.2 # via edx-enterprise edx-rest-api-client==5.3.0 # via -r requirements/edx/base.in, edx-enterprise, edx-proctoring edx-search==3.0.0 # via -r requirements/edx/base.in diff --git a/requirements/edx/development.txt b/requirements/edx/development.txt index 52f6579b8b..ee4a1f254a 100644 --- a/requirements/edx/development.txt +++ b/requirements/edx/development.txt @@ -121,7 +121,7 @@ edx-milestones==0.3.1 # via -r requirements/edx/testing.txt edx-opaque-keys[django]==2.2.0 # via -r requirements/edx/testing.txt, edx-bulk-grades, edx-ccx-keys, edx-completion, edx-drf-extensions, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-user-state-client, edx-when, lti-consumer-xblock, xmodule edx-organizations==6.9.0 # via -r requirements/edx/testing.txt edx-proctoring-proctortrack==1.0.5 # via -r requirements/edx/testing.txt -edx-proctoring==3.8.3 # via -r requirements/edx/testing.txt, edx-proctoring-proctortrack +edx-proctoring==3.8.5 # via -r requirements/edx/testing.txt, edx-proctoring-proctortrack edx-rbac==1.4.2 # via -r requirements/edx/testing.txt, edx-enterprise edx-rest-api-client==5.3.0 # via -r requirements/edx/testing.txt, edx-enterprise, edx-proctoring edx-search==3.0.0 # via -r requirements/edx/testing.txt diff --git a/requirements/edx/testing.txt b/requirements/edx/testing.txt index c978644c77..b1ae5c16a4 100644 --- a/requirements/edx/testing.txt +++ b/requirements/edx/testing.txt @@ -118,7 +118,7 @@ edx-milestones==0.3.1 # via -r requirements/edx/base.txt edx-opaque-keys[django]==2.2.0 # via -r requirements/edx/base.txt, edx-bulk-grades, edx-ccx-keys, edx-completion, edx-drf-extensions, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-user-state-client, edx-when, lti-consumer-xblock, xmodule edx-organizations==6.9.0 # via -r requirements/edx/base.txt edx-proctoring-proctortrack==1.0.5 # via -r requirements/edx/base.txt -edx-proctoring==3.8.3 # via -r requirements/edx/base.txt, edx-proctoring-proctortrack +edx-proctoring==3.8.5 # via -r requirements/edx/base.txt, edx-proctoring-proctortrack edx-rbac==1.4.2 # via -r requirements/edx/base.txt, edx-enterprise edx-rest-api-client==5.3.0 # via -r requirements/edx/base.txt, edx-enterprise, edx-proctoring edx-search==3.0.0 # via -r requirements/edx/base.txt