nodejs / nodejs/core-validate-commit

signed-off-by: skip rule when PR-URL trailer is present not only Backport-PR-URL?

Open Beginner friendly
#149 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
55
Forks
62
Avg merge
4d 9h
Merged PRs (30d)
1

Description

The signed-off-by rule currently skips backports identified by a Backport-PR-URL: trailer. This works for already-landed backport commits, but fails for backport PRs at review time because the commit-queue only adds Backport-PR-URL: at land time. even though the contributing doc explicitly exempts backports.

Rule 1 says:
https://github.com/nodejs/node/blob/e15f90559bc62b1e9a8296f1fc8654f5be261baa/doc/contributing/pull-requests.md?plain=1#L207-L208

Rule 2 says:
https://github.com/nodejs/node/blob/e15f90559bc62b1e9a8296f1fc8654f5be261baa/doc/contributing/backporting-to-release-lines.md?plain=1#L77

The lint (in core-validate-commit) says: if no Signed-off-by: AND no Backport-PR-URL: (which is added by the commit-queue), fail.

Suggestion

Treat PR-URL: trailer as the same kind of skip signal as Backport-PR-URL:. Both trailers are added by the commit-queue at land time they're never contributor-authored. Their presence on a commit being validated is a strong heuristic that the commit was either cherry-picked from a previously-landed PR (the dominant case, all backports), or is itself a previously-landed commit having its message re-validated.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the signed-off-by rule in core-validate-commit and trace its existing handling of the Backport-PR-URL: trailer. Check the validation tests, if present, and confirm that commits with PR-URL: are accepted without Signed-off-by while other commits retain the current requirement.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
tooling
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.