Big and small free/open-source projects have been facing an avalanche of AI-generated patches lately. Some patches are more or less OK, others have convoluted, badly designed code. The net effect is that code review becomes more difficult, to the point where numerous projects give up and introduce some form of protection against AI slop.
The team started with a discussion on GitHub and had a further conversation at a recent bi-weekly dev call. Following that, Reqrefusion updated the contribution guidelines to include two new clauses around AI-generated code. Here they are:
- Contributions must meet existing quality standards. Raw AI output is not accepted under any circumstances. AI may be used only as an assistive tool; in all cases, the resulting content must be reviewed, validated, and justifiable by the contributor. The contributor should be able to explain design and code decisions, answer reviewers’ questions, and ensure that AI use does not waste reviewers’ time during review. That being said, the use of AI is not recommended under any circumstances or in any manner.
- The contributor provides reasonable assurance that the contribution does not infringe third-party copyrights or license terms.
All pull requests must meet these requirements.

4 responses to “Rules regarding AI-generated patches”
Excellent call. AI is a good assistive tool, but not a solution engine by any stretch of the imagination. We have been dealing with a similar problem with some clients- ones who think that now they have access to ChatGPT, that they are all of a sudden a highly credentialed engineer and can call into question every engineering decision we make on a project, forcing us to waste time explaining things.
Stand your ground, team…we stand with you.
“.. use of AI is not recommended under any circumstances or in any manner”.
That is simply unrealistic. Just about every dev and maintainer on the project, and indeed every project, is now flat out using AI. There were those that tried to stop the railways once ..
Wow, I’d love to meet a person who knows every single developer and maintainer in every project out there. What a life to live! 🙂
I think the key word is “recommended”.
Context matters. The full text makes it clear the developer can use AI but states the developer must be able to justify everything *they* put forward.
For example, a developer might get an AI to generate skeleton code to implement a mathematical algorithm… a coder who might be a gun at coding, but not full-bottle on the mathematics of bicubic splines.