From 3cab763b64fd5fe7cf1754b07fd72f4557989c60 Mon Sep 17 00:00:00 2001 From: "John H. Palmieri" Date: Tue, 5 Mar 2024 15:05:17 -0800 Subject: [PATCH] PR #37501: combine CODE_OF_CONDUCT.md and HANDLING_VIOLATIONS.md into a single file. --- CODE_OF_CONDUCT.md | 268 +++++++++++++++++++++++++++++++++++++++-- HANDLING_VIOLATIONS.md | 241 ------------------------------------ 2 files changed, 258 insertions(+), 251 deletions(-) delete mode 100644 HANDLING_VIOLATIONS.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 7bb46dea139..d3c21378bb2 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -1,5 +1,9 @@ # Code of Conduct # +This document has two parts: the current one --- the Code of Conduct +itself --- and a second part describing the role of and procedures for +the Sage Code of Conduct Committee. + This Code was approved by the Sage community by a vote which ended on November 24, 2014. @@ -156,7 +160,8 @@ goal will be to respond within 72 hours. Potential consequences for violating the Sage Code of Conduct include: -- Nothing (if the committee determines that no violation occurred) +- Nothing (for example if the matter has been resolved publicly while + the committee was considering responses) - Private feedback or reprimand to the individual(s) involved - Warning the person to cease their behavior and that any further reports will result in sanctions @@ -189,18 +194,261 @@ Google groups: - [Content policy](https://support.google.com/groups/answer/4561696) - [Reporting procedures](https://support.google.com/groups/answer/81275) -## Amending this document ## +## Amending the Code of Conduct ## + +The first part of this document may be amended by a vote of the Sage +community in the sage-devel Google group, with the exception of facts +like the membership of the Sage Code of Conduct Committee, changes to +URLs, or changes to email addresses: changes like that can be done via +a normal pull request. Any pull requests involving this document +should list the committee members as reviewers. + + + +# Guide for the Sage Code of Conduct Committee # + +## Introduction ## + +This is the manual followed by the Sage Code of Conduct Committee. It is used +when we respond to an issue to make sure we’re consistent and fair. + +Enforcing the Code of Conduct impacts our community today and for the +future. It’s an action that we do not take lightly. When reviewing +enforcement measures, the Sage Code of Conduct Committee will keep the +following values and guidelines in mind: + +- Act in a personal manner rather than impersonal. The committee can + engage the parties to understand the situation, while respecting the + privacy and any necessary confidentiality of reporters. However, + it is sometimes necessary to communicate with one or more + individuals directly: the committee’s goal is to improve the health + of our community rather than only produce a formal decision. + +- Emphasize empathy for individuals rather than judging behavior, + avoiding binary labels of “good” and “bad/evil”. Overt, clear-cut + aggression and harassment exists and we will address that + firmly. But many scenarios that can prove challenging to resolve are + those where normal disagreements devolve into unhelpful or harmful + behavior from multiple parties. Understanding the full context and + finding a path that re-engages all is hard, but ultimately the most + productive for our community. + +- We understand that email is a difficult medium and can be + isolating. Receiving criticism over email, without personal contact, + can be particularly painful. This makes it especially important to + keep an atmosphere of open-minded respect of the views of others. It + also means that we must be transparent in our actions, and that we + will do everything in our power to make sure that all our members + are treated fairly and with sympathy. + +- Discrimination can be subtle and it can be unconscious. It can show + itself as unfairness and hostility in otherwise ordinary + interactions. We know that this does occur, and we will take care to + look out for it. We would very much like to hear from you if you + feel you have been treated unfairly, and we will use these + procedures to make sure that your complaint is heard and addressed. + +- Help increase engagement in good discussion practice: try to + identify where discussion may have broken down and provide + actionable information, pointers and resources that can lead to + positive change on these points. + +- Be mindful of the needs of new members: provide them with explicit + support and consideration, with the aim of increasing participation + from underrepresented groups in particular. + +Individuals come from different cultural backgrounds and native +languages. Try to identify any honest misunderstandings caused by a +non-native speaker and help them understand the issue and what they +can change to avoid causing offense. Complex discussion in a foreign +language can be very intimidating, and we want to grow our diversity +also across nationalities and cultures. + +Mediation: voluntary, informal mediation is a tool at our disposal. In +some contexts, such as when two or more parties have escalated to the +point of inappropriate behavior (something sadly common in human +conflict), it may be useful to facilitate a mediation process. This is +only an example: the committee can consider mediation in any case, +mindful that the process is meant to be strictly voluntary and no +party can be pressured to participate. If the committee suggests +mediation, it should: + +- Find a candidate who can serve as a mediator. + +- Obtain the agreement of the reporter(s). The reporter(s) have + complete freedom to decline the mediation idea, or to propose an + alternate mediator. + +- Obtain the agreement of the reported person(s). + +- Settle on the mediator: while parties can propose a different + mediator than the suggested candidate, only if common agreement is + reached on all terms can the process move forward. + +- Establish a timeline for mediation to complete, ideally within two weeks. + +The mediator will engage with all the parties and seek a resolution +that is satisfactory to all. Upon completion, the mediator will +provide a report (vetted by all parties to the process) to the +committee, with recommendations on further steps. The committee will +then evaluate these results (whether satisfactory resolution was +achieved or not) and decide on any additional action deemed necessary. + +## How the committee will respond to reports ## + +When the committee (or a committee member) receives a report, they +will first determine whether the report is about a clear and severe +breach (as defined below). If so, immediate action needs to be taken +in addition to the regular report-handling process. + +### Clear and severe breach actions ### + +We know that it is painfully common for internet communication to +start at or devolve into obvious and flagrant abuse. We will deal +quickly with clear and severe breaches like personal threats, violent, +sexist, or racist language. + +When a member of the Sage Code of Conduct Committee becomes aware of a +clear and severe breach, they will do the following: + +- Immediately disconnect the originator from all Sage communication channels. + +- Reply to the reporter that their report has been received and that + the originator has been disconnected. + +- In every case, the moderator should make a reasonable effort to + contact the originator, and tell them specifically how their + language or actions qualify as a “clear and severe breach”. The + moderator should also say that, if the originator believes this is + unfair or they want to be reconnected to Sage, they have the right + to ask for a review, as below, by the Sage Code of Conduct Committee. The + moderator should copy this explanation to the Sage Code of Conduct + Committee. + +The Sage Code of Conduct Committee will formally review and sign off on all +cases where this mechanism has been applied to make sure it is not +being used to control ordinary heated disagreement. + +### Report handling ### + +When a report is sent to the committee, they will immediately reply to +the reporter to confirm receipt. This reply must be sent within 72 +hours, and the group should strive to respond much quicker than that. + +If a report doesn’t contain enough information, the committee will +obtain all relevant data before acting. The committee is empowered to +contact any individuals involved to get a more complete account of +events. + +The committee will then review the incident and determine, to the best of their ability: + +- What happened. + +- Whether this event constitutes a Code of Conduct violation. + +- Who are the responsible party/parties. + +- Whether this is an ongoing situation, and whether there is a threat to anyone’s physical safety. + +This information will be collected in writing, and whenever possible +the group’s deliberations will be recorded and retained (i.e., chat +transcripts, email discussions, recorded conference calls, summaries +of voice conversations, etc.). + +It is important to retain an archive of all activities of this +committee to ensure consistency in behavior and provide institutional +memory for the project. To assist in this, the default channel of +discussion for this committee will be a private mailing list +accessible to current and future members of the committee. If the +committee finds the need to use off-list communications (e.g., phone +calls for early/rapid response), it should, in all cases, summarize +these back to the list so there’s a good record of the process. + +The Sage Code of Conduct Committee should aim to have a resolution agreed upon +within two weeks. In the event that a resolution can’t be determined +in that time, the committee will respond to the reporter(s) with an +update and projected timeline for the resolution. + +## Resolutions ## + +The committee must agree on a resolution by consensus. If the group +cannot reach consensus and deadlocks for over a week, the committee is +empowered to consult as needed to try to reach consensus. + +Possible responses may include: + +- Taking no further action: + + - if we determine no violations have occurred. + + - if the matter has been resolved publicly while the committee was considering responses. + +- Coordinating voluntary mediation: if all involved parties agree, the + committee may facilitate a mediation process as detailed above. + +- Remind publicly, and point out that some behavior/actions/language + have been judged inappropriate and why in the current context, or + can but hurtful to some people, requesting the community to + self-adjust. + +- A private reprimand from the committee to the individual(s) + involved. In this case, a representative of the committee will + deliver that reprimand to the individual(s) over email, cc’ing the + group. + +- A public reprimand. In this case, a committee representative will deliver + that reprimand in the same venue that the violation occurred, within + the limits of practicality. E.g., the original mailing list for an + email violation, but for a chat room discussion where the + person/context may be gone, they can be reached by other means. The + group may choose to publish this message elsewhere for documentation + purposes. + +- A request for a public or private apology, assuming the reporter + agrees to this idea: they may, at their discretion, refuse further + contact with the violator. A committee representative will deliver + this request. The committee may, if it chooses, attach “strings” to + this request: for example, the group may ask a violator to + apologize, in order to retain one’s membership on a mailing list. + +- A “mutually agreed upon hiatus” where the committee asks the + individual to temporarily refrain from community participation. If + the individual chooses not to take a temporary break voluntarily, + the committee may issue a “mandatory cooling off period”. + +- A permanent or temporary ban from some or all Sage spaces (mailing + lists, GitHub, etc.). The group will maintain records of all such + bans so that they may be reviewed in the future or otherwise + maintained. + +Once a resolution is agreed upon, the committee will contact the +original reporter and any other affected parties and explain that the +committee has taken action. Depending on the situation, the committee +may or may not choose to provide further details about what actions +were taken and how they might affect the reporter. + +The committee will never publicly discuss the issue; all public +statements will be made by a representative of the Sage Code of Conduct +Committee. + +## Conflicts of interest ## + +In the event of any conflict of interest, a committee member must +immediately notify the other members, and recuse themselves if +necessary. + +## Amending the Code of Conduct Committee manual ## -This document may be amended by a vote of the Sage community in the -sage-devel Google group, with the exception of facts like the -membership of the Sage Code of Conduct Committee, changes to URLs, or -changes to email addresses: changes like that can be done via a normal -pull request. Any pull requests involving this document should list -the committee members as reviewers. +This part of the document may be amended by a vote of the Sage Code of +Conduct Committee. ## Credits ## -Portions of this are adapted from the [SciPy code of +Portions of the first part (the code itself) are adapted from the +[SciPy code of conduct](https://docs.scipy.org/doc/scipy/dev/conduct/code_of_conduct.html) and the [NumFOCUS code of -conduct](https://numfocus.org/code-of-conduct). +conduct](https://numfocus.org/code-of-conduct). The second part (the +guide for the Sage Code of Conduct Committee) is largely adapted from +the [SciPy report handling +manual](https://docs.scipy.org/doc/scipy/dev/conduct/report_handling_manual.html). diff --git a/HANDLING_VIOLATIONS.md b/HANDLING_VIOLATIONS.md deleted file mode 100644 index 6f0e72cf161..00000000000 --- a/HANDLING_VIOLATIONS.md +++ /dev/null @@ -1,241 +0,0 @@ -# Guide for handling violations to Sage's Code of Conduct # - -## Introduction ## - -This is the manual followed by the Sage Code of Conduct Committee. It is used -when we respond to an issue to make sure we’re consistent and fair. - -Enforcing the Code of Conduct impacts our community today and for the -future. It’s an action that we do not take lightly. When reviewing -enforcement measures, the Sage Code of Conduct Committee will keep the -following values and guidelines in mind: - -- Act in a personal manner rather than impersonal. The committee can - engage the parties to understand the situation, while respecting the - privacy and any necessary confidentiality of reporters. However, - it is sometimes necessary to communicate with one or more - individuals directly: the committee’s goal is to improve the health - of our community rather than only produce a formal decision. - -- Emphasize empathy for individuals rather than judging behavior, - avoiding binary labels of “good” and “bad/evil”. Overt, clear-cut - aggression and harassment exists and we will address that - firmly. But many scenarios that can prove challenging to resolve are - those where normal disagreements devolve into unhelpful or harmful - behavior from multiple parties. Understanding the full context and - finding a path that re-engages all is hard, but ultimately the most - productive for our community. - -- We understand that email is a difficult medium and can be - isolating. Receiving criticism over email, without personal contact, - can be particularly painful. This makes it especially important to - keep an atmosphere of open-minded respect of the views of others. It - also means that we must be transparent in our actions, and that we - will do everything in our power to make sure that all our members - are treated fairly and with sympathy. - -- Discrimination can be subtle and it can be unconscious. It can show - itself as unfairness and hostility in otherwise ordinary - interactions. We know that this does occur, and we will take care to - look out for it. We would very much like to hear from you if you - feel you have been treated unfairly, and we will use these - procedures to make sure that your complaint is heard and addressed. - -- Help increase engagement in good discussion practice: try to - identify where discussion may have broken down and provide - actionable information, pointers and resources that can lead to - positive change on these points. - -- Be mindful of the needs of new members: provide them with explicit - support and consideration, with the aim of increasing participation - from underrepresented groups in particular. - -Individuals come from different cultural backgrounds and native -languages. Try to identify any honest misunderstandings caused by a -non-native speaker and help them understand the issue and what they -can change to avoid causing offense. Complex discussion in a foreign -language can be very intimidating, and we want to grow our diversity -also across nationalities and cultures. - -Mediation: voluntary, informal mediation is a tool at our disposal. In -some contexts, such as when two or more parties have escalated to the -point of inappropriate behavior (something sadly common in human -conflict), it may be useful to facilitate a mediation process. This is -only an example: the committee can consider mediation in any case, -mindful that the process is meant to be strictly voluntary and no -party can be pressured to participate. If the committee suggests -mediation, it should: - -- Find a candidate who can serve as a mediator. - -- Obtain the agreement of the reporter(s). The reporter(s) have - complete freedom to decline the mediation idea, or to propose an - alternate mediator. - -- Obtain the agreement of the reported person(s). - -- Settle on the mediator: while parties can propose a different - mediator than the suggested candidate, only if common agreement is - reached on all terms can the process move forward. - -- Establish a timeline for mediation to complete, ideally within two weeks. - -The mediator will engage with all the parties and seek a resolution -that is satisfactory to all. Upon completion, the mediator will -provide a report (vetted by all parties to the process) to the -committee, with recommendations on further steps. The committee will -then evaluate these results (whether satisfactory resolution was -achieved or not) and decide on any additional action deemed necessary. - -## How the committee will respond to reports ## - -When the committee (or a committee member) receives a report, they -will first determine whether the report is about a clear and severe -breach (as defined below). If so, immediate action needs to be taken -in addition to the regular report-handling process. - -### Clear and severe breach actions ### - -We know that it is painfully common for internet communication to -start at or devolve into obvious and flagrant abuse. We will deal -quickly with clear and severe breaches like personal threats, violent, -sexist, or racist language. - -When a member of the Sage Code of Conduct Committee becomes aware of a -clear and severe breach, they will do the following: - -- Immediately disconnect the originator from all Sage communication channels. - -- Reply to the reporter that their report has been received and that - the originator has been disconnected. - -- In every case, the moderator should make a reasonable effort to - contact the originator, and tell them specifically how their - language or actions qualify as a “clear and severe breach”. The - moderator should also say that, if the originator believes this is - unfair or they want to be reconnected to Sage, they have the right - to ask for a review, as below, by the Sage Code of Conduct Committee. The - moderator should copy this explanation to the Sage Code of Conduct - Committee. - -The Sage Code of Conduct Committee will formally review and sign off on all -cases where this mechanism has been applied to make sure it is not -being used to control ordinary heated disagreement. - -### Report handling ### - -When a report is sent to the committee, they will immediately reply to -the reporter to confirm receipt. This reply must be sent within 72 -hours, and the group should strive to respond much quicker than that. - -If a report doesn’t contain enough information, the committee will -obtain all relevant data before acting. The committee is empowered to -contact any individuals involved to get a more complete account of -events. - -The committee will then review the incident and determine, to the best of their ability: - -- What happened. - -- Whether this event constitutes a Code of Conduct violation. - -- Who are the responsible party/parties. - -- Whether this is an ongoing situation, and whether there is a threat to anyone’s physical safety. - -This information will be collected in writing, and whenever possible -the group’s deliberations will be recorded and retained (i.e., chat -transcripts, email discussions, recorded conference calls, summaries -of voice conversations, etc.). - -It is important to retain an archive of all activities of this -committee to ensure consistency in behavior and provide institutional -memory for the project. To assist in this, the default channel of -discussion for this committee will be a private mailing list -accessible to current and future members of the committee. If the -committee finds the need to use off-list communications (e.g., phone -calls for early/rapid response), it should, in all cases, summarize -these back to the list so there’s a good record of the process. - -The Sage Code of Conduct Committee should aim to have a resolution agreed upon -within two weeks. In the event that a resolution can’t be determined -in that time, the committee will respond to the reporter(s) with an -update and projected timeline for the resolution. - -## Resolutions ## - -The committee must agree on a resolution by consensus. If the group -cannot reach consensus and deadlocks for over a week, the committee is -empowered to consult as needed to try to reach consensus. - -Possible responses may include: - -- Taking no further action: - - - if we determine no violations have occurred. - - - if the matter has been resolved publicly while the committee was considering responses. - -- Coordinating voluntary mediation: if all involved parties agree, the - committee may facilitate a mediation process as detailed above. - -- Remind publicly, and point out that some behavior/actions/language - have been judged inappropriate and why in the current context, or - can but hurtful to some people, requesting the community to - self-adjust. - -- A private reprimand from the committee to the individual(s) - involved. In this case, a representative of the committee will - deliver that reprimand to the individual(s) over email, cc’ing the - group. - -- A public reprimand. In this case, a committee representative will deliver - that reprimand in the same venue that the violation occurred, within - the limits of practicality. E.g., the original mailing list for an - email violation, but for a chat room discussion where the - person/context may be gone, they can be reached by other means. The - group may choose to publish this message elsewhere for documentation - purposes. - -- A request for a public or private apology, assuming the reporter - agrees to this idea: they may, at their discretion, refuse further - contact with the violator. A committee representative will deliver - this request. The committee may, if it chooses, attach “strings” to - this request: for example, the group may ask a violator to - apologize, in order to retain one’s membership on a mailing list. - -- A “mutually agreed upon hiatus” where the committee asks the - individual to temporarily refrain from community participation. If - the individual chooses not to take a temporary break voluntarily, - the committee may issue a “mandatory cooling off period”. - -- A permanent or temporary ban from some or all Sage spaces (mailing - lists, GitHub, etc.). The group will maintain records of all such - bans so that they may be reviewed in the future or otherwise - maintained. - -Once a resolution is agreed upon, the committee will contact the -original reporter and any other affected parties and explain that the -committee has taken action. Depending on the situation, the committee -may or may not choose to provide further details about what actions -were taken and how they might affect the reporter. - -The committee will never publicly discuss the issue; all public -statements will be made by a representative of the Sage Code of Conduct -Committee. - -## Conflicts of interest ## - -In the event of any conflict of interest, a committee member must -immediately notify the other members, and recuse themselves if -necessary. - -## Amending this document ## - -This document may be amended by a vote of the Sage Code of Conduct -Committee. - -## Credits ## - -This is largely adapted from the [SciPy report handling -manual](https://docs.scipy.org/doc/scipy/dev/conduct/report_handling_manual.html).