-
Notifications
You must be signed in to change notification settings - Fork 6
epic: Implement enrollment system for course access control #17
Copy link
Copy link
Closed
Labels
Description
What is being done
Create enrollment table and API to manage student course enrollments.
Why it's needed
Multiple TODOs reference missing enrollment system blocking proper permission checks. Currently students cannot access course details and permission validation is incomplete.
How or initial approach
- Create Enrollment model (user_id, course_id, enrolled_at)
- Add enrollment CRUD API endpoints
- Update course GET endpoints to check enrollment for students
- Update assignment list endpoint to check enrollment
- Update artifact permission system to verify enrollment
- Create database migration
Acceptance Criteria
- Enrollment table exists with proper relationships
- API allows instructors/admins to enroll students in courses
- Students can view courses they're enrolled in
- Students can view assignments for enrolled courses
- Artifact permissions respect enrollment
- Tests verify enrollment-based access control
Files: src/fair_platform/backend/api/routers/courses.py lines 92, 127; assignments.py line 167; artifact_manager.py line 616
Estimate: L
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Projects
Status
Done