Commit graph

34 commits

Author SHA1 Message Date
Paul Selkirk c718fedb6c
feat: Allow review rejections to be undone (#6312)
* feat: Allow reviewer to accept a review they're previously rejected

* feat: Add a reviewer who has previously rejected a review to the list of suggested reviewers.

This largely un-does d105f8b, at the request of at least one team secretary.

* fix: Went a little overboard on the previous commit

one_assignment still has to exclude reviewers who rejected the assignment,
or they could end up being the suggested reviewer.

* fix: Actually do the assignment

* fix: If there's an existing assignment, don't create a new one

* style: Restructure conditional for clarity

* test: Add test cases for accepting or assigning a review assignment after rejecting it
2023-09-27 08:57:34 -05:00
Tero Kivinen 14b4f82239
fix: review refactoring issue
fixes #5447
2023-07-23 09:58:01 -07:00
Jennifer Richards 47e2b0b027
fix: Prevent use of FK relation before review request is saved 2023-05-18 15:18:02 -03:00
Robert Sparks f9322391dd
fix: change trac.ietf.org links to what they redirect to now (#5651) 2023-05-18 08:31:54 -05:00
Tero Kivinen d5bae45799
fix: Do not add user to the top of queue after reject (fixes #4505) (#5427)
* fix: Do not add user to the top of queue after reject (fixes #4505)
Added a checkbox in the reject review dialog to ask whether user
wants to be added to the top of the queue or not. Default is off.

* Do not change request_assignment_next if wants_to_be_next is not True.
Set the request_assignment_next also in LeastRecentlyUsedReviewerQueuePolicy
so it can be used to override the assignment policy rules (i.e., if
someone has once per month, but he rejects review with wants_to_be_next set
to true, he will get new assignment immediately, not after one month).

* Added wants_to_be_next to test cases too.

* Fixed test function prototypes, they can't have any parameters, only
self. Added test cases for test_return_reviewer_to_rotation_top both
for RotateAlphabeticallyReviewerQueuePolicyTest and
LeastRecentlyUsedReviewerQueuePolicyTest.
2023-03-30 08:34:08 +09:00
Robert Sparks cd748cd760 Update internal references to trac.tools.ietf.org to point to trac.ietf.org. Remove several links into tools.ietf.org. Commit ready for merge.
- Legacy-Id: 19422
2021-10-13 21:43:44 +00:00
Jennifer Richards 92c9f856a4 Refactor reviewer queue policy handling of "skip" setting. Fixes #3038. Commit ready for merge.
- Legacy-Id: 18833
2021-02-16 19:31:50 +00:00
Henrik Levkowetz a1b1a919ab Merged in [18373] from mark@painless-security.com:
Filter out reviewers who have rejected reviewing this document in the past from the list of suggested reviewers.  Fixes #2996.
 - Legacy-Id: 18448
Note: SVN reference [18373] has been migrated to Git commit d105f8ba5b
2020-08-31 11:21:07 +00:00
Mark J. Donnelly d105f8ba5b Filter out reviewers who have rejected reviewing this document in the past from the list of suggested reviewers. Fixes #2996. Commit ready for merge.
- Legacy-Id: 18373
2020-08-13 15:03:54 +00:00
Henrik Levkowetz 726fcbf27d Removed all __future__ imports.
- Legacy-Id: 17391
2020-03-05 23:53:42 +00:00
Henrik Levkowetz e9a37d8ac8 Removed six.text_type(), changed six.moves.urllib to plain urllib, and removed now unused six imports.
- Legacy-Id: 17385
2020-03-05 14:41:41 +00:00
Henrik Levkowetz fcb6806d17 Merged in work from sasha@dashcare.nl on Review Queue Managemnt:
This abstracts queue management, making it possible to implement different
policies for each team. It provides two concrete policies:
RotateAlphabeticallyReviewerQueuePolicy, which rotates an alphabetically
ordered reviewer list with consideration for skip indications, and is the
default policy; and LeastRecentlyUsedReviewerQueuePolicy, a simple
least-recently-used policy.  Also see issues #2721 and #2656.
 - Legacy-Id: 17121
2019-12-04 23:02:52 +00:00
Sasha Romijn 10a7bee637 Merge reviewer-queue-management on top of 6.111.1.dev0
- Legacy-Id: 17094
2019-11-22 12:35:28 +00:00
Sasha Romijn b64066b742 Fix LeastRecentlyUsed policy ordering.
- Legacy-Id: 17092
2019-11-22 11:00:58 +00:00
Sasha Romijn 384c0ac7af Improve LeastRecentlyUsed performance with select_related() fix
- Legacy-Id: 17091
2019-11-22 10:05:51 +00:00
Sasha Romijn 6bf7d15b70 Add a limit to the update_policy_state_for_assignment loop to prevent
infinite loops, e.g. when a team has only a single reviewer.
 - Legacy-Id: 17087
2019-11-21 12:37:02 +00:00
Sasha Romijn 084978e105 Fix issue where reviewers that left the team would be included in LeastRecentlyUsed
- Legacy-Id: 17086
2019-11-21 11:24:33 +00:00
Sasha Romijn 3db8a0f39d Fix issue where queue might not advance correctly while managing
unassigned reviews, when some reviewers have a skip count.
 - Legacy-Id: 17060
2019-11-19 11:53:12 +00:00
Sasha Romijn b1eb2643f0 Cleanup. Branch ready for merge. (see email)
- Legacy-Id: 17059
2019-11-19 11:14:29 +00:00
Sasha Romijn 0c0980c641 Fix #2420 - Add reviewer back to top of the queue after rejected/withdrawn reviews.
- Legacy-Id: 17058
2019-11-19 10:57:56 +00:00
Sasha Romijn 8bb6955d47 Fix #2418 - Account for previous rejected reviews in recommended assignment order
- Legacy-Id: 17053
2019-11-18 19:50:33 +00:00
Sasha Romijn abedd2d970 Add support for setting reviewer queue policies per team.
- Legacy-Id: 17052
2019-11-18 17:29:25 +00:00
Sasha Romijn 57ec2b3ef8 Add LeastRecentlyUsed reviewer queue policy.
- Legacy-Id: 17049
2019-11-18 14:47:45 +00:00
Sasha Romijn 554a839864 Fix #2336 - Add "select me next for an assignment".
Reviewers can set this flag in their reviewer settings, which triggers
a mail to be sent to the secretary. They are then kept on top of the
recommended assignment order. This flag is automatically reset when any
assignment is made to the reviewer.
 - Legacy-Id: 17048
2019-11-18 12:30:11 +00:00
Sasha Romijn e188da5214 Remove development print statements and rename policy.
This should now be a finished implementation of
https://trac.tools.ietf.org/tools/ietfdb/wiki/ReviewerQueuePolicy
except for missing LeastRecentlyUsed.
 - Legacy-Id: 17047
2019-11-18 10:40:59 +00:00
Sasha Romijn c5ecfab29f Account for previous reviews of ancestor documents (see [16981])
- Legacy-Id: 17046
Note: SVN reference [16981] has been migrated to Git commit f740adcfc1
2019-11-18 10:27:18 +00:00
Sasha Romijn c36fcdc5a7 Update update_policy_state_for_assignment for new policies, fix tests,
fix some other minor things.
 - Legacy-Id: 17023
2019-11-13 14:39:42 +00:00
Sasha Romijn c8812c7193 Account for 'canfinish' unavailabilities.
- Legacy-Id: 16999
2019-11-12 12:11:52 +00:00
Sasha Romijn 1c84e3c363 Add additional tests for queue policies and fix unused import.
- Legacy-Id: 16990
2019-11-11 16:32:49 +00:00
Sasha Romijn 6b85d5aff1 - Remove consideration of unavailability from ranking for recommended
assignment order, as it is obsolete
- Add test for recommended assignment order
 - Legacy-Id: 16989
2019-11-11 16:05:11 +00:00
Sasha Romijn ce812a3a4f - Make skipping unavailable reviews the default, except for the
reviewer_overview page.
- Make default_reviewer_rotation_list use a consistent return type
 - Legacy-Id: 16986
2019-11-11 14:47:37 +00:00
Sasha Romijn b5a31c3c6a Update some terminology and docstrings.
- Legacy-Id: 16983
2019-11-11 12:31:16 +00:00
Sasha Romijn e518824a69 Initial refactoring of the current reviewer assignment code.
- Legacy-Id: 16961
2019-11-05 16:39:31 +00:00
Sasha Romijn eab14ea1c5 Early work to extract reviewer policy from review/utils.py.
- Legacy-Id: 16950
2019-10-31 15:01:14 +00:00