-
-
Notifications
You must be signed in to change notification settings - Fork 5.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding guidelines for reporting violations of code of conduct #9340
Conversation
Members | ||
------- | ||
|
||
Lukas Kahwe Smith |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't like the idea of adding photos, biographies and personal links of the enforcement team people. We never do that in Symfony. We don't even show this for the Core Team, which is more important than this team. Listing the names and links to their SL Connect websites could be enough.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This page will work as a contact page. So contact information is the most important thing here.
I do not prefer a shared email. I believe some people may be more comfortable contacting a specific person.
Photos and biographics etc is just to build trust and add personalities. I do not feel as strongly to this data as I do with the contact info.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah and it will be up to each enforcement team member to decide what they want to publish about themselves to build trust.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still disagree. I thought there was going to be a central person-less email (coc@symfony.com
) or form (symfony.com/coc
) to submit CoC violations. What's this thing about personal emails and contacting people individually?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
because lets say someone wants to report someone that is either on or very closely related to someone on the enforcement team. or someone simply has had very bad experiences and first needs to build more trust.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not both?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've added a common email and I've removed the images.
it to the :doc:`enforcement team </contributing/code_of_conduct/enforcement_team>` | ||
by emailing, twitter, in person or any way you see fit. | ||
|
||
**All reports will be kept confidential.** In some cases we may determine that |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is highly disturbing to me --> All reports will be kept confidential.
I'd like to read a full explanation why that is needed at all. As I commented here it's easy to be 100% transparent and at the same time, protect the privacy of anyone involved. Example of a public report:
"A person reported that two people harassed them on Symfony Slack. We talked with person A and they admitted the wrongdoing, apologized to the victim and promised to behave in the future. Person B rejected the accusations but given the proofs in our possession, we banned them from the Symfony Slack for 3 months."
You only talk about "a person", "person A", "person B", etc. No names, no genders, no countries of origin, no details at all. But at the same time, you offer full transparency to the community, which is much needed in these cases.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree. I think we should do both. I see a value of keeping a non-anonymized report as well. That one should be confidential.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That being said .. in some cases we will have to make the anonymized version to just read "there was an incident" in order to protect the people involved.
the idea was also raised to produce a summary report now and then (maybe every X months). in a summary it is easier to mention more details without causing issues with privacy.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I fully disagree. No summaries please. We need full disclosure (full anonymous disclosure). The community must watch the enforcement team to ensure that they are not abusing their power.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The stated goal of the enforcement team imho is #1 protecting people involved in incidents #2 evolving the community. As such #1 is imho more important to #2 .. if full disclosure causes issues with #1, then #2 looses. in fact I think it may at times even be necessary for the enforcement team to lie in public to ensure #1.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lying is really just an edge case. in most cases simply omitting personal information will do the trick.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let me give you an example:
lets say someone is leaking personal information, like postal address or information about sexual orientation etc. in such a case the enforcement team might lie by saying the leaked data is actually incorrect, even if they know them to be correct.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's no need to lie. An anonymous report in that case would read like this:
Person A notified us that Person B was leaking some personal information about them in different electronic mediums. The Enforcement Team found this a violation of XXXX and banned Person B for 1 year form Symfony Slack, Symfony repositories at GitHub and Symfony Conferences.
As you can see, you can give a much needed transparency to the community without revealing anything or putting any person in danger.
A different thing is how the team will archive this case in the private records. Will the record say: "Real Person Name B was saying that Real Person Name A was gay. We verified that doing XXX and YYY and we banned Real Person Name B for one year".
If you don't want to store those details, replace "B was saying that A is gay" by "B was leaking personal information about A".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It might be necessary to lie in order to derail people from using the leaked information against the community member.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with Javier about transparency. I also agree with Lukas that privacy trumps transparency. We want to create a safe environment.
I would really like us to do both as Javier suggests. I've tried to update the texts so that is more clear.
About the Enforcement Team | ||
-------------------------- | ||
|
||
The :doc:`Symfony core team </contributing/code/core_team>` appoints enforcement |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we get some more details about the enforcement team members? For how long are they elected? Can their appointments be renewed? For how long or for how many times? etc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great questions. I do not have any answers to these questions. I felt that we assumed that members are elected until they resign.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We kind of left that process to the core team. I also think that generally I would expect this to not to be a time limited position (similar to the core team itself). And yes the core team could also remove someone. Not sure if we really want to include that process in here, but if someone feels strongly it should I am open to adding it.
I guess the question is then, does it require a majority, 2/3 majority, unanimous? is there a quorum? what is the vote duration? I do think that the vote itself should be secret from the outside, ie. the core team just presents the results but not who voted what.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we read what happens after, it seems tricky that's the core team's duty to select the enforcement team since alot of the core team is part / working with sensiolabs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the percentage of core team people working for sensiolabs is actually not quite that high and slowly decreasing.
@lsmith77 even if I appreciate your work on the diversity initiative and I sincerely want you to succeed and I want a CoC (and an enforcement group) put in place as soon as possible ... I feel this proposal goes against the values of the Symfony project because of the "full secrecy", "public lies", etc. |
@javiereguiluz do you disagree with the priorities of protecting people affected over transparency? If both can be done, all the better. My point is that there will be cases where transparency and protecting privacy will be at odds. And in this case I think we need to focus on protecting privacy because otherwise we fail at creating a safe environment and also we may also run into legal trouble at some point. These are lessons that other people who have worked in this area have concluded btw. |
.. image:: https://avatars3.githubusercontent.com/u/300279?s=400&v=4 | ||
:height: 150px | ||
:width: 150px | ||
:alt: Likas Kahwe Smith |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Likas
-> Lukas
🎉
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's an example 😛
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
;)
spaces (events, meetings, mailing lists, IRC, Slack, etc.) | ||
* A request to engage in mediation and/or an accountability plan. | ||
* On a case by case basis, the enforcement team might share information an incidents | ||
with employers or other 3rd parties in order to fulfill their mandate. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On a case by case basis, the enforcement team might share information an incidents with employers or other 3rd parties in order to fulfill their mandate.
This sounds like something that should only be done in extreme cases. I approve that it could be necessary if someone becomes very destructive, but it should be clear for all that this route should only be taken if there is really no alternative.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah .. indeed, the emphasis here is on order to fulfill their mandate
. ie. its not the job of the enforcement team to check if their employees are doing good marketing or even fixing the HR issues if companies.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with @Hipio on this one. Maybe there could be some clarification as to why it would be necessary to tell an employer about something that might not even be related to the job or the company at all? I see a lot of potential for abuse. Let's for a moment assume that the whole Drupal drama a while back (just citing the most recent example I can recall) caused somebody to lose their jobs because a person decided that this was worth reporting to their employer? Is this something the enforcement team would be comfortable with?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
noting again order to fulfill their mandate
.. is the mandate maybe not clear enough for you to be comfortable with this section?
I work at Liip and lots of Symfony community members work at Liip. Lets say someone from Liip repeatedly misbehaves quite severely at Symfony events. Maybe even so badly that they decide that person needs to be banned from future Symfony events. In that situation the enforcement team might decide that in order to protect the Symfony developers working at Liip need to be protected by informing Liip. This is something that would be considered "fulfilling their mandate".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, I see. Again, maybe it's the lack of examples that might cause confusion. With your explanation it's clear what you mean by fulfill their mandate
, thank you.
Now, I'm not sure if it's necessary to include such a specific example in the actual document or if it might be enough to clarify this when the question arises. For me, the explanation eliminates my concerns about the section. 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah .. its a bit tricky .. we can and should not try to cover every eventuality. BTW we are also planning to add a document of real world issues (mostly taken from the php women experience for now) which will be linked from the CoC.
Also as noted here #9340 (comment) .. it might be a good idea that we clarify our fundamental aims that overarch the entire process.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've updated this. Thank you for the feedback.
* Nothing (if we determine no code of conduct violation occurred). | ||
* A private reprimand from the Code of Conduct response team to the individual(s) | ||
involved. | ||
* A public reprimand. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* A public reprimand.
Is public shaming really something you want to do and if so, why? It will, most likely, tarnish their reputation and, possibly, affect their future employment. This could be just as bad, if not worse, than reporting someone to their employer.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah .. I also think this is something that isn't going to be done often .. if at all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This can also be illegal in some jurisdictions. As an example, Sweden (being my home jurisdiction and thus the one I am most familiar with) has the following law against defamation:
Penal code
Chapter 5
On DefamationSection 1
A person who points out someone as being a criminal or as having a reprehensible way of living or otherwise furnishes information intended to cause exposure to the disrespect of others, shall be
sentenced for defamation to a fine.
If he was duty-bound to express himself or if, considering the circumstances, the furnishing of information on the matter was defensible, and if he can show that the information was true or that he had reasonable grounds for it, no punishment shall be imposed.Section 2
If the crime defined in Section 1 is regarded as gross, a fine or imprisonment for at most two years shall be imposed for gross defamation.
In assessing whether the crime is gross, special consideration shall be given to whether the information, because of its content or the scope of its dissemination or otherwise, was calculated to bring about serious damage.
There is ample precedent that publicly shaming someone is considered defamatory, and the bar for it being defensible is fairly high. Furthermore, there's precedent that publishing a defamatory statement publicly on the internet constitutes gross defamation. Also, re-publishing a defamatory statement constitutes a separate offense, so if e.g. there were a post on the Symfony blog publicly reprimanding someone, and that entry is syndicated via RSS to say a Swedish tech news site, the news site could be liable.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Magnus, defamation requires that what you say is false. For example I can say that any of the Swedish serial killers is a criminal and a murderer. Given that this is a true fact, it's not defamation. I couldn't say the same about you, because that would be false and thus, defamation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not in Sweden.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The brand "Symfony" is registered at least in France: https://bases-marques.inpi.fr/Typo3_INPI_Marques/marques_fiche_resultats.html?index=1&refId=4253977_201734_fmark&y=139
The company "Symfony" too: https://www.societe.com/societe/symfony-834643579.html
Maybe also in other countries, I don't know.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
well the question is if the enforcement team is not just a bunch of individuals. they will not be employed by Symfony/Sensio for working on the enforcement team. now of course someone from the enforcement team could be allowed by their employer to do this on work time. but IANAL .. but I would suspect the jurisdiction is going to be fuzzy and its going to be likely a question of where a case is filed, similar to anything else that is happening on the internet when individuals communicate.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to double check this, because every action has (potential) legal consequences and we need to clarify everything. My guess is that team member actions fall under each person legal residence jurisdiction and abstract team actions under France jurisdiction.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@javiereguiluz I don't think so. If there is no legal entity to represent, each member would probably be responsible for their own actions, and considered partly responsible (and likely culpable) for "abstract team actions", under their own separate jurisdictions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This bullet is removed.
@Nyholm I think it might make sense to specify the "Our Pledge" of the enforcement team. As stated above, I think they are "#1 creating a safe environment by protecting people within the community #2 helping to educate the community" .. and in that order. We have something similar in the CoC proposal https://github.com/symfony/symfony/pull/24896/files#diff-510d358f0b955588b8abd91113ae6858R3 This might make it clearer under which situations which of the possible courses of action will be taken. |
Given that Slack messages are quickly lost, and in case it's useful for this discussion, I'm pasting here some public Slack messages of users concerned about being banned for saying the wrong words: UPDATE: I've deleted the screenshots because a person included in them asked it. |
In the Symfony Slack there's a very heated debate about cursing and the use of certain strong words. So maybe the CoC could clarify the position of Symfony over cursing. E.g. using words like "fuck" in GitHub comments, conference talks, Slack channels, etc. |
from the reporter on the appropriateness of our response, but our response will be | ||
determined by what will be best for community safety. | ||
|
||
The enforcement team keeps a private record of all incidents. By default all reports |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are there any GDPR considerations for this? If this private record contains personally identifiable information, any processing would require consent from the people involved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should really ask to some big open source project based in Europe which already has all this set up. I mean, we're not doing anything special, new or different. This CoC thing must be a "solved problem" in lots of other places. So let's copy them and move on 😄
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is fine according to GDPR. I'll claim it is for a common interest where the community's interest is larger then the individual's. This information is not classed as "extra sensitive" so we are fine.
Im also happy to let anybody challenge me in court over this.
I think Javier's suggestion is good, we will look what others have done and move on.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, no, we're not doing anything new, but the GDPR is new, so it's not unlikely that other projects might not have updated their CoCs to reflect this.
@Nyholm Are you sure about that? I presume you're referring to the grounds in 6.1f? From what I've read I'm not sure about that being applicable.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On this topic, I hade a discussion with a co-worker of mine, who (while not a lawyer) is working with making their (large) business GDPR compliant. His best guess is that as long as everyone involved has actively accepted the Code of Conduct, that would be a legal basis for processing this data. That however would mean that we'd have to have some mechanism of enforcing that acceptance in order to participate in the project.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Without more information, in my opinion that would be a big NO. Adding mandatory acceptance clauses in GitHub repos (as some companies do) creates a big friction and it feels very unwelcoming.
This could be solved as follows: in the web form used to report incidents, you add a big checkbox that the reporter must accept explicitly and that reads like this: "We'll preserve your full anonimity ... blah blah ... but you let us store the details of this report ... blah blah ... we'll comply with the GDPR regulation ..."
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The issue isn't so much storing information about the reporter, but rather the storing of information about the alleged infractor. While the reporter is likely to consent to storing data (if asked), the alleged infractor is not.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see. This is more complex than it looks :(
Another question: is there a standard process to appeal decisions? If you report something as offensive but the enforcement team doesn't considers offensive, can you ask for a reconsideration? can you appeal the decision somehow or are all decisions final? |
================ | ||
|
||
The role of the enforcement team is to make sure the :doc:`Code of Conduct </contributing/code_of_conduct/index>` | ||
is respected. If you think there is or has been a violation to the code of conduct |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure about the grammar, but in many cases, it's capitalized Code of Conduct
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks
You will receive a reply from the :doc:`enforcement team </contributing/code_of_conduct/enforcement_team>` | ||
acknowledging receipt as soon as possible, but within 24 hours. | ||
|
||
The team will immediately meet to review the incident and determine: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This means, that the incident will (has to?) be reviewed by more than one person?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we need to clarify this topic .. basically in general yes all enforcement team members will review each case .. unless someone has recused themselves .. or the reporter specifically asks for an enforcement team member to not be included and the enforcement team agrees.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had the same question while reading the doc. You contact one person but the whole team has access to the case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah lets clarify this section. basically the idea is that one can contact all or individual people from the enforcement team. if individual people are contacted they will first figure out if there are reasons not to involve the others together with the reporter and enforcement team members can recuse themselves.
now in case a reporter doesn't want a particular enforcement team member involved then generally this should be respected although maybe with some effort the trust could be build.
FYI send a small PR with a pledge which clarifies the priorities of the enforcement team: However I was unsure if this should be in the process or on the team page |
So among the more intensively discussed topics were the that being said, we might also need a process for such consultations. to give a practical example, one reason for a public reprimand may be that the topic is already public and there is an expectation for Symfony to make a statement what our stance is. For example lets say we have a similar case as https://en.wikipedia.org/wiki/Jacob_Appelbaum#Allegations_of_sexual_misconduct in our community. In such a scenario it would be important for the health of the community to have a process that in a timely manner enables a public response, which may include a reprimand. |
* An imposed vacation (i.e. asking someone to "take a week off" from a mailing | ||
list or Slack). | ||
* A permanent or temporary ban from some or all Symfony conference/community | ||
spaces (events, meetings, mailing lists, IRC, Slack, etc.) | ||
* A request to engage in mediation and/or an accountability plan. | ||
* On a case by case basis, the enforcement team might share information an incidents | ||
with employers or other 3rd parties in order to fulfill their mandate. | ||
* On a case by case basis, other actions may be possible but will usually be |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
...but will usually be coordinated...
-> ...but will always be coordinated...
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we said “usually” because we expect for extreme cases for there to be coordination but for trivial cases that might require a different response it might not make sense. But I if this is too much uncertainity to be acceptable, then I would be ok with making it “always”.
|
||
The :doc:`Symfony core team </contributing/code/core_team>` appoints enforcement | ||
team with candidates they see fit. The enforcement team will consists of at least | ||
be 3 persons. The team should be representing as many demographics as possible, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems really restricted.
I mean the person !== the company, if the company is in a private partnership with Sensiolabs, people from that company can not be part of the team ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the wording is "ideally" .. generally the idea is to ensure that business interest with not cloud behavior .. even if just subconsciously .. remember incidents can involved people from any company
About the Enforcement Team | ||
-------------------------- | ||
|
||
The :doc:`Symfony core team </contributing/code/core_team>` appoints enforcement |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we read what happens after, it seems tricky that's the core team's duty to select the enforcement team since alot of the core team is part / working with sensiolabs.
* Names (legal, nicknames, or pseudonyms) of any individuals involved. | ||
* If there were other witnesses besides you, please try to include them as well. | ||
* When and where the incident occurred. Please be as specific as possible. | ||
* Your account of what occurred. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This sentence feels strange as a foreign english speaker, is account
here meaning point of view
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
as account is being used here it means a report or description of an event or experience.
but if its confusing maybe lets replace account
with description
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
description
is probably good as well.
conflict, we will prioritize safety of community members over all other goals. | ||
|
||
If you think there is or has been a violation to the code of conduct please contact | ||
enforcement team or of you prefer contact only individual members of the enforcement team. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
small typo: if
------- | ||
|
||
Here are all the members of the Code of Conduct enforcement team. You can contact | ||
any of them by sending an email or tweet. You could also contact all of them at once |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would not recommend sending a tweet (even a DM means that one follow the other).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe should we provide a GPG key, to allow the reporter to encrypt his message and be sure that only the Symfony team will get it (for instance, homosexuality is forbidden in some countries).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good idea!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the low barrier to contact someone. I also like the idea of a GPG key. But IMHO that seams overkill and I guess that none will ever use it. But I still think we should have one. I suggest we add that after the initial PR to this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah GPG keys can be added by enforcement team members as part of their contact details.
-------------------------- | ||
|
||
The :doc:`Symfony core team </contributing/code/core_team>` appoints enforcement | ||
team with candidates they see fit. The enforcement team will consists of at least |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
typo: consist
|
||
The :doc:`Symfony core team </contributing/code/core_team>` appoints enforcement | ||
team with candidates they see fit. The enforcement team will consists of at least | ||
be 3 persons. The team should be representing as many demographics as possible, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
be
should be removed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
but then it should be represent
and not representing
team with candidates they see fit. The enforcement team will consists of at least | ||
be 3 persons. The team should be representing as many demographics as possible, | ||
ideally from different employers and not in a private partnership with Symfony | ||
and/or SensioLabs. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't understand why we should have a specific case for Symfony/SensioLabs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
agreed ... I think something went wrong there any way during some "refactoring"
how about:
The team should be representing as many demographics as possible, ideally from different employers and not in a private partnership
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know what are the long-term plans for Symfony (the project), but unlike the Apache project or Debian, it is managed by Symfony (the company) and SensioLabs.
I don't understand very well why the enforcement team (or any other team) should be independent of the owner of the project.
I've also the same feeling regarding the nomination of the enforcement team: all existing teams are appointed by the project leader (according to https://symfony.com/doc/current/contributing/code/core_team.html). Currently, it is Fabien.
The enforcement team will be appointed by the core team. Why not, but why not by the project leader directly, or by the members of all teams (core, docs, security)? I'm not against it, but it is a bit confusing.
Also, what about the final decision? Will the edit/kick/ban/etc be only proposed by the enforcement team and the final decision will still be up to Fabien (or any other group/team(s)/...), or will the enforcement team be able to enforce its decisions by itself?
IMO it would be easier to keep the original wording of Contributor Covenant:
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at [abuse@symfony.com]. [...] All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. [...]
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
Concretely, for Symfony it means:
- People report to the enforcement team (an abuse mail managed by a few trained members of the Symfony project "the enforcement team"?)
- The enforcement team propose an action (or to do nothing) to Fabien (or to the maintainer team?), it's up to Fabien (or to the maintainer team?) to decide
- If there is a problem involving a Symfony maintainer, it's up to Fabien to decide.
Just my 2 cents, having a CoC will already be a big step forward.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in Drupal Dries afaik does appoint the enforcement team. imho it would be better to stread this decision a bit wider, but it of course makes things simpler.
that being said, giving Fabien, or the maintainer team, the final say on all enforcement is imho not a good idea. getting enforcement right requires investing the necessary time not only in each specific case but also in educating yourself on the topic, attending relevant trainings etc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm willing to appoint the enforcement team. I'm not willing to be the one who has the final say. The enforcement team should have all the power regarding the process.
* When and where the incident occurred. Please be as specific as possible. | ||
* Your account of what occurred. | ||
* If there is a publicly available record (e.g. a mailing list archive or a | ||
public IRC or Slack log), please include a link. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would recommend a link + a screenhost or a local archive (HTML page), just in case the contents are tampered with afterwards, edited or even removed.
You will receive a reply from the :doc:`enforcement team </contributing/code_of_conduct/enforcement_team>` | ||
acknowledging receipt as soon as possible, but within 24 hours. | ||
|
||
The team will immediately meet to review the incident and determine: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had the same question while reading the doc. You contact one person but the whole team has access to the case.
spaces (events, meetings, mailing lists, IRC, Slack, etc.) | ||
* A request to engage in mediation and/or an accountability plan. | ||
* On a case by case basis, other actions may be possible but will usually be | ||
coordinated with the core-team. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Coordination should probably also include potential third-parties (like Symfony when something happened during an official event).
We'll respond within one week to the person who filed the report with either a | ||
resolution or an explanation of why the situation is not yet resolved. | ||
|
||
Once we've determined our final action, we'll contact the original reporter to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
actions?
|
||
Adopted by `Symfony`_ organizers on 21 February 2018. | ||
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
double white-line
Thank you for the reviews. I've updated the PR accordingly. |
-------------------------- | ||
|
||
The :doc:`Symfony project leader </contributing/code/core_team>` appoints enforcement | ||
team with candidates they see fit. The enforcement team will consist of at least |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I choose to use the singular "they" here.
The :doc:`Symfony core team </contributing/code/core_team>` appoints enforcement | ||
team with candidates they see fit. The enforcement team will consists of at least | ||
The :doc:`Symfony project leader </contributing/code/core_team>` appoints enforcement | ||
team with candidates they see fit. The enforcement team will consist of at least | ||
be 3 persons. The team should be representing as many demographics as possible, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The enforcement team will consist of at least 3 persons.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you
@@ -36,7 +36,8 @@ What happens after you file a report? | |||
You will receive a reply from the :doc:`enforcement team </contributing/code_of_conduct/enforcement_team>` | |||
acknowledging receipt as soon as possible, but within 24 hours. | |||
|
|||
The team will immediately meet to review the incident and determine: | |||
The team member receiving the report will immediately contact all or some other |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
extra space
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💯
by emailing **coc@symfony.com**. | ||
|
||
Lukas Kahwe Smith | ||
````````````````` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor details: we use ~~~~~~~~~~~~~~
for the third level heading in Symfony Docs.
|
||
The :doc:`Symfony project leader </contributing/code/core_team>` appoints enforcement | ||
team with candidates they see fit. The enforcement team will consist of at least | ||
3 persons. The team should be representing as many demographics as possible, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it OK to use 3 persons
instead of 3 people
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It already says "3 persons". Do you want it to say "3 people"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes ... but I'm wondering if 3 people
is more correct. That's what I'd do ... but I'm not native.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've changed to "3 people". I'll let a native speaker ask for a change if needed.
The :doc:`Symfony project leader </contributing/code/core_team>` appoints enforcement | ||
team with candidates they see fit. The enforcement team will consist of at least | ||
3 persons. The team should be representing as many demographics as possible, | ||
ideally from different employers and not in a private partnership. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't understand what this means -> and not in a private partnership
|
||
If you believe someone is violating the Code of Conduct we ask that you report | ||
it to the :doc:`enforcement team </contributing/code_of_conduct/enforcement_team>` | ||
by emailing, twitter, in person or any way you see fit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
twitter
-> Twitter
* Your description of what occurred. | ||
* If there is a publicly available record (e.g. a mailing list archive or a | ||
public IRC or Slack log), please include a link and a screenshot. | ||
* Any extra context you believe existed for the incident. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This -> * Any extra context you believe existed for the incident.
and this -> * Any other information you believe we should have.
look almost the same. I'd leave only the last one. This doc should be actionable and easy to understand because a person in a distress emotional state may have to read it.
spaces (events, meetings, mailing lists, IRC, Slack, etc.) | ||
* A request to engage in mediation and/or an accountability plan. | ||
* On a case by case basis, other actions may be possible but will usually be | ||
coordinated with the core team and Symfony. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
... will usually be coordinated with the core team and Symfony
-> what does "Symfony" mean in this context? The company behind Symfony?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I was referring to the Symfony (company)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
then, let's please reword as: coordinated with the core team and the Symfony company.
| **Email:** smith@pooteeweet.org | ||
| **Twitter:** @lsmith | ||
|
||
About the Enforcement Team |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A final question: the Symfony leader appoints Enforcement Team members ... but for how long? Do these appointments expire? Do they have to be renovated every year, every two years? If an appointment expire, can the same person be appointed? If yes, Unlimited times? Consecutive times?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would like the project leader to decide. Same as with other teams.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it makes sense to now and then change the composition but changing the composition comes with a lot of complexity, especially with handling access to older reports. so imho I would for now lean towards simply making it indefinite (just like for the core team). I assume through change of focus and time available from enforcement team members, there will be some fluctuation anyway. and of course if there are concerns, Fabien can do it whenever he thinks its important.
team with candidates they see fit. The enforcement team will consist of at least | ||
3 persons. The team should be representing as many demographics as possible, | ||
ideally from different employers and from employers without in close partnerships | ||
with each other. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@javiereguiluz I tried to clarify this sentence. Does it make sense?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd say it's harder to understand now :( Is this detail really necessary? We say "different demographics" earlier without detailing anything ... maybe saying "different employers" here is enough?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
:/
You are probably correct. Thank you. =)
This PR was submitted for the master branch but it was squashed and merged into the 2.7 branch instead (closes #9394). Discussion ---------- Adding Code of Conduct Adding the Contributor Covenant Code of Conduct version 1.4. Relates to symfony/diversity#1 **TODO** - [x] Add the link to the enforcement team page - [x] Add the link to the enforcement process - [x] Add the link to concrete real-world examples of unwanted behavior - [x] Change "Project maintainers" to "Enforcement team members" Part of #9340 and #9393 Replaces symfony/symfony#24896 Commits ------- 02e4860 update contributor covenant link & documents fix 2de768f change project team to enforcement team 0e7b539 add link to core team e61a403 Replace ethnicity with ethnic origin 2f8aa5d Change "race" to "ethnic origin" 1b0e633 Change "project's leadership" to "core team" 464ea45 add link to examples document eba3ecf Adding Code of Conduct
I need to merge this PR (right now the docs are broken in 2.7). Can we remove the placeholder text and keep the list of members empty for now? |
=============== | ||
|
||
This page will have our code of conduct. At the moment it is a place holder for | ||
https://github.com/symfony/symfony/pull/24896 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can be replaced/changed/removed now that the code of conduct has been merged.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rebasing this PR on 2.7 would help I think.
emptied the team list Nyholm#3 |
and yeah .. the PR needs to be pointed at the 2.7 branch and rebased accordingly. |
Thank you for the reviews and the fixes. |
ba6572b
to
2dbe26a
Compare
Finally! Squashed commits and rebased to 2.7 |
Thank you @Nyholm. |
…onduct (Nyholm) This PR was merged into the 2.7 branch. Discussion ---------- Adding guidelines for reporting violations of code of conduct We need some guidelines on how to report a violation of the code of conduct. These are adapted from [Stumptown Syndicate](http://stumptownsyndicate.org/code-of-conduct/reporting-guidelines/) and the [Django Software Foundation](https://www.djangoproject.com/conduct/reporting/). FYI @lsmith77 This is related to symfony/diversity#2 ## TODO - [ ] Add the enforcement team instead of the placeholders - [ ] Add the code of conduct instead of the place holder Commits ------- 2dbe26a Adding guidelines for reporting violations of code of conduct
We need some guidelines on how to report a violation of the code of conduct. These are adapted from Stumptown Syndicate and the Django Software Foundation.
FYI @lsmith77
This is related to https://github.com/symfony/diversity/issues/2
TODO