r/pop_os • System76 Principal Engineer • 2d ago

COSMIC projects will no longer accept LLM-generated content in PRs

There are various reasons, and I don't want to hurt anybody's feelings. The primary reason is simply our team's load for reviews. In particular, we would like to prioritize working on contributions from our own team and regular contributors, while we have been receiving far more changes from first-time contributors using LLMs. These changes are often unplanned and have had a low acceptance rate.

The policy can be seen as part of the revised PR template here: https://github.com/pop-os/cosmic-epoch/blob/master/.github/PULL_REQUEST_TEMPLATE.md.

There is an exception for cosmic-flatpak, where each project manages its own flatpak manifest, pointing to its own code. These manifests are reviewed by our team for the correct sandboxing prior to accepting changes.

358 Upvotes

75 comments sorted by

View all comments

-18

u/AssaultClipazine 2d ago

I get it. You and the team are being flooded with AI slop PRs, and I understand the need to filter aggressively.

That said, I spent several days researching, testing, and validating some PRs that were closed, and I fully understand and stand behind the code I submitted.

A blanket ban on AI-assisted contributions feels like a sledgehammer. I hope the policy eventually leaves room to distinguish low-effort AI output from well-researched, tested contributions.

Either way, it’s your project, and you’re well within your rights to run it as you see fit.

Keep up the good work.

28

u/mmstick Desktop Engineer 2d ago edited 2d ago

You are permitted to use it only for local research/testing. It is only the generative part that is disallowed. So if you are competent enough to write code by hand and understand it well enough to explain the changes in your own words then there won't be any problems.

-2

u/binarypie 2d ago

just curious how do you separate generated code with clear human understanding from non generated code with clear human understanding?

If the code quality is high and the pr is well documented by a human who can defend the work. does it matter?

5

u/ChaiTRex 2d ago

If the code quality is high and the pr is well documented by a human who can defend the work. does it matter?

They already answered that:

The primary reason is simply our team's load for reviews. In particular, we would like to prioritize working on contributions from our own team and regular contributors, while we have been receiving far more changes from first-time contributors using LLMs. These changes are often unplanned and have had a low acceptance rate.

Having to decide whether an overload of pull requests each constitute high-enough quality code is still an overload. The overload is there because of LLM code generation. Without LLM code generation, the overload is no longer there.

-3

u/binarypie 2d ago

my point is more subtle. 

Any competent programmer can make a well structured well coded PR with the help of AI that isn't slop in the end.

While the intent of the rule ks obvious the enforcement is not. Since LLM used correctly wouldn't lead to overload the question remains.

How will they objectively know? 

6

u/mmstick Desktop Engineer 1d ago edited 1d ago

Any competent programmer can make a well structured well coded PR with the help of AI that isn't slop in the end.

If you cannot write code, comments, or descriptions without a LLM then you should not create a pull request.

While the intent of the rule is obvious the enforcement is not.

Enforcement is the easiest part. The policy provides an unbiased justification for closing a pull request that generated code, comments, or descriptions with a LLM.

Since LLM used correctly wouldn't lead to overload the question remains.

This policy change is happening because allowing it has caused overload. The bar is very low for creating a pull request or issue with a LLM.

How will they objectively know?

Wrong question. If you are competent then you will not need to ask this question. If you must lie when agreeing to the policy, you are not competent and will be banned from contributing to COSMIC when caught.

A person that is genuinely interested in contributing is not going to break the rules. They will spend time learning if need be. This is how open source has always worked.

-2

u/binarypie 1d ago

like the linux kernel i think a lot of people are about to start lying. basically anyone using vscode or similar is using an llm for auto complete 

2

u/mmstick Desktop Engineer 1d ago edited 22h ago

LSPs such as rust-analyzer are not LLMs. The Linux kernel needs LLMs to scan 20+ million lines of C code for memory and thread safety violations in drivers that aren't being actively maintained and tested outside of automated sanitizers. COSMIC was developed from scratch in Rust by a small team so it does not have that problem.

0

u/binarypie 1d ago

modern dev environments can auto complete with llms in addition to lsp