# REP implementation vs PRD (5.5)

High-level map from `setup/PRD.md` subprocesses to code. Update when features ship.

| PRD area | Location | Status (Apr 2026) |
|----------|----------|-------------------|
| SP1 Registration/profile | `apps.core.authentication` | Partial; remains primarily outside `apps/rep` |
| SP2 Course/programme | `apps/rep/courses` | Complete for roadmap scope: RIMS `GrantCall` link, nested `Module.parent`, publish review FSM, `CourseRevision`, expanded completion rules, template `promoted_to_site_library` |
| SP3 Enrolment | `apps/rep/courses/services.py`, `api/v1/rep.py` | Complete for roadmap scope: waitlist/prerequisites/cohorts, withdraw+promote, RIMS-trigger enrol API, enrolment PDF/CSV and outbox |
| SP4 Delivery | `apps/rep/content`, `apps/rep/forums`, `apps/rep/surveys` | Complete for roadmap scope: lesson gates + LTI URL, forum subscriptions/attachments/flags + moderation, surveys delivery; external BBB/SCORM runtime still callback-based |
| SP5 Assessment | `apps/rep/assessments` | Complete for roadmap scope: quiz settings (time/shuffle/feedback), assignments, peer review MVP, weighted gradebook, overrides, learner gradebook |
| SP6 Certificates | `apps/rep/courses` | Complete for roadmap scope: completion rules engine, certificate workflow/library selector, persisted revoke reason, issue/revoke outbox events |
| SP7 Networking | `apps/rep/networking` | Complete for roadmap scope: connections, DMs, groups, mentorship MVP, privacy settings, rule-based discovery recommendations |
| SP8 Career | `apps/rep/career` | Complete for roadmap scope: resource library + access logs, employer listing approval workflow, CV references, expiry automation, alumni handoff settings/outbox fallback |
| SP9 Personalisation | `apps/rep/personalisation`, `apps/rep/content` | Complete for roadmap scope: recommendation dismiss + recompute preservation, adaptive `LessonBranchRule` routing, URL wiring |
| SP10 Analytics | `apps/rep/analytics`, `apps/rep/courses/tasks.py` | Complete for roadmap scope: platform dashboard, programme/beneficiary summaries, drop-off analysis, async `ReportJob`, CSV/XLSX/PDF exports, scheduled MEL payload dump |
| Integrations/API | `IntegrationOutbox`, `apps/rep/courses/receivers.py`, `api/v1/rep.py`, `api/v1/rep_auth.py` | Complete for roadmap scope: signal-driven outbox contracts, alumni webhook fallback/signing, REP key auth, `/api/rep/v1` alias, throttled RIMS enrol + LTI/SCORM completion callbacks |
