Skip to content

Commit b0286dd

Browse files
authored
Add a policy on AI-based contributions (#2677)
1 parent 7d4628a commit b0286dd

2 files changed

Lines changed: 33 additions & 1 deletion

File tree

.github/pull_request_template.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
11

22

3+
<!--
4+
Thanks for your contribution!
5+
6+
Please note:
7+
- All code produced via agentic AI **must be disclosed in the PR**. Use: `Assisted-by: <tool>:<model>`.
8+
- **The PR description, along with subsequent PR discussion comments, must be human-written.**
9+
10+
See our [guide on Verus contributions](https://github.com/verus-lang/verus/blob/main/CONTRIBUTING.md) for more details.
11+
-->
12+
313
<small>By submitting this pull request, I confirm that my contribution is made under the terms of the [MIT license](https://github.com/verus-lang/verus/blob/main/LICENSE).</small>

CONTRIBUTING.md

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Tips for Contributing to Verus
1+
# Tips and Expectations for Contributing to Verus
22

33
Thanks for contributing to Verus! Verus is an Open Source project and welcomes
44
contributions. Please report issues or start discussions here on GitHub.
@@ -16,6 +16,28 @@ To record an execution run, simply add `--record` to the verus command that trig
1616

1717
If you want to aid us in debugging (or are unable to share your full recording, which includes the full crate for us to be able to reproduce your issue), you can attempt to minimize the issue before recording it. For automatic minimization of a crate or file (producing a smaller file that triggers the same error), see [source/tools/minimizers/README.md](./source/tools/minimizers/README.md) for more details.
1818

19+
## Expectations when making a contribution
20+
21+
Verus is a verification tool, but it is not itself verified, so we use traditional software methods like testing and human review to ensure quality. Therefore, we have high standards for code changes.
22+
23+
As a new contributor, you should expect at least one review from a core contributor (e.g., @tjhance, @Chris-Hawblitzel, or @parno). The first reviewer will also determine if additional reviews are necessary.
24+
25+
In the PR description, please describe:
26+
- What issue you're solving (please include a link to an existing GitHub issue if it exists)
27+
- Changed behavior, if any
28+
- A description of your code changes
29+
30+
For *opinionated changes*, such as those that add a feature or dramatically modify code architecture, we would highly recommend checking with the Verus team first (by opening a [GitHub Discussion](https://github.com/verus-lang/verus/discussions)) to save time and to ensure the direction is a desirable one.
31+
32+
### Policy for AI-generated and AI-assisted code
33+
34+
AI use is permitted, but all code produced via agentic AI must be disclosed in the PR. Regardless of how the code is produced, we expect the human contributor to take responsibility for the quality of the code. As a consequence of this position, **do not** list any tool (AI or otherwise) as a co-author. Instead, you can use `Assisted-by: <tool>:<model>`.
35+
36+
AI-assisted coding, or "vibecoding," carries a number of risks. These risks include both damage to overall code quality and the risk of overburdening the reviewers, as code can be generated faster than it can be reviewed. We will close a PR if we feel those risks cannot be satisfactorily managed, or if our time is abused.
37+
38+
We expect professionalism and common sense from contributors; you, the human author, are responsible for the pull request. Be prepared to receive feedback or to answer questions about the PR. **The PR description, along with subsequent PR discussion comments, must be human-written in all cases.**
39+
40+
1941
## Building Verus from Source
2042

2143
**See [BUILD.md](BUILD.md) for how to build Verus from source.**

0 commit comments

Comments
 (0)