Aug. 5, 2026 · Jynn Nelson
Recently, five teams successful the Rust project adopted a policy that I primitively authored, governing really Large Language Models tin beryllium utilized erstwhile contributing to the rust-lang/rust monorepo. Notably, the caller argumentation is not an charismatic stance connected LLMs, and does not use everyplace successful the Rust project. I wrote it for a very circumstantial purpose, described below.
This station talks astir why we created that policy, what it says, and really this will impact contributors.
The argumentation affects the pursuing groups of people:
- People who reappraisal aliases mean PRs connected rust-lang/rust.
- People who writer PRs pinch LLM-generated codification connected rust-lang/rust.
- People who observe issues utilizing LLMs and station them connected rust-lang/rust.
- People who constitute issues aliases comments that straight quote an LLM connected rust-lang/rust.
If you are not successful 1 of those groups, you don't person to alteration thing astir really you work.
Why was this argumentation created?
While the Rust task is simply a postulation of method artifacts, it is besides a community of group who activity together to build, maintain, and widen those artifacts. When we talk astir "contributing to the Rust project", we partially mean activity connected those artifacts, but we besides mean joining that organization and collaborating pinch the group already there.
Even earlier this argumentation was created, group were utilizing LLMs to lend to rust-lang/rust. Some of those uses respected our community: translating messages to English truthful group could draught them successful their autochthonal language; finding mediocre diagnostics for codification snippets that caller contributors to Rust mightiness write; analyzing RFCs to spot if they were missing a chat of different parts of the connection that could impact the design. Some of those uses, sometimes unintentionally, did not.
I've seen LLMs causing 3 main issues for our community:
- Polished method products nary longer bespeak effort and understanding.
- Making codification easier to constitute exacerbates our existing issues pinch reappraisal bandwidth.
- People mechanically copy-pasting to and from an LLM is simply a discarded of our time.
As clip went on, these issues grew and grew, until we had to create dedicated channels and moderation argumentation for really to woody pinch them. However, those channels activity against our goals of being transparent and welcoming, because caller contributors person nary thought what the rules are.
The caller argumentation formalizes those rules publicly, truthful that caller contributors cognize really to subordinate our organization without getting their PRs closed for reasons they don't understand, and truthful that existing reviewers tin easy constituent to the rules arsenic an actionable logic erstwhile closing PRs that don't travel them.
Technical products nary longer bespeak effort
It utilized to beryllium that if an unfastened root task sewage a polished, well-tested, elaborate PR, that indicated that location was personification connected the different extremity who had put time, effort, and knowing into the PR. That influenced Rust's civilization successful respective ways:
- We are mostly reluctant to adjacent PRs, since they correspond personification else's difficult work.
- Our process emphasizes incremental discussions, wherever PRs are allowed to alteration existing creation if we observe caller facts during creation aliases review.
- We dainty PRs arsenic an denotation that personification is willing successful joining our organization and being mentored to activity connected early PRs.
With LLMs, nary of these signals are reliable. Polished PRs nary longer bespeak effort; authors of polished PRs nary longer needfully understand their code—and successful the lawsuit of autonomous agents, location is nary longer personification connected the different extremity astatine all; and because it's go truthful overmuch easier to constitute code, a polished PR nary longer indicates that personification is apt to instrumentality astir for the agelong term.
Making codification easier to constitute causes reappraisal issues
At the clip of writing, location are 1,281 unfastened PRs to rust-lang/rust. This represents a staggering magnitude of clip invested by some authors and reviewers. We person agelong had the problem that location are much group who want to constitute codification than group consenting to reappraisal it. With the advent of LLMs, this problem only gets worse.
Most of the activity of reviewing is not simply catching bugs. A awesome woody of it is deciding whether this guidance is simply a bully approach, whether the PR is simply a bully thought astatine all. In different words, reviewing is made of decisions.
"Shotgunning" PRs astatine reviewers incurs a precocious intelligence costs for them. I deliberation astir authors of LLM PRs judge that they are sincerely helping, but from our perspective, the codification itself is the smallest and successful immoderate ways slightest important portion of the change. We attraction overmuch much astir authors understanding what the codification does, planning really it will alteration successful the future, and deciding what it should look like. The codification itself cannot thief pinch immoderate of those.
Mechanically copy-pasting LLM output is simply a discarded of time
We will often get group who respond to reappraisal comments by copy-pasting them into their LLM, past copy-pasting its consequence backmost onto GitHub. Bluntly: this is simply a discarded of everyone's time. If we wanted an LLM's opinion, we could person asked it ourselves. We want to perceive your thoughts, not a machine's.
Moreover, this is simply a breach of spot betwixt the reviewer and the author. Our presumption erstwhile we reappraisal is that we're talking to a existent personification who wants to do their champion work. Pasting LLM matter creates suspicion: does the writer really care? Is location a personification present astatine all?
So why a policy?
Before this policy, we had a "wild west" attack to moderation. We had dozens of LLM PRs; nary disclosure rules; group trying to adhd risky MIR optimizations arsenic their first PR; and group posting "Verification: git diff --check" successful their PR explanation arsenic if that did something. While we had something for moderators to constituent to successful the shape of "Empower reviewers to cull burdensome PRs", our enforcement was inconsistent and our rules were not published anywhere. In practice, the norm was "anything goes, arsenic agelong arsenic it's not obviously horrible". Compared to the erstwhile situation, the caller argumentation is some overmuch much strict and overmuch much clear.
Regardless of your opinions connected whether LLMs are good, bad, aliases a concealed 3rd thing, they tin nary longer beryllium ignored. Our choices are not "no policy" aliases "policy". Our prime is whether to person the argumentation beryllium an unofficial database of moderation notes aliases thing we guidelines by publicly.
Why not prohibition LLMs altogether, aliases let immoderate usage of LLMs that we deliberation are pro-social? Because Rust governance doesn't activity that way. We do not person a benevolent dictator who tin say "No LLM-generated content, whether it beryllium codification aliases prose." or "AI is simply a tool, conscionable for illustration different devices we use".
Rust operates by consensus. As the argumentation says:
There is not a statement wrong the Rust project—and apt ne'er will be—about when/how/where it is acceptable to usage AI-based tools. Many members of the Rust task and organization find worth successful AI; many others consciousness that its antagonistic effect connected nine and the ambiance are terrible capable that nary usage is acceptable. Still others are moving retired their opinion.
Despite these differences, location are galore values we each share:
- Building a organization of heavy experts successful our corporate projects.
- Building an inclusive organization wherever each consciousness invited and respected.
We want it to beryllium imaginable to alteration the argumentation successful the future. The argumentation has several provisions that make it easier to alteration than it was to primitively adopt. The activity assembly is besides considering creating a sub-team that would grip LLM argumentation truthful we person less "nightmare" 30-person support requirements.
I do not deliberation each norm successful this argumentation is wholly good. I do deliberation that penning our rules down is amended than not penning them down, and that having a argumentation that everyone kinda dislikes pushes america to amended our governance structures.
What does the argumentation say?
The argumentation summarizes itself this way:
It's good to usage LLMs to reply questions, analyze, distill, refine, check, suggest, review. But not to create.
Uses successful the first class are allowed, sometimes requiring disclosure. Uses successful the 2nd class are heavy restricted.
General rules
No 1 isolated from the writer is required to publication LLM output unless they take to: LLM output isn't allowed successful nationalist docs, PR descriptions, aliases Github comments unless it's intelligibly marked; reviewers aren't required to look astatine LLM PRs if they don't want to.
No 1 is required to usage LLMs to lend to rust-lang/rust: policies must beryllium written first for humans, and only summarized for machines; LLM reviews cannot substitute for quality reappraisal aliases self-review.
You are allowed to make LLM contented that only you see, without disclosure, as agelong arsenic you do not station it anyplace that you expect america to publication aliases review.
Disclosure is required for instrumentality translation, "trivial" changes, discovering bugs, and reviewing different people's activity utilizing an LLM. We invited messages posted successful your autochthonal language; English translator is not required to contribute.
There are very strict guidelines connected LLM-generated codification changes:
Pre-arranged, non-critical, high-quality, well-tested, and well-reviewed codification changes that are primitively created by an LLM are allowed, with disclosure.
The argumentation holds LLM-generated changes to a higher barroom than human-authored changes, not a little one: LLM PRs are required to person tests, afloat stop, sloppy of really difficult that is, arsenic good arsenic various different restrictions; LLMs must not make soundness-critical changes unless the writer is already a domain expert, and moreover past it's powerfully discouraged.
In general, the argumentation focuses connected understanding, helping to guarantee that we person a intelligence exemplary of our code, not conscionable artifacts that mechanically do the correct thing. Our information is influenced by Profession by Isaac Asimov. No programmer tapes.
Moderation rules
You must disclose LLM-generated content. You tin take to not station LLM content, aliases you tin take to station it and disclose its origin. You whitethorn not hide LLM involvement.
Harassment is not allowed. You whitethorn not harass group for utilizing an LLM, sloppy of whether aliases not their usage is banned by the policy. You must travel the Code of Conduct astatine each times erstwhile interacting pinch the Rust project.
See the argumentation itself for much information.
Some parts of the argumentation are unenforceable. This is not a bug. The extremity is not to drawback each violation, but to create a clear bright-line rule: Disclosure is required for each nationalist LLM text, unless specifically exempted by the policy. This allows moderators to place violations based connected actions, not connected intent, and only see intent erstwhile deciding really to respond.
How does this impact contributors?
Issue reporters
You must disclose immoderate LLM engagement successful discovering aliases reporting issues. You must show america if you recovered an rumor utilizing an LLM. You must intelligibly quote and bespeak which parts of your study were LLM-generated; the "no LLM-generated comments" norm applies to you too.
Authors who station LLM-generated code
I person written a database of guidelines you should travel if you make a PR to rust-lang/rust pinch LLM-generated code. You tin debar reasoning astir them, aliases so reference the database astatine all, if you travel this elemental line from the policy:
It's good to usage LLMs to reply questions, analyze, distill, refine, check, suggest, review. But not to create.
See the "Allowed" conception of the policy for a afloat database of what's meant by that. See rustc-dev-guide for the afloat database of guidelines.
Reviewers
General review
You are allowed to adjacent PRs that don't travel the policy, nary questions asked. Please constituent the writer to #llm-mentoring astatine the aforesaid time. See the dev guide for nonstop circumstances and suggested wording.
You are not responsible for determining whether a PR is LLM-generated; that work lies pinch the author. We will adhd a PR template that asks authors whether their codification was LLM-generated truthful that this seldom comes up.
If an writer claims their codification is not LLM-generated, but you're still not sure, please study the PR privately to moderation. Style is not evidence; please do not impeach group of utilizing an LLM. Reporting is not intended to beryllium a penalty; the mod squad is willing successful seeing non-violations arsenic good arsenic violations.
Review of LLM code
If you person volunteered to reappraisal LLM PRs, the pursuing conception applies to you. No 1 is required to reappraisal LLM PRs unless they volunteer.
Everyone is expected to travel the caller policy, not conscionable authors. That intends it is your responsibility to cheque whether an LLM-created PR touches an area that's disallowed by the policy, such arsenic docs, diagnostics, aliases soundness-critical changes. You whitethorn petition that the writer redo it without LLM-generated code, successful which lawsuit this conception doesn't apply.
There's a much elaborate summary of the rules you're expected to enforce successful the dev guide. The official policy remains canonical.
What next?
Quite a batch of activity has been put into this by moderators, squad leads, reviewers, assembly representatives, and various different group wrong and extracurricular the project. Some of that activity started months agone earlier the argumentation itself was written. I'd for illustration to convey everyone who contributed, whether straight aliases indirectly.
This is not the extremity of the story. One of the goals of the argumentation is to thief america stitchery data: Are group doing absorbing and useful things pinch LLMs? Are they learning? Are they making repetition contributions? The answers to those questions will thief america find really the argumentation changes successful the future.
This is not the first LLM argumentation published by teams successful the Rust project, and hopefully it will not beryllium the last. While the existent argumentation only applies to the rust-lang/rust monorepo, I still judge that Rust would use from a project-wide argumentation that specifies what we expect successful chats, forums, nationalist communications, repositories without an definitive policy, and different cross-project areas.
English (US) ·
Indonesian (ID) ·