The Code of Conduct (CoC) Committee is a group of volunteers who handle Code of Conduct reports for the LLVM Project. For each report received, a sub-committee of members was selected to investigate. This is the transparency report for resolved incidents from the period July 15, 2024 - July 15, 2025.
Reports:
The LLVM Code of Conduct Committee resolved 12 incident reports during this time period. If a report has been received but not resolved, it will not be reported here until resolved.
Report #1:
A community member posted a job opening on the LLVM Discourse. A moderator removed the external link referenced citing relevance expectations. The author restored it. The moderator removed it again and explicitly requested the post author avoid undoing moderation actions. The CoC committee received a report and found the approach of the moderator to be stricter and more confrontational than necessary. It was in violation of âbe friendly and patientâ and âwhen we disagree, try to understand whyâ expectations of the CoC. The committee asked the moderator to revert the edits and to adopt a more conversational and empathetic approach in similar cases before resorting to content removal. The committee also requested the post author to avoid reversing moderator actions moving forward, as that sets undesirable precedent that could undermine moderatorsâ roles.
The moderator contested the committeeâs decision, leading to a video conference discussion. This meeting did not resolve the disagreement, where the moderator ultimately believed that the CoC committee does not have authority over LLVM Discourse moderation. This report ultimately ended with no punitive actions for any of the individuals involved. The committee also suggested the job posting guidelines be updated to avoid ambiguity and those guidelines have been updated.
Report #2:
The reporter claims a user is inserting themselves into code reviews they had no standing in and providing low quality negative reviews. The reporter claims this was done in retribution for another interaction with a different community member.
The committee found that no violation had occurred - the tone of the interactions could have been improved but were within the realm of reasonable attempts at code review discussion.
Report #3:
The reporter claimed that a user submitted a large number of low quality pull requests. There was an earlier report of the same behavior from the user. In that earlier report, the resolution included a number of rules to be followed by the user, such as only opening one pull request at a time, to reduce burden on reviewers. The full list of rules was published in an
earlier transparency report.
The committee concluded that the user was violating most of those rules and therefore would ban their account from the LLVM github organization. The committee responded with the following:
As a result of not following these rules, the Code of Conduct committee has decided to block any interactions from your github account within the LLVM github organization for a month starting on the date this email was sent.
Weâd like to see an acknowledgement from you that you received this message and that you accept following these rules. We are open to hearing your thoughts on these rules and how you perceive them. Ultimately we will only restore the ability for your github account to interact with the LLVM github organization if we gain trust that you will be following these rules.
After a few forth and backs, the committee did gain enough trust to re-enable the userâs github account to interact with the LLVM github organization, but the user was warned that any further violations of the rules would result in blocking their github account again from the LLVM github organization.
No further reports have been received about this user since then.
Report #4 - #8:
The following summary represents various reports about a single contributor.
The initial reporter claimed that a reviewer was behaving inappropriately on a pull request and didnât find their answers meaningful, and ultimately found it hard to communicate with them.
The committee reviewed the interactions and concluded that some of the
interactions were not in line with the code of conduct. Specifically Be respectful
, Be careful in the words that you choose and be kind to others
, and When we disagree, try to understand why
were not followed, but no punitive actions were necessary. Instead, the committee recommended the following advice:
When a comment is unclear, ask polite questions for clarification.
When giving feedback, aim to provide enough context and information; ask for clarification when necessary. Many of the feedback comments observed in the communication are overly terse.
Refrain from using amplified negative or constructive feedback. For example, there is often no need to use lots of exclamation marks.
Sometimes it helps to discuss topics more interactively, for example during an online sync-up or an office hours session, if applicable.
If you would prefer to explore the topic of effective code reviews further, we can recommend a few of the talks by April Wensel, including the keynote she gave at the LLVM developers meeting in 2023 and the talk she gave at âtry! Swift conferenceâ in 2018. (video)(slides). There are more articles on this topic by many others too if you search for âcompassionate code reviewâ.
Following this initial incident, the committee received another report of similar issues occurring on various code reviews with the same reportee. While the committee was investigating this report, there were new examples of inappropriate comments. The committee promptly responded by putting the reportee on a temporary ban as the issue was escalating.
After the committeeâs investigation, it was concluded that the reportee continued to violate the code of conduct in multiple occurrences. Additionally, many of reporteeâs other comments were hard to understand due to its terseness. The committee observed that these issues showed a pattern when compared to the earlier reports. Given the continuous, repeated violations, the reportee was put on a conditional ban.
The conditional ban is in place until the following conditions are met:
- At least 90 days have elapsed since this ban started.
- The reportee shares with the committee a written statement, in their own words, in which they state:
- That they understand and agree that the quoted behaviors are code-of-conduct violations.
- What they have done during this time away from the project to improve their communication skills.
- What steps they will take to avoid having these kinds of violations in the future.
- The Code of Conduct committee reviews, validates that the letter meets the aforementioned requirements, and is satisfied that the actions that they have taken are in good faith and significantly reduce the risk of further violations.
After this ban was communicated to the reportee, a reporter shared that the banned user seemingly created a new github account to evade their ban. After investigating the report, the committee observed multiple indications that the reported github account was indeed attempting to evade their ban. Therefore, the committee blocked the github account. A similar account was also blocked on Discourse. The committee sent an email to the owner of the account giving them the option to reach out to conduct@llvm.org to discuss further. The committee did not receive any reply to this email.
This incident motivated the committee to update the LLVM developer policy to clarify that any attempt by anyone in the future to evade a non-permanent ban will result in getting banned permanently.
Following these events, a new report was sent to the committee, regarding unreasonable requests on a pull request from a reviewer. It concluded that the report was a technical disagreement, and not a CoC violation, that should be discussed with the maintainer. If the technical disagreement cannot be resolved with the maintainer, the next course of action would be to bring it to the LLVM area team for further guidance. However the reporter was the banned individual.
The committee reminded the reporter they are under a conditional ban, and therefore will not support them interacting with the LLVM community members while the ban remains. The committee also reminded the reporter that the committee would only lift the ban if all previously stated conditions were met.
Eventually the reporter reached out to the committee asking for their ban to be ignored and to contribute to LLVM under a new account. The committee replied that the previously stated conditions to uplift the ban were the only way to achieve this. No further response or actions have been taken.
Report #9:
The reporter claims that a reviewer is behaving inappropriately on a pull request review. The committee reviewed the mentioned PR, and personal discussions with the reported reviewer. Additionally, more feedback was gathered from the related contributors and code maintainers.
After this investigation, the committee concluded that there were no direct violations of the code of conduct. However, the committee did acknowledge that there was troublesome discourse. The committee concluded that a technical disagreement escalated to a point where both parties were not willing to understand each other.
The following advice was provided to both parties:
Understanding is not just asking questions to provide more clarification but also making an attempt to put yourself in othersâ perspectives even when you are confident your solution is correct.
The committee proposes to invite the code owner or primary maintainer to help resolve the technical disagreement over the general approach to testing in this sub-project. The committee also recommends that changes to the status quo or changes that do not have a clear consensus in a pull request should have a well-defined process on how they are addressed. In LLVM, major changes are discussed in a forum before changes are committed.
Report #10:
The reporter claimed that two contributors were undermining the principles of respectful collaboration by creating a hostile environment and discouraging contribution on a github issue report. The reporter was the originator of the github issue.
The committee investigated this report by gathering feedback from related contributors and reviewing the github issue discourse. The committee decided that the 2 reported users did not violate the code of conduct. However, the committee did find that the reporter violated the âbe considerateâ, âwhen we disagree, try to understand whyâ and âbe careful in the words that you choose and be kind to othersâ core principles.
This conclusion was communicated to all related parties, along with the following advice:
We recommend avoiding sentiments that sound threatening and are inherently dismissive of the concerns raised by others.
Voicing your frustration over the lack of attention to your bug report is reasonable and understandable to raise. We certainly hope issues can be addressed promptly, however it should be put into consideration that the LLVM project is full of contributors volunteering their time, and we cannot guarantee all issues will be resolved within a predefined time frame.
If you believe there are more actions to investigate or attempt before asking for information from a bug reporter, please describe what those are. In general, refrain from suggesting another contributor is not meeting your expectations, as that is discouraging and deter others from helping. The project does not take punitive actions for contributors being unable to address all raised concerns from users, unless it is a code of conduct violation.
The interactions in the issue do not constitute acceptable behavior under the LLVM Code of Conduct and itâs important to signal that to the community. The committee encourages you to reply with an apology within a week of this message. This would also serve as a step towards repairing your relationship with the other community members that were involved in the discussion.
The reporter appealed the committeeâs decision, by describing their rebuttals on the concrete details of the conclusion the committee communicated and requested the committee reevaluate. However, because the appeal did not contain any new or different evidence the committee decided the original conclusion would be upheld.
After this was communicated, the reporter raised their concerns with the committeeâs action to the LLVM Foundation Board in a formal complaint. After the LLVM Foundation board discussed the reporterâs complaint, they agreed with the resolution made by the LLVM Code of the Conduct Committee.
While the original issue has been considered resolved, the way this issue report escalated, before it was reported to the committee, was not aligned with the Code of Conduct. If disagreements start approaching off-topic arguments, we recommend de-escalating or even disengaging. If that is not practical, please reach out to moderators, relevant area teams or the code of conduct committee.
Report #11:
The reporter shares that a new github user account is seemingly a banned individual contributing to LLVM.
The committee investigated the report. The one comment made by the github user got deleted and no other similar activity from the new github user account was seen since.
Report #12:
The committee received a report that a userâs github account has an inappropriate username.
The committee investigated the report and concluded that the username did
contain a derogatory term. The committee therefore reached out to the user and asked them to change their username. The user changed their username on the same day. No further actions were necessary or taken.