Assign missions and role tracks, track cohort progress against due dates, and review submitted work.
Assign Work
Cohort membership is resolved when the board is read, not frozen when you assign —
a learner who picks that role later inherits the assignment. Leaving the due date
blank means no deadline; an assignment with no deadline never reads as overdue.
Assignments ({{ assignments | length }})
{% if assignments %}
Work
Target
Due
Progress
Status
Assigned by
{% for a in assignments %}
{{ a.label }}
{% if a.target_type == 'cohort' %}
Cohort: {{ roles.get(a.target_role, {}).get('label', a.target_role or 'all') }}
({{ a.target_count }})
{% else %}
{% for t in a.targets %}
{{ t.display_name }}
{% else %}
learner removed
{% endfor %}
{% endif %}
{{ (a.due_at or '—')[:10] }}
{{ a.complete_count }}/{{ a.target_count }}
{% if a.status == 'cancelled' %}
CANCELLED
{% elif a.target_count and a.complete_count >= a.target_count %}
COMPLETE
{% elif a.overdue %}
OVERDUE
{% else %}
OPEN
{% endif %}
{{ a.assigned_by }}
{% if a.status == 'open' %}
{% endif %}
{% endfor %}
{% else %}
Nothing assigned yet. Use the form above to assign a mission or a role track.