Skip to content

Epic: Committee Relationship System #94

@smalex-z

Description

@smalex-z

This is the Epic for the Committee Relationship System!

Problem Statement
Currently, ACM's membership portal has no formal committee structure in the database. Committees are represented as unvalidated strings on events, and users have no way to associate themselves with committees or display committee affiliations on their profiles. This creates several issues:

  • No data integrity - Committee names are free-text, leading to typos and inconsistencies
  • Missing functionality - Users cannot indicate which committees they're part of
  • Poor discoverability - No way to find members by committee or filter content by committee
  • Limited engagement - Committee membership isn't recognized or displayed in the system

Problem Statement 2
Currently, ACM has only two roles: STANDARD (members) and ADMIN (full access) (and technically SUPERUSER, which is assigned to acm@ucla.edu. Committee officers have no dedicated role, which means:

  • Officers cannot manage events for their own committees without full admin access
  • No way to restrict officers to only their committee's content
  • Officers either have no permissions or ALL permissions (security risk)
  • Cannot track which officers belong to which committees

Solution Overview

  1. Add OFFICER role with committee-scoped permissions
  2. Associate officers with specific committees (can be multiple)
  3. Officers can only create/edit/delete events for their assigned committees
  4. Officers can view RSVPs and attendees for their committee's events
  5. Keep committees as STRING field (validated against approved list)

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions