Rust Adopts Official Policy for AI-Generated Contributions

Two months after proposing the changes, several Rust teams have officially adopted a policy restricting AI-generated contributions.

The Rust Project has adopted a new policy governing the use of large language models in contributions to its main rust-lang/rust repository, turning a proposal discussed earlier this year into active rules for several core development teams.

The policy is deliberately narrow in scope, applying only to contributions handled by those teams within the rust-lang/rust repository, rather than representing a universal position on AI across the entire Rust Project or the wider Rust ecosystem. Other Rust repositories, independent crates, and teams that have not adopted the document are not automatically covered by it.

Its main point is that LLM tools may assist contributors with tasks like asking questions, analyzing code, summarizing discussions, editing, checking work, suggesting approaches, and providing private reviews. However, they should not produce the final contribution for the developer.

Contributors remain free to use an AI assistant privately while learning the codebase, exploring solutions, or reviewing their work. They must understand the problem, verify the result, and take full responsibility for what they submit.

Moreover, the policy draws a harder line around generated public content. Text originally created by an LLM must not be submitted as GitHub comments, issue descriptions, pull request descriptions, documentation, nontrivial source-code comments, or compiler diagnostics. Editing the generated output afterward does not make it acceptable, as the policy focuses on whether the content was originally created by a model.

AI-generated reviews are also not considered a substitute for human assessment. An automated review may point out potential problems, but it cannot provide sufficient grounds on its own to approve or reject a contribution. Both the author and the reviewer remain responsible for understanding and evaluating the proposed change.

In other words, the policy is less about rejecting AI as a development tool and more about preventing the cost of cheaply generated output from falling on maintainers. AI-generated code is not banned completely. Instead, the adopted policy creates a limited experimental path under which those changes may still be accepted.

Before opening an LLM-generated code contribution, the author must find a reviewer who explicitly agrees to review it. Additionally, the use of an LLM must be clearly disclosed. Accepted PRs of this kind can be marked with an ai-assisted label so the project can track results and determine whether allowing such contributions produces sustainable benefits or increases the review burden.

Importantly, reviewers are not obligated to accept these requests and may close contributions that violate the policy. The rules become even stricter in sensitive areas. LLM-generated documentation, diagnostics, and other user-facing explanatory text are generally prohibited, while generated changes involving soundness-critical code are strongly discouraged even when the contributor has relevant expertise.

The policy also contains a safeguard to prevent AI-generated contributions from becoming dominant. If such changes account for more than half of pull requests merged during six weeks, acceptance of new LLM-generated changes can be paused temporarily. The pause must last at least ten days and until the proportion falls below the threshold.

So, what can be said in conclusion? For developers, the message is simple: using AI to understand Rust, explore ideas, or privately check work remains acceptable. Using it to generate public contributions without disclosure, comprehension, and human accountability does not.

For additional details, see the official announcement.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.

Leave a Reply

Your email address will not be published. Required fields are marked *