Pull Request lottery

Hi everybody! :slight_smile:

####Problem
On the sprint we looked for solutions how to cope with the ~130 Pull Requests floating around in the Neos project.

####Solution
One suggestion was to randomly distribute the Pull Request among the core team members, so there is at least one person responsible for each PR. Everybody gets an equal number of PRs. The person is not obligated to review the PR by oneself (since this is not even possible because of the wide knowledge spectrum the project has) but the person is obliged to keep an eye on the PR and find someone who might be suitable as a reviewer.

####Dealing with stale PRs
If the PR is stuck for a different reason (like lack of feedback from the actual maintainer), it would be best to try to reach the person by pinging (or if that has no effect, maybe a private message on Slack).

If there is absolutely no response there are two options:

  1. Either adopt the PR and open a new one (or find someone fitting as a reviewer who could do that)

  2. Delete the PR if the feature is not generally considered important enough to be adopted (but this
    must be a consensus decision of at least two core members, nobody should close PRs without consulting others).

####Timeline
We should discuss when it’s actually a good time to start the lottery. I think we should wait at least until the major release is out, since we should try to focus our resources on that at the moment.

####Realization
Wilhelm and me volunteered to take care of the technical and organisational side of the lottery.

The lottery code that randomly distributes the PRs will be kept extremely simple, and there will be no “complexity” algorithm included since this is merely impossible to do (going for numbers of changed line is not a real factor either. It could be a 10 line change within a complex topic, or just 500 lines of string replacement within doc blocks). Furthermore, like said above the person is not responsible for “solving” the open PR but just has to look out that it won’t go stale (or revive if necessary).

In my opinion this could go very well hand-in-hand with:

I do not recall if we decided to have a vote on this, or if this was already a sprint decision. Maybe someone who remembers can comment on that.

1 Like