-
-
Notifications
You must be signed in to change notification settings - Fork 33.1k
Description
Problem
There are guidelines regarding waiting time in PRs:
node/doc/contributing/pull-requests.md
Lines 421 to 432 in c1ccade
### Respect the minimum wait time for comments | |
There is a minimum waiting time which we try to respect for non-trivial | |
changes, so that people who may have important input in such a distributed | |
project are able to respond. | |
For non-trivial changes, pull requests must be left open for at least 48 hours. | |
Sometimes changes take far longer to review, or need more specialized review | |
from subject-matter experts. When in doubt, do not rush. | |
Trivial changes, typically limited to small formatting changes or fixes to | |
documentation, may be landed within the minimum 48 hour window. |
node/doc/contributing/collaborator-guide.md
Lines 179 to 181 in c1ccade
### Waiting for approvals | |
Before landing pull requests, allow 48 hours for input from other collaborators. |
node/doc/contributing/pull-requests.md
Lines 344 to 352 in c1ccade
### Step 10: Landing | |
In order to land, a pull request needs to be reviewed and [approved][] by | |
at least two Node.js Collaborators (one collaborator approval is enough if the | |
pull request has been open for more than 7 days) and pass a | |
[CI (Continuous Integration) test run][]. After that, as long as there are no | |
objections from other contributors, the pull request can be merged. If you find | |
your pull request waiting longer than you expect, see the | |
[notes about the waiting time](#waiting-until-the-pull-request-gets-landed). |
However, the time is always calculated since PR creation and not since last pushed commits (even for significant changes and/or force-pushes).
This effectively creates a situation where a single collaborator approval (and a single green CI for needs-ci
Somewhat related: nodejs/node-core-utils#677
Possible solutions
- Make it strict, always counting the 48/168 hours from last push rather than initial open date.
- Make it semi-strict, e.g. counting ~24 hours from last push if PR passes open date limit.
- Make doc-only addition to guideline, asking to wait ~24 hours if anything non-trivial was pushed.
- Keep it as is and rely on common sense.
Doc-only option looks best to me since it won't slow down landing trivial fixups, but it's also always possible to fast-track them or land manually. Maybe there are different opinions on this.
Just to clarify, this issue is not a security concern nor a loophole for potential bad actors etc. The minimum waiting time is supposed to allow anyone to provide their input (including suggestions and explicit blocks), and not having it for subsequent commits sometimes nullifies this ability.