Compare commits

...

24 Commits

Author SHA1 Message Date
luigi1111
0d500f5349 Merge pull request #9752
8d6855c CoC: only allow Administrators to merge changes to the CoC (tobtoht)
2025-10-07 15:46:02 -04:00
luigi1111
3e2faec4da Merge pull request #9750
e3db452 CoC: 'log an issue' -> 'open an issue' (tobtoht)
2025-10-07 15:45:29 -04:00
luigi1111
177e14ac56 Merge pull request #9749
5c32fbd CoC: do not encourage using real names or 'well-known aliases' (tobtoht)
2025-10-07 15:44:52 -04:00
luigi1111
d3b80ce528 Merge pull request #9478
b9bead5 CoC: prohibit anyone from committing patches to the project directly (tobtoht)
2025-10-07 15:44:07 -04:00
luigi1111
ebfb495512 Merge pull request #9744
dc5e15c CoC: remove constraint suggesting copyright can be 'owned collectively' (tobtoht)
2025-10-07 15:42:52 -04:00
luigi1111
9f1686ef78 Merge pull request #9743
53cb44c CoC: remove constraints on 'release history' (tobtoht)
2025-10-07 15:42:18 -04:00
luigi1111
574d50ffc2 Merge pull request #9742
a60c108 CoC: clarify 'project founders' (tobtoht)
2025-10-07 15:41:38 -04:00
luigi1111
46d794f98e Merge pull request #9737
70d3907 docs: remove 'creating stable releases' section (tobtoht)
2025-10-07 15:40:24 -04:00
luigi1111
3f4f292847 Merge pull request #9735
69020aa docs: remove 'Monero Maintainer Team' (tobtoht)
2025-10-07 15:39:37 -04:00
luigi1111
0089f38682 Merge pull request #9733
8154b90 docs: do not automatically promote contributors to maintainers (tobtoht)
2025-10-07 15:34:19 -04:00
luigi1111
8f3ae08521 Merge pull request #9732
9bd265d docs: don't allow maintainers to edit docs without review (tobtoht)
2025-10-07 15:32:40 -04:00
luigi1111
42ed3c70ef Merge pull request #9730
5345eba docs: allow maintainers to merge their own prs if queued (tobtoht)
2025-10-07 15:32:02 -04:00
tobtoht
8d6855c067 CoC: only allow Administrators to merge changes to the CoC 2025-01-29 08:20:09 +01:00
tobtoht
e3db452b52 CoC: 'log an issue' -> 'open an issue' 2025-01-29 02:23:39 +01:00
tobtoht
5c32fbd0b1 CoC: do not encourage using real names or 'well-known aliases' 2025-01-29 02:20:11 +01:00
tobtoht
b9bead529b CoC: prohibit anyone from committing patches to the project directly 2025-01-29 02:16:06 +01:00
tobtoht
dc5e15cc3d CoC: remove constraint suggesting copyright can be 'owned collectively' 2025-01-29 02:03:30 +01:00
tobtoht
53cb44c7b7 CoC: remove constraints on 'release history' 2025-01-29 01:56:06 +01:00
tobtoht
a60c108490 CoC: clarify 'project founders' 2025-01-29 01:52:24 +01:00
tobtoht
70d39076e0 docs: remove 'creating stable releases' section 2025-01-27 02:19:29 +01:00
tobtoht
69020aa0b3 docs: remove 'Monero Maintainer Team' 2025-01-26 17:27:46 +01:00
tobtoht
5345ebadef docs: allow maintainers to merge their own prs if queued 2025-01-26 15:07:41 +01:00
tobtoht
8154b90136 docs: do not automatically promote contributors to maintainers 2025-01-26 14:49:17 +01:00
tobtoht
9bd265d132 docs: don't allow maintainers to edit docs without review 2025-01-26 14:37:36 +01:00

View File

@@ -77,11 +77,6 @@ You should have received a copy of the GNU General Public License along with thi
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.
The "Monero Maintainer Team" is defined in this document as the following users:
- fluffypony
- moneromooo
- hyc
## Goals
C4 is meant to provide a reusable optimal collaboration model for open source software projects. It has these specific goals:
@@ -115,13 +110,12 @@ C4 is meant to provide a reusable optimal collaboration model for open source so
- The project MUST use a share-alike license, such as BSD-3, the GPLv3 or a variant thereof (LGPL, AGPL), or the MPLv2.
- All contributions to the project source code ("patches") MUST use the same license as the project.
- All patches are owned by their authors. There MUST NOT be any copyright assignment process.
- The copyrights in the project MUST be owned collectively by all its Contributors.
- Each Contributor MUST be responsible for identifying themselves in the project Contributor list.
### Patch requirements
- Maintainers MUST have a Platform account and SHOULD use their real names or a well-known alias.
- Contributors SHOULD have a Platform account and MAY use their real names or a well-known alias.
- Maintainers MUST have a Platform account.
- Contributors SHOULD have a Platform account.
- A patch SHOULD be a minimal and accurate answer to exactly one identified and agreed problem.
- A patch MUST adhere to the code style guidelines of the project if these are defined.
- A patch MUST adhere to the "Evolution of Public Contracts" guidelines defined below.
@@ -133,33 +127,23 @@ C4 is meant to provide a reusable optimal collaboration model for open source so
### Development process
- Change on the project MUST be governed by the pattern of accurately identifying problems and applying minimal, accurate solutions to these problems.
- To request changes, a user SHOULD log an issue on the project Platform issue tracker.
- To request changes, a user SHOULD open an issue on the project Platform issue tracker.
- The user or Contributor SHOULD write the issue by describing the problem they face or observe.
- The user or Contributor SHOULD seek consensus on the accuracy of their observation, and the value of solving the problem.
- Users MUST NOT log feature requests, ideas, or suggestions unrelated to Monero code or Monero's dependency code or Monero's potential/future dependency code or research which successfully implements Monero.
- Users MUST NOT log any solutions to problems (verifiable or hypothetical) of which are not explicitly documented and/or not provable and/or cannot be reasonably proven.
- Thus, the release history of the project MUST be a list of meaningful issues logged and solved.
- To work on an issue, a Contributor MUST fork the project repository and then work on their forked repository.
- To submit a patch, a Contributor MUST create a Platform pull request back to the project.
- A Contributor MUST NOT commit changes directly to the project.
- Patches MUST NOT be committed directly to the project.
- To discuss a patch, people MAY comment on the Platform pull request, on the commit, or elsewhere.
- To accept or reject a patch, a Maintainer MUST use the Platform interface.
- Maintainers SHOULD NOT merge their own patches except in exceptional cases, such as non-responsiveness from other Maintainers for an extended period (more than 30 days) or unless urgent as defined by the Monero Maintainers Team.
- Maintainers SHOULD NOT merge their own patches unless they were added to the merge queue on irc and have at least 3 approvals from contributors OR unless urgent as defined by the Monero Maintainers Team.
- Maintainers MUST NOT make value judgments on correct patches unless the Maintainer (as may happen in rare circumstances) is a core code developer.
- Maintainers MUST NOT merge pull requests in less than 168 hours (1 week) unless deemed urgent by at least 2 people from the Monero Maintainer Team.
- Maintainers MUST NOT merge pull requests in less than 168 hours (1 week) unless deemed urgent by at least 2 Maintainers.
- The Contributor MAY tag an issue as "Ready" after making a pull request for the issue.
- The user who created an issue SHOULD close the issue after checking the patch is successful.
- Maintainers SHOULD ask for improvements to incorrect patches and SHOULD reject incorrect patches if the Contributor does not respond constructively.
- Any Contributor who has value judgments on a correct patch SHOULD express these via their own patches.
- Maintainers MAY commit changes to non-source documentation directly to the project.
### Creating stable releases
- The project MUST have one branch ("master") that always holds the latest in-progress version and SHOULD always build.
- The project MUST NOT use topic branches for any reason. Personal forks MAY use topic branches.
- To make a stable release someone MUST fork the repository by copying it and thus become maintainer of this repository.
- Forking a project for stabilization MAY be done unilaterally and without agreement of project maintainers.
- A patch to a stabilization project declared "stable" MUST be accompanied by a reproducible test case.
### Evolution of public contracts
@@ -174,8 +158,8 @@ C4 is meant to provide a reusable optimal collaboration model for open source so
### Project administration
- The project founders MUST act as Administrators to manage the set of project Maintainers.
- The Monero Core Team MUST act as Administrators to manage the set of project Maintainers.
- The Administrators MUST ensure their own succession over time by promoting the most effective Maintainers.
- A new Contributor who makes a correct patch MUST be invited to become a Maintainer.
- Administrators MAY remove Maintainers who are inactive for an extended period of time, or who repeatedly fail to apply this process accurately.
- Administrators SHOULD block or ban "bad actors" who cause stress and pain to others in the project. This should be done after public discussion, with a chance for all parties to speak. A bad actor is someone who repeatedly ignores the rules and culture of the project, who is needlessly argumentative or hostile, or who is offensive, and who is unable to self-correct their behavior when asked to do so by others.
- Maintainers MUST NOT merge changes to this specification unless they are also Administrators.