~ | | Summary of what this extension would do: When a user makes a review request,
|
~ | | if they enable this extension then they can get a suggestion about a reviewer
|
~ | | that would be the best to review the submitted code, given the files that
|
~ | | this user would like to review. |
~ | |
|
| ~ | This extension would suggest reviewers for a current review request. It keeps
|
| ~ | track of all previous reviews and suggests a username of someone who has
|
| ~ | reviewed something similar in the past. The extension uses an ML model called
|
| ~ | kNN algorithm by calculating the distance between past reviews and the current
|
| ~ | review request. |
- | | What I have done:
|
- | | Created an extension folder called suggested_reviewers_extension and added an
|
- | | extension.py that defines the basis of the extension. The file also creates
|
- | | a JSExtension subclass that stores the right reviewer(s) in a variable that was
|
- | | calculated from the models.py file so that the template.HTML can be dynamic
|
- | | depending on who is meant to review the request. |
- | |
|
- | | I also created a template.HTML class that displays the suggested reviewer or on
|
- | | default, displays that there is no one to suggest. Also, the template gets the DOM
|
- | | element of the review-request-details and attaches the suggested_review div to that
|
- | | element. |
- | |
|
- | | I'm working on the models.py file now to correctly return the right reviewer based
|
- | | on the right weights and right variables. |