async fn late_completer_courses(
conn: &mut PgConnection,
early: &[&RosterPerson],
course_ids: &BTreeSet<Uuid>,
since: DateTime<Utc>,
) -> CreditRegistrationResult<HashMap<String, BTreeSet<Uuid>>>Expand description
For each of early (unlinked, enrolled before since) whose Sisu primary or secondary address is
the account email of someone with a registerable completion since since, keyed by Sisu person
id, the courses that completion is on: their completion is why they are worth mailing now.