/governance

Creative Commons Attribution 4.0 InternationalCC-BY-4.0

Bluesky Governance

The purpose of this repository is to formalize the governance process that the Bluesky project has used informally since its inception. This document clarifies how decisions are made and how the various elements of our community interact. It is adapted from GitHub's Minimum Viable Governance.

What's Changing?

In practice, very little.

Bluesky will continue to be developed in reponse to the needs of the staff and users at institutions that use it. We are taking the process we have always informally used, writing it down, and making a stronger attempt to follow it.

Why?

More facilities are investing effort into Bluesky and projects that build upon Bluesky. We want to communicate clearly how the project's direction is set and how development is managed. We want to formalize and document the path future Contributors can follow to become more active and influential in the project.

This document means to formalize that Bluesky is a multi-facility, community-driven project.

Summary

For details, start with CHARTER.md.

  • Each repository has a written list of Maintainers who manage contributions to the repository. The Maintainers have lattitude to define the process that works best for each repository (e.g. how much code review). The Maintainers operate by consensus. If they are unable to reach consensus, they must escalate to the Technical Steering Committee. They don't resolve conflicts by vote.
  • A Technical Steering Committee---composed of experienced Contributors with specific technical knowledge about Bluesky---attempts to resolve questions by consensus, but if consensus fails they can vote.
  • The Project Advisory Board---composed of management-level stakeholders---oversees project policy and provides advice and concurrence on big-picture development priorities.

Status

These documents are in active development. They are being adapted from GitHub's Minimum Viable Governance. We are in Step 4 of this process:

  1. Develop draft at NSLS-II.
  2. Collect input and/or buy-in from existing Collaborators via conversations, GitHub Issues on this repository, and the Nikea Slack.
  3. Make any necessary modifications.
  4. Set initial membership of Technical Steering Committee, Project Advisory Board, and (for each repo) Maintainers.