Skip to content

Incorrect due dates on Canvas assignments #314

@noahnizamian

Description

@noahnizamian

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...

Metadata

Metadata

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions