Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-43893

Handle empty grade in the LTI Advantage Outcomes Service

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: RESOLVED
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 21.0 [Tentative]
    • Fix Version/s: 21.0 [Tentative]
    • Component/s: BasicLTI
    • Labels:
    • 20 status:
      Please Merge
    • Test Plan:
      Hide

      Log in as admin - place the LMS Test Tool in Lessons - make sure your site has a gradebook.  Log in as student.  Launch LMS Test Tool from Lessons.  Choose Interact with LineItems.  Make a LineItem if there is none.  Send a score of 0.42 (check the grade book to see that the score made it).  Then go back to the LMS tool and Delete the score.  Before this fix, you will get an error (Before screen shot) and with this fix you will get a 200 and the grade will be deleted form the grade book but the comment form the delete request will be updated.

      Show
      Log in as admin - place the LMS Test Tool in Lessons - make sure your site has a gradebook.  Log in as student.  Launch LMS Test Tool from Lessons.  Choose Interact with LineItems.  Make a LineItem if there is none.  Send a score of 0.42 (check the grade book to see that the score made it).  Then go back to the LMS tool and Delete the score.  Before this fix, you will get an error (Before screen shot) and with this fix you will get a 200 and the grade will be deleted form the grade book but the comment form the delete request will be updated.

      Description

      The LTI Advantage Assignments and Grades Service does not support a "delete" operation so tools have started to send empty grades as a way to delete the grade.   Sakai sees an empty grade as "do nothing" - we need to treat this as "set the grade" to empty. 

      Per a Slack conversation with Eric Preston, the decision was made to accept a comment value on a null grade.  The idea is that there is no DELETE operation so the convention is to accept a null grade as a valid value - and the comment can be null as well - but if there is a comment - we take it.

      Per Claude Vervort - https://www.imsglobal.org/forum/learning-tools-interoperability-public-forum/198221

      To reset a grade just send no score value with not started statuses:

      { "activityProgress": "Initialized", "gradingProgress":"NotReady" "userId":"...", "timestamp":"..." }

      #MartinLTI

        Gliffy Diagrams

          Zeplin

            Attachments

            1. SAK-43893-Before.png
              SAK-43893-Before.png
              295 kB
            2. SAK-43893-Delete.png
              SAK-43893-Delete.png
              228 kB
            3. SAK-43893-Delete-Fail.png
              SAK-43893-Delete-Fail.png
              281 kB
            4. SAK-43893-Grade.png
              SAK-43893-Grade.png
              210 kB
            5. SAK-43893-Grade-After.png
              SAK-43893-Grade-After.png
              217 kB
            6. SAK-43893-JSON-After.png
              SAK-43893-JSON-After.png
              291 kB

              Issue Links

                Activity

                  People

                  Assignee:
                  csev Charles Severance
                  Reporter:
                  csev Charles Severance
                  Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                    Dates

                    Created:
                    Updated:
                    Resolved:

                      Git Integration