Discussion Moderation
Overview
Discussion Moderation covers the instructor-side tools for managing course discussion forums — reviewing flagged posts, removing inappropriate content, marking answers as endorsed, pinning announcements, and configuring discussion settings.
Moderation tools are embedded within the `frontend-app-discussions` MFE and are visible only to users with course staff roles.
Current State (2026)
• Flagging and review: Learners can flag posts; instructors/TAs see flagged posts in a moderation queue
• Endorsement: Instructors can mark an answer as "endorsed" to signal it's correct/authoritative
• Pinning: Posts can be pinned to appear at the top of threads
• Staff posts: Instructors can mark posts as "question" or "discussion" types; staff posts are visually distinguished
• Discussion settings: Course-level settings for enabling/disabling discussions, selecting discussion providers
• TA role: Teaching assistants can be given moderation permissions without full instructor access
Architecture
• Moderation tools in MFE: `frontend-app-discussions` surfaces moderation actions via the discussions backend API
• Backend: Moderation state (flagged, endorsed, pinned) stored in the forum backend (now `forum` Python service; previously `cs_comments_service`)
• Permissions: Django role system (`CourseStaffRole`, `CourseTARole`) gates moderation actions
History
Origin
• Year introduced: ~2012–2013 (moderation launched with the original discussion system)
• Initial implementation: Moderation actions via the Ruby `cs_comments_service` backend
• Context: MOOC forums at scale (thousands of posts per course) required moderation tools for course staff to maintain quality
Key Milestones
Basic moderation (flagging, endorsement) in forum system
Moderation UI in `frontend-app-discussions`
Moderation ported to Python `forum` backend
Open Questions
- ?How did moderation work in the original Ruby forum system?
- ?What moderation workflows do course teams rely on most?
- ?How does the TA role permission model work for discussions specifically?
- ?What are the most common moderation challenges at MOOC scale?