Code of conduct
***************

.. contents::
   :depth: 2
   :local:


Introduction
============

The Charliecloud project is committed to a safe, ethical, and harassment-free
experience for everyone, not only because it is the right thing to do, but
also because that is the most productive way to build open source software. We
want a work environment that is not merely free from hostility but rather one
that is actively welcoming and inclusive, one that empowers people to provide
outstanding public service.

Such an atmosphere requires an open exchange of ideas balanced by respect and
thoughtful guidelines. If we have openness without respect, participants
receiving intentional or unintentional hurtful behavior may reasonably
withdraw. If we have overly intrusive rules, people may feel unwelcome.

This code of conduct summarizes expectations for everyone participating in the
Charliecloud project. Importantly, these expectations apply regardless of
other norms, policies, or codes of conduct that participants may be subject to
(e.g., imposed by employers). We have deliberately chosen a plain-language
approach to promote a culture of inclusion and respect.

We expect *all* participants in the Charliecloud project to exhibit the
professional behaviors described in this code. This includes everyone
participating in all Charliecloud venues, both physical and virtual, including
events and meetings, offices where Charliecloud work is being done, mailing
lists and private e-mail, chat rooms (e.g. Mattermost or Slack), and code
repositories.

Some Charliecloud venues may have additional rules, which will be clearly
available. Participants in these venues are responsible for knowing and
abiding by them as well.

While this code applies to Charliecloud venues, a productive and inclusive
culture requires Charliecloud community members to be trustworthy. Therefore,
members’ professionalism outside Charliecloud is also relevant to the
Charliecloud community.

This code of conduct is maintained and enforced by the Charliecloud Technical
Steering Committee (TSC).


Behavioral expectations
=======================

In general, *be kind*. Do your best to understand how others would like to be
treated, and treat them that way. This differs from the “golden rule” in that
the guiding principle is to treat others according to *their* preferences
rather your own.

It is impractical to list in full everything that members of the Charliecloud
community can do to foster inclusion. However, when in doubt, we encourage
consideration of these principles:

   * Practice empathy, humility, and patience.

   * Assume competence and good faith of others.

   * Assume that everyone is doing their best work for the public.

   * Listen carefully, actively, and more than you speak.

   * Ask questions and seek to understand the context of others.

   * Actively encourage others who are speaking less to raise their ideas.

   * Treat others’ identities and cultures with respect. Make an effort to
     pronounce names correctly and refer to people by their chosen pronouns.

Inappropriate behavior includes:

   * Unwelcome remarks related to gender identity or expression, sexual
     orientation, disability, mental or physical illness, neuro(a)typicality,
     appearance, body size, age, race/ethnicity, national origin, accent or
     first language, genetics, marital/parental status, socioeconomic
     status/background, or similar attributes.

   * Unwelcome remarks regarding a person’s lifestyle choices and practices,
     including those related to food, health, religion, parenting, drugs, and
     employment.

   * Deliberate misgendering or use of “dead” or rejected names.

   * Touching people without their affirmative consent, or simulated touching
     (e.g. text descriptions like :code:`*hug*` or :code:`*backrub*`).

   * Gratuitous or off-topic sexual images, text, behavior, etc.

   * Sexual/romantic remarks, attention, or advances, unless *clearly*
     consented to and there is no possibility of actual *or perceived*
     coercion.

   * Violence of any kind.

   * Threats or incitement of violence. This includes shouting/yelling. It
     also includes encouraging a person to harm others or themselves, or
     asserting that a situation would be better if they did.

   * Intimidation, stalking, or following.

   * Unwelcome photography, audio/video recording, or activity logging.

   * Sustained disruption of discussion, meetings, presentations, etc.
     including “sealioning” or “gish galloping”.

   * Any pattern of inappropriate social contact, such as requesting/assuming
     inappropriate levels of intimacy with others.

   * Continued private or one-on-one communication after a request to cease.

   * Outing of any aspect of a person’s identity without their consent,
     notably including “dead” or rejected names, except as necessary to
     protect vulnerable people from abuse.

   * Condescending or mocking feedback.

   * Repeatedly interrupting or talking over others.

   * Publication of communications made with a reasonable consensus
     expectation of privacy.

   * Retaliation against people who object to (potentially) inappropriate
     behavior.

   * Bad faith complaints or reports of inappropriate behavior.

   * Harassment of any kind.

   * Coded, implicit, or indirect instances of the above behavior.

The Charliecloud project prioritizes the safety of those lower in a power
structure over the comfort of those higher. Generally, complaints regarding
the following will not be considered:

   * “Reverse” -isms, including “reverse racism”, “reverse sexism”, and
     “cisphobia”.

   * Reasonable communication of boundaries, such as “leave me alone,” “go
     away,” or “I’m not discussing this with you”.

   * Communicating in a “tone” you don’t find congenial.

   * Criticizing inappropriate behavior or oppressive practices/systems.

The Charliecloud project embraces weirdness but not unkindness or
inappropriateness. For example, neurodivergence is not an excuse for
inappropriate behavior, nor is “edgy” humor.

Finally, the Charliecloud project does not tolerate intolerance, because doing
so “`risks enabling the eventual dominance of intolerance, thereby undermining
the very principle of tolerance
<https://en.wikipedia.org/wiki/Paradox_of_tolerance>`_”.

Reporting actual or suspected inappropriate behavior
====================================================

If you encounter or suspect inappropriate behavior in Charliecloud venues or
by Charliecloud community members, whether directed at you or someone else,
please report it. Note that those subject to inappropriate behavior may not
feel safe reporting it themselves, making it important for others to do so,
especially those in a position of power.

When safety and power dynamics allow, challenging inappropriate behavior
immediately in context (e.g., in the same discussion that an inappropriate
comment occurs) can be highly effective. This does not have to be
confrontational; one useful strategy is to simply ask probing/clarifying
questions (e.g. “I don’t get that joke; can you explain it to me?”).

Whether or not already challenged, inappropriate behavior can be reported to
the Technical Steering Committee (TSC) at `tsc-private@lists.charliecloud.io
<mailto:tsc-private@lists.charliecloud.io>`_ (a private mailing list with only
TSC members and a few Linux Foundation oversight people) or to any TSC member
directly. Any TSC members involved will recuse themselves from handling the
issue. We will respond as promptly as practical.

Finally, inappropriate behavior can also be reported directly to the Linux
Foundation; see the LF Events `Code of Conduct
<https://events.linuxfoundation.org/about/code-of-conduct/>`_.

The TSC may reject reports made in bad faith (e.g., intended to silence
legitimate criticism) with or without response.

We will respect confidentiality requests that protect the targets of
inappropriate behavior to the maximum extent practical. We will similarly
protect the identities of such targets unless we have their affirmative
consent otherwise.

There is no period of time after which a report will no longer be considered
(i.e., no “statute of limitations”), though it is easier to investigate fresh
reports. Likewise, all good-faith reports of inappropriate behavior by
Charliecloud community members outside Charliecloud venues and/or at any point
in time will be taken seriously.


Consequences
============

Participants asked to stop any inappropriate behavior are expected to comply
immediately.

Anyone who violates these expectations may be sanctioned at the discretion of
the Charliecloud TSC or its delegates. If severity of the violation warrants,
this can include expulsion on first offense, warning individuals and/or the
Charliecloud community as a whole with appropriate detail, as well as
escalation to other oversight bodies such as employers, HPSF/LF, conference
organizers, and law enforcement.

Importantly, lack of response to any given incident does imply that the TSC
will not sanction future identical behavior.


Other resources
===============

The Charliecloud project also recommends the following for understanding
appropriate norms of professional conduct.

* `Ask a Manager <https://www.askamanager.org/>`_, an advice column by Alison Green.
* The `W3C code of conduct <https://www.w3.org/policies/code-of-conduct/>`_.


Sources
=======

This code of conduct is based on the `Geek Feminism model anti-harassment
policy
<https://geekfeminism.fandom.com/wiki/Community_anti-harassment/Policy>`_ and
the `Technology Transformation Service code
<https://web.archive.org/web/20250217154509/https://github.com/18F/code-of-conduct/blob/master/code-of-conduct.md>`_.
Both of these are in the public domain and were led by `Annalee Flower Horne
<https://flowerhorne.com/>`_.