RealDevSquad / RealDevSquad/website-backend

Improvement of task assignment feature

Open
#763 1 comment 0 reactions 1 assignee View on GitHub

@vinayak-trivedi is already working on this.

Since Oct 26, 2022.

Dominant language
JavaScript
Stars
74
Forks
276
Avg merge
1d 26m
Merged PRs (30d)
14

Description

  • Current task assignment flow

Copy of old_flow drawio

  • There are certain limitations in assigning the tasks in this way, which are listed below:
    • it runs only when the user completes a task, so if a user is not assigned a task, the task will not be automatically assigned to them
    • and even if they are assigned a task then also there is no guarantee that they will be assigned a task once they complete the given task, as there might be no task matching their skill level
    • one more thing is that the user might not want a task to get assigned to them immediately, so there should be an option provided to the user that will allow them to choose if they want to get assigned a task or not
Suggested solutions
  • For the assignment of task, we give the user an option when they are marking the task as completed by making it 100% completed, we show them a modal which tells them that You are marking this task as 100% completed and a new task will be assigned to you, there will be two buttons available, one will be Proceed, the other one will be Do not assign me a task and proceed
  • If they click on proceed then the assignTask middleware will run and a task will get assigned to them on the basis of their skill if it's available, if the task is not assigned to them, then we change the status of those users to idle
  • Next time when the superuser is creating a task, they get those users as suggested user in the assignee if their skill level matches the task. issue for this: https://github.com/Real-Dev-Squad/website-dashboard/issues/241
  • There should be a fetch task button available for the users always, so that if they have chosen the option to not get a task before but now want a task they can get assigned a new task automatically, if there is any, by clicking on that button

The new flow would look something like the following

new_flow drawio

Contributor guide

Open the contributing guide

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.