Skip to content

Add content for reviewing PRs in the CONTRIBUTING.md#36686

Closed
lunny wants to merge 4 commits into
go-gitea:mainfrom
lunny:lunny/improve_contribution
Closed

Add content for reviewing PRs in the CONTRIBUTING.md#36686
lunny wants to merge 4 commits into
go-gitea:mainfrom
lunny:lunny/improve_contribution

Conversation

@lunny
Copy link
Copy Markdown
Member

@lunny lunny commented Feb 20, 2026

No description provided.

@lunny lunny added the type/docs This PR mainly updates/creates documentation label Feb 20, 2026
@GiteaBot GiteaBot added the lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. label Feb 20, 2026
@GiteaBot GiteaBot added lgtm/need 1 This PR needs approval from one additional maintainer to be merged. and removed lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. labels Feb 22, 2026
@wxiaoguang
Copy link
Copy Markdown
Contributor

Need to highlight this:

Use real world cases or examples to answer the review questions. Don't imagine or guess.

@lunny
Copy link
Copy Markdown
Member Author

lunny commented Feb 22, 2026

[1b918d8](/go-gitea/gitea/pull/36686/commits/1b918d8289ee695cdca7b72d0108ed8eee819a57)

Added at 1b918d8

@wxiaoguang
Copy link
Copy Markdown
Contributor

wxiaoguang commented Feb 23, 2026

What if some people keep submitting low-quality code, or don't answer questions directly don't read code but just argue for non-existing problems?

@silverwind
Copy link
Copy Markdown
Member

I don't think it should go into too much detail. Just picture basic review etiquette.

@wxiaoguang
Copy link
Copy Markdown
Contributor

wxiaoguang commented Feb 24, 2026

Ridiculous

Take a look at what you are saying and what you are doing. #36660 (comment)

image
image

@silverwind
Copy link
Copy Markdown
Member

Errors happen, but it's still correct to document how it should be.

@wxiaoguang
Copy link
Copy Markdown
Contributor

Errors happen, but it's still correct to document how it should be.

If you still think it's fine to keep errors happening again and again and again, go ahead, introduce more and more rubbish contents.

Maybe you should document that: nobody need to care about correctness, nobody should fix wrong contents. Do whatever you want in this project, no need to take responsibility for your actions.

image image

@silverwind
Copy link
Copy Markdown
Member

As I see it, commit descriptions are rather unimportant. They will never capture all the discussions and decisions that happened during review.

So I suggest we just delete most if not all of the PR description content upon merge, then nothing can be wrong or outdated. Anyone who wants more context should read the PR discussions instead.

@lunny
Copy link
Copy Markdown
Member Author

lunny commented Mar 1, 2026

As I see it, commit descriptions are rather unimportant. They will never capture all the discussions and decisions that happened during review.

So I suggest we just delete most if not all of the PR description content upon merge, then nothing can be wrong or outdated. Anyone who wants more context should read the PR discussions instead.

I don’t think so. I frequently use the git blame feature, which shows the last commit for each line of code along with its commit message. It’s very helpful for understanding why a particular change was made. I’d rather rely on that directly in the editor than go through every related PR line by line.

@wxiaoguang
Copy link
Copy Markdown
Contributor

wxiaoguang commented Mar 2, 2026

As I see it, commit descriptions are rather unimportant. They will never capture all the discussions and decisions that happened during review.
So I suggest we just delete most if not all of the PR description content upon merge, then nothing can be wrong or outdated. Anyone who wants more context should read the PR discussions instead.

I don’t think so. I frequently use the git blame feature, which shows the last commit for each line of code along with its commit message. It’s very helpful for understanding why a particular change was made. I’d rather rely on that directly in the editor than go through every related PR line by line.

Then it is more ridiculous. You said "it is very helpful" and you "rely on that directly". But, you never really paid attention to the messages, most of the PR messages merged by you are totally a mess. (I and other maintainers have pointed out the problem not only one time)

Copy link
Copy Markdown
Member

@bircni bircni left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ensure the PR summary accurately reflects the changes

Image

Comment thread CONTRIBUTING.md

### Reviewing PRs

Maintainers are encouraged to review pull requests in areas where they have expertise or particular interest. When reviewing, please keep the following principles in mind:
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think its hard to read
The bullets are inconsistent in scope: some address reviewers, one addresses PR authors. Separating them or making the audience explicit per bullet would help.

Comment thread CONTRIBUTING.md

- Focus feedback on the issue itself and avoid comments about the contributor's abilities.

- If you request changes (i.e., block a PR), you must provide a clear rationale and, whenever possible, outline a concrete path to resolution. Reviews that do not include sufficient explanation are not constructive and may be disregarded.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Who decides that a Review is disregarded?
Who decides if an explanation is sufficient?

Comment thread CONTRIBUTING.md

- Provide actionable feedback. Clearly explain what needs to be changed and why, and distinguish between required changes and optional suggestions.

- When responding to reviewer questions, use real-world cases or examples and avoid speculation.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good intent to tell PR authors how to respond to reviewer feedback, but the surrounding bullets all address reviewers...

Comment thread CONTRIBUTING.md

- When responding to reviewer questions, use real-world cases or examples and avoid speculation.

- Focus feedback on the issue itself and avoid comments about the contributor's abilities.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Focus feedback on the issue itself and avoid comments about the contributor's abilities.
- Focus on the code, not the person. (be friendly 😄 )

Copy link
Copy Markdown
Member

@silverwind silverwind Apr 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wouldn't add emojis and I prefer to avoid parens, especially malformed ones like this one (the . should be after parens).

Comment thread CONTRIBUTING.md

- If you request changes (i.e., block a PR), you must provide a clear rationale and, whenever possible, outline a concrete path to resolution. Reviews that do not include sufficient explanation are not constructive and may be disregarded.

- Only approve a PR when you are fully satisfied with its current state.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good to tie this strict but we should not have "rubberstamp" approvals which you want to stop by that right?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Or, clearly declare that this is a rubberstamp, and explain why the the rubberstamp is used.

TBH, rubberstamp is not completely unacceptable to me. Sometimes I also do rubberstamp approval, but I will explain: "I haven't test", or "looks good but I don't need/understand it"

Also, I think it's better suggest authors and approvers to keep eyes on related bug reports in the future, indeed, if a bug is related to a PR, the authors and approvers should know more (and be responsible)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This repo could not work without rubberstamp reviews, they are essential to get stuff moving because most reviewers don't care enough to give every PR a in-depth review and that's absolutely fine imho.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I am the only poor man to help to rewrite every problematic PR.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I should only put a "blocked" label from now on, unless the author can completely make it right, I won't spend any time on helping writing code.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wouldn't be overly strict on every PR. If it works, looks reasonable and does not cause regression, I approve it. Wasting time into every PR just because it isn't absolutely perfect is counter-productive imho.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's less about being perfect and more about being decent enough. Someone has to keep the mess maintainable so 10 PRs down the line we won't have to redo the feature entirely with migrations in DB since someone designed it badly at the start and it looked okay at the time with no forward thinking.

On top of that, just because something looks good and seems not to break anything does not mean it won't. It's the reviewers task to catch it before it lands as it's usually not the PR author who worked in the repo for a long time and understands how components cross and interact.

I don't find rubberstamps good as it makes the reviews feel like a waste of time - in the end author has no idea if the code is good, reviewer looked and deemed it fine so ok from me and bad permissions check on line 44 is excited to land on main.
The only way rubberstamping can work well IMO is with gerrit system where you can sort of indicate level of review you did.
Are they avoidable here? Probably not, I did +1 ones too few times but a comment won't hurt (which I'll do from now).

Copy link
Copy Markdown
Member

@silverwind silverwind Apr 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

redo the feature entirely with migrations in DB since someone designed it badly

Yes, "Auto accept maintainer edit" is such a misdesigned feature. Should have been enabled from the start. Now only a migration can fix it but we are too afraid of changing that for existing repos.

I don't find rubberstamps good

There's just not enough motivated reviewers to do without rubberstamps. If we had 10 active reviewers, sure, every PR could get insightful reviews and at some point one can trust a regular maintainer to not produce crap.

@GiteaBot GiteaBot added lgtm/blocked A maintainer has reservations with the PR and thus it cannot be merged and removed lgtm/need 1 This PR needs approval from one additional maintainer to be merged. labels Apr 2, 2026
@lunny lunny closed this Apr 4, 2026
@lunny lunny deleted the lunny/improve_contribution branch April 4, 2026 20:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm/blocked A maintainer has reservations with the PR and thus it cannot be merged type/docs This PR mainly updates/creates documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants