[llvm] Document the community RFC process (PR #116386)
Aaron Ballman via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 19 06:51:13 PST 2024
================
@@ -0,0 +1,80 @@
+=================================
+Request For Comment (RFC) process
+=================================
+
+.. contents::
+ :local:
+ :depth: 1
+
+Introduction
+============
+Substantive changes to LLVM projects need to be acceptable to the wider
+community, which requires gaining community consensus to adopt the changes.
+This is done by posting an RFC and obtaining feedback about the proposal.
+
+Process
+=======
+
+Writing an RFC
+--------------
+The process begins with writing a proposal for the changes you'd like to see
+made. The proposal should include:
+
+* a high-level overview of what changes are being proposed,
+* information detailing the motivation for why the changes are being proposed,
+* detailed information the proposed changes and how they impact different parts
+ of the project, and
+* a list of any open questions the community should explicitly address.
+
+Once the contents of the proposal are ready, the proposal should be posted to
+the appropriate forum on `Discourse <https://discourse.llvm.org/>`_.
+
+Feedback Period
+---------------
+Once the RFC is posted, the community will provide feedback on the proposal.
+The feedback period is a collaborative effort between the community and the
+proposal authors. Authors should take the community's feedback into
+consideration and edit the original post to incorporate relevant changes they
+agree to. Edits should be made such that it's clear what has changed. Editing
+the original post makes it easier for the community to understand the proposal
+without having to read every comment on the thread, though this can make
+reading the comment thread somewhat more difficult as comments may be referring
+to words no longer in the proposal.
+
+There is not a set time limit to the feedback period; it lasts as long as
+discussion is actively continuing on the proposal.
+
+Trivial Acceptance or Rejection
+-------------------------------
+If the proposal has obvious consensus (for or against), a maintainer for each
+of the impacted parts of the project will explicitly accept or reject the RFC
+by leaving a comment stating their decision and possibly detailing any
+provisions for their acceptance. Additionally, the original post should be
+edited to explicitly say what consensus was called and link to the comment
+stating that decision. Including that information in the post makes it more
+clear to everyone what state the proposal is in. Overall consensus is
+determined once all impacted parts of the project have accepted the proposal.
+
+Low Engagement Level
+~~~~~~~~~~~~~~~~~~~~
+If a proposal gets little or no engagement by the community, it is a sign that
+the proposal does not have consensus and is rejected. Engagement means comments
+on the proposal. If there are few or no comments but the are a lot of people
+pressing the like/heart button on the post, maintainers can make a value
+judgement on whether to accept or reject.
+
+After Acceptance
+----------------
+Once an RFC has been accepted, the authors may begin merging pull requests
----------------
AaronBallman wrote:
Done
https://github.com/llvm/llvm-project/pull/116386
More information about the llvm-commits
mailing list