inducer / inducer/relate

Introduce finish_rules

Open
#358 0 comments 0 reactions 0 assignees View on GitHub
long p1
Dominant language
Python
Stars
435
Forks
124
Avg merge
5h 40m
Merged PRs (30d)
14

Description

There are two instances of potential circular reasoning in `grading_rules`:

* Which grading rule gets used may depend on the completion date, by way of `if_completed_before`. On the other hand, the completion date may depend on
* Whether a flow gets finished may depend on the due date. But the due date is part of a grading rule, which can't really be evaluated before a flow is finished, given the existence of conditionals like `if_completed_before`.

In the current code, this is resolved in an ad-hoc manner, *somewhat* sensibly--the conditional uses the current time as the completion time when choosing grading rules for in-progress sessions, or, as of af46e5f222896305a10a366fe783001dcc0073ab, also the time of the last activity if `use_last_activity_as_completion_time` is set.

A reasonable way to resolve this would be to introduce another set of rules (maybe `finish_rules`) that get evaluated before a flow is finished (to set things like the due date and what should be used as the completion time).

cc @eecarrier

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.