Northeastern-Electric-Racing / Northeastern-Electric-Racing/FinishLine

User Role Revamp

Open
#3,920 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

back-end difficult maintenance
Dominant language
TypeScript
Stars
36
Forks
9
Avg merge
4d 21h
Merged PRs (30d)
11

Description

Description

Currently, admins have to add users as members (one at a time) and then add them as members of their team. Similarly, if they want to add leads or heads to a team, they must first grant them the required role (they won't even show up in the multi-select before this happens). We need to make this much more seamless and less tedious.

Acceptance Criteria
  • Users can gain required role as they are given a "team role" (member/lead/head)
  • The current rules regarding role escalation apply (i.e. if i don't have permission to upgrade someone's role, they will still be filtered out as an option in the Team form
  • Multiple users can be added to a team at once (with their roles updated, as needed)
Proposed Solution

If a user is able to promote users, don't filter out users in the member/lead/head fields on the Team form. Instead, promote users as needed if they're added as members/leads/heads/ on a team.

Mocks

No response

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Team form and the existing user-role escalation and filtering rules. Trace how team members, leads, and heads are selected and updated, then verify that permitted users can be added in bulk with the required role changes while unauthorized promotions remain unavailable.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
authorization, full-stack
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.