Recurring Course Assignment

Workflow illustration — Admin setup, learner experience, and cycle transitions

Admin Workflow: Initial Setup

Scenario Annual compliance training. All learners complete the same training each year. The admin manages cycles within a single Learning Program.
1
Create Learning Program
e.g., "Security Compliance Training"
2
Add Course "Security Compliance 2025"
New component is Inactive by default
3
Mark the Course as Active
Component is now assignable to audience members
4
Assign audiences to the LP
Learners receive a task for the Active Course

Admin Workflow: Cycle Transition

When it's time for the next annual cycle, the admin transitions from the current Course to a new one:

1
Click "Use for next cycle" on Security Compliance 2025
System deep-copies Course + content items → "Security Compliance 2025 (copy)" created, Inactive by default
2
Rename to "Security Compliance 2026"
Review and update content items as needed (content review touchpoint)
3
Mark 2026 Course as Active
System assigns tasks for 2026 to all existing audience members
4
Mark 2025 Course as Inactive
New assignees will no longer receive the 2025 Course. Existing tasks remain intact.
After this transition, the LP has two Courses: 2025 (Inactive) and 2026 (Active). LP status for learners who completed 2025 reverts from Finished to In Progress because 2026 is incomplete.

Learner Timeline

Four learner scenarios across the 2025 → 2026 cycle transition:

Jan 2025 Jul 2025 Jan 2026 Jul 2026 2025 Course ACTIVE Cycle transition 2026 Course ACTIVE INACTIVE Sam Existing learner Completed Jun LP → In Progress Done Joe New hire (2026) Skipped (Inactive) Alex Non-completer Task remains (open) In progress Dana Partial completer Task remains (open) Completed Apr
In Progress / Not Started
Completed
Completion point
Skipped (Inactive)
Active
Inactive

Detailed Timeline

Sam — Existing learner

DateEvent2025 Course2026 CourseLP Status
Mar 2025 Enrolled in LP, assigned 2025 Course In Progress In Progress
Jun 2025 Completes 2025 Course Finished Finished
Jan 2026 Admin transitions cycle: 2026 Active, 2025 Inactive Finished Not Started In Progress
Mar 2026 Completes 2026 Course Finished Finished Finished

Joe — New hire (joins after cycle transition)

DateEvent2025 Course2026 CourseLP Status
Feb 2026 Added to LP audience Skipped (Inactive) Not Started In Progress
Apr 2026 Completes 2026 Course Skipped Finished Finished

Alex — Non-completer

DateEvent2025 Course2026 CourseLP Status
Mar 2025 Enrolled in LP, assigned 2025 Course In Progress In Progress
Dec 2025 End of year — 2025 Course not completed In Progress In Progress
Jan 2026 Admin transitions cycle: 2026 Active, 2025 Inactive In Progress (task remains) Not Started In Progress
Jul 2026 Still working on 2026, 2025 still open In Progress (open task) In Progress In Progress

Dana — Partial completer

DateEvent2025 Course2026 CourseLP Status
Mar 2025 Enrolled in LP, assigned 2025 Course In Progress In Progress
Dec 2025 End of year — 2025 Course not completed In Progress In Progress
Jan 2026 Admin transitions cycle: 2026 Active, 2025 Inactive In Progress (task remains) Not Started In Progress
Apr 2026 Completes 2026 Course In Progress (open task) Finished Finished
Dana's LP status is Finished even though her 2025 task is still open. LP completion is driven by Active components — since the only Active Course (2026) is complete, the LP is Finished. The lingering 2025 task belongs to an Inactive component and doesn't affect her standing.
Alex's 2025 task remains open — the admin controls the lifecycle manually via Active/Inactive. The 2025 task staying open is "do less harm." If more aggressive behavior is needed (cancel, revoke), it can be added as a future enhancement.

LP State at Each Stage

How the Learning Program looks at three points in time:

During 2025 (one Active Course)

ComponentStateSamAlexDana
Security Compliance 2025 Active Finished In Progress In Progress
LP Status Finished In Progress In Progress

After cycle transition (two Courses, one Active)

ComponentStateSamJoeAlexDana
Security Compliance 2025 Inactive Finished Skipped In Progress In Progress
Security Compliance 2026 Active Not Started Not Started Not Started Not Started
LP Status In Progress In Progress In Progress In Progress

After Sam, Joe, and Dana complete 2026

ComponentStateSamJoeDanaAlex
Security Compliance 2025 Inactive Finished Skipped In Progress In Progress
Security Compliance 2026 Active Finished Finished Finished In Progress
LP Status Finished Finished Finished In Progress
V1 capabilities illustrated: Active/Inactive toggle Dynamic LP progress Auto-assign on activation Use for next cycle (deep copy) Newcomer skip of Inactive Inactive components don't block LP completion