Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# How the CODEOWNERS file works:
# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners

# Earthaccess default set of maintainers who will be automatically requested for review
* @betolink @jhkennedy @jrbourbeau @mfisher87 @chuckwondo

# Decision committee members
docs/governance/decisions/* @betolink @jhkennedy @mfisher87 @chuckwondo @asteiker @itcarroll
38 changes: 38 additions & 0 deletions docs/governance/governance-process.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Earthaccess Governance

Earthaccess is an open source project devoted to providing easy access to NASA's Earth data. Earthaccess, importantly, is developed _for_ and _by_ the community.

As with any project, from time to time, decisions will need to be made about direction, features, engineering choices. Eathaccess values reaching a community consensus on those decisions and including as many community perspectives as possible.

Examples of when the decision committee may need to be invoked:
* Issues that relate to **significant changes** to earthaccess framework, or way we develop earthaccess
* When there is a **disagreement** on a path forward

In order to reach consensus, Earthacess has a developed an _asynchronous_ decision processes, that in brief looks like:

1. GitHub issues can be labeled `needs: decision` by anyone to kick off the decision committee process
2. A PR will be automatically created with a blank decision record document and a member of the decision committee will be assigned at random to shepherd the decision through the processes
3. The assignee will create a _first_ draft of the decision record document, summarizing the relevant issues, discussion, and pull requests, and then mark it as ready for review
4. The decision committee will use PR review mechanics to discuss the decision and suggest changes or edit the decision record to reflect the decision and discussion
- Decision committee members endorse a decision as written by approving the PR
- Decision committee members can reject a decision _as written_ by requesting changes in the PR
- Decision committee member can express neutral discussion points by leaving PR comments
5. Once N decision committee members endorse a decision (approve the PR), the decision is considered "decided" and the PR should be merged to record the decisions
6. The PR assignee should update any relevant GitHub issues, discussion, and pull requests with the decision and a link back to the decision record PR

## Decision Committee Members

Decision committee members are listed in the [CODEOWNERS](../../.github/CODEOWNERS). Importantly, this is the _default_ members of the committee. The committee can change based on the issue itself by requesting additional reviewers.

Want to be part of decisions? Open a PR adding yourself to the CODEOWNERS file!


## Process in detail

### Kicking off the decision committee process

### Decision records

### The review process

### When a decision is made