Description
Currently implementation ranking is (potentially) done with every call to ApiPerformTest, but only when certain conditions are met. In particular, it happens when the call requests test results that cover all attached implementations and testers, which only happens when the function has been updated.
Concerns:
- A nontrivial change to an implementation or a tester could warrant re-ranking, but it won't happen.
- Currently the input values passed to ApiPerformTest specify a superset of attached implementations and testers, but it's possible the call could be changed in such a way that implementation ranking would never happen.
Also for consideration: ranking could be done by ApiPerformTest calls that are made specifically for the purpose of ranking, so they wouldn't ever need to be changed. In that case, by reinstating the updateImplementationRanking parameter, we could turn off ranking in the existing call to ApiPerformTest, which potentially would eliminate some ranking that doesn't need to happen.
Related to T371716.
Desired behavior/Acceptance criteria
- We should have a more precise approach in which implementation ranking happens when it's clearly warranted, and only then.
Completion checklist
- Before closing this task, review one by one the checklist available here: https://www.mediawiki.org/wiki/Abstract_Wikipedia_team/Definition_of_Done#Front-end_Task/Bug_Completion_Checklist