-
Notifications
You must be signed in to change notification settings - Fork 5
Incorrect due dates on Canvas assignments #314
Description
User Story:
As a course staff member using Flextensions,
I want assignment due dates synced from Canvas to remain consistent with the original deadline,
So that the entire class doesn't see a private extended deadline intended for a single student.
Assignments synced from Canvas seem to take on incorrect due dates after some amount of time - rather than maintaining the original due date, the due date for the entire assignment in Flextensions becomes the extended due date of a random student. This has happened to all Canvas-based assignments in CS 61C so far, and no staff had manually changed due dates after the assignment's initial creation.
This issue likely stems from the fact that the Canvas API's due date field (which is used by Flextensions) changes, seemingly at random.
First, the due_at field given by the Canvas API seems to be wrong for teacher accounts when there are overrides. Flextensions seems to try to account for this by manually determining the base date using the all_dates query if it can see and overriding the default due_at parameter
However, the Canvas API imposes a limit on the number of dates that can be viewed with this method (see here). Once this limit, currently set to 25, is reached, no dates will be shown at all and the workaround breaks.
So essentially, after 25 extensions have been approved with Flextensions, there's a chance the assignment's overall due date will change...