Skip to content

General: Expire science consent when a course is re-enabled after a gap #13937

Description

@MaximilianAnzinger

Split out of #13357, which introduces course-level science consent.

Problem

ScienceCourseService.disableCourse only flips active on the science_enabled_course row, and enableCourse flips it back. A student who consented before the course was disabled is never asked again when it is re-enabled, because their consent row is no longer undecided and the prompt in CourseOverviewComponent only fires on an undecided decision.

Collection therefore resumes silently under a decision taken in a different context — an ethics approval that has since lapsed, a different teaching team, or simply a year later.

Suggested direction

Give collection a period or a consent version: a consent is recorded against the activation it was given under, and a new activation asks again. The consent timeline already records each decision as a SCIENCE__OPT_IN / SCIENCE__OPT_OUT event, so the research export can already tell the windows apart; what is missing is the student being asked.

Notes

Not a regression — it is a gap in the model introduced by #13357 and deliberately left out of it, recorded there under "Known limitations".

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    atlasPull requests that affect the corresponding modulecourseexercisePull requests that affect the corresponding module

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions