|
1 | 1 | # Maintainers |
2 | 2 |
|
3 | | -<!-- Please keep all lists sorted alphabetically by github --> |
4 | | - |
5 | | -## Active Maintainers |
6 | | - |
7 | | -<!-- anoncreds-maintainers group has maintainer access to anoncreds-rs repo --> |
8 | | - |
9 | | -| Name | Github | LFID | |
10 | | -| ---------------- | ---------------- | ---------------- | |
11 | | -| Andrew Whitehead | andrewwhitehead | cywolf | |
12 | | -| Berend Sliedrecht| berendsliedrecht | beri14 | |
13 | | -| Darko Kulic | dkulic | dkulic | |
14 | | -| Stephen Curran | swcurran | swcurran | |
15 | | -| Timo Glastra | TimoGlastra | TimoGlastra | |
16 | | -| Wade Barnes | WadeBarnes | WadeBarnes | |
17 | | - |
18 | | -## Becoming a Maintainer |
19 | | - |
20 | | -AnonCreds welcomes community contribution. |
21 | | -Each community member may progress to become a maintainer. |
22 | | - |
23 | | -How to become a maintainer: |
24 | | - |
25 | | -- Contribute significantly to the code in this repository. |
26 | | - |
27 | | -### Maintainers contribution requirement |
28 | | - |
29 | | -The requirement to be able to be proposed as a maintainer is: |
30 | | - |
31 | | -- 5 significant changes on code have been authored in this repos by the proposed maintainer and accepted (merged PRs). |
32 | | - |
33 | | -### Maintainers approval process |
34 | | - |
35 | | -The following steps must occur for a contributor to be "upgraded" as a maintainer: |
36 | | - |
37 | | -- The proposed maintainer has the sponsorship of at least one other maintainer. |
38 | | - - This sponsoring maintainer will create a proposal PR modifying the list of |
39 | | - maintainers. (see [proposal PR template](#proposal-pr-template).) |
40 | | - - The proposed maintainer accepts the nomination and expresses a willingness |
41 | | - to be a long-term (more than 6 month) committer by adding a comment in the proposal PR. |
42 | | - - The PR will be communicated in all appropriate communication channels |
43 | | - including at least [anoncreds-maintainers channel on Hyperledger Discord](https://discord.gg/hyperledger), |
44 | | - the [mailing list](https://lists.hyperledger.org/g/anoncreds) |
45 | | - and any maintainer/community call. |
46 | | -- Approval by at least 3 current maintainers within two weeks of the proposal or |
47 | | - an absolute majority (half the total + 1) of current maintainers. |
48 | | - - Maintainers will vote by approving the proposal PR. |
49 | | -- No veto raised by another maintainer within the voting timeframe. |
50 | | - - All vetoes must be accompanied by a public explanation as a comment in the |
51 | | - proposal PR. |
52 | | - - A veto can be retracted, in that case the voting timeframe is reset and all approvals are removed. |
53 | | - - It is bad form to veto, retract, and veto again. |
54 | | - |
55 | | -The proposed maintainer becomes a maintainer either: |
56 | | - |
57 | | - - when two weeks have passed without veto since the third approval of the proposal PR, |
58 | | - - or an absolute majority of maintainers approved the proposal PR. |
59 | | - |
60 | | -In either case, no maintainer raised and stood by a veto. |
61 | | - |
62 | | -## Removing Maintainers |
63 | | - |
64 | | -Being a maintainer is not a status symbol or a title to be maintained indefinitely. |
65 | | - |
66 | | -It will occasionally be necessary and appropriate to move a maintainer to emeritus status. |
67 | | - |
68 | | -This can occur in the following situations: |
| 3 | +This file defines the Maintainers processes (adding, removing) and duties for all repositories in the Hyperledger AnonCreds Project, |
| 4 | +as well as the list of Maintainers for this repository. "Maintainers" are defined as any individuals with escalated GitHub privileges above |
| 5 | +"READ" in Hyperledger AnonCreds repositories. Maintainers **MUST** abide by the Hyperledger AnonCreds Project Charter. |
| 6 | + |
| 7 | +All other Hyperledger AnonCreds Project repository MAINTAINERS.md files point to this file. |
| 8 | + |
| 9 | +## Maintainers for this Repository |
| 10 | + |
| 11 | +Maintainers for this repository are listed in the [Access Control YAML file]. |
| 12 | +Search in the file for this repository. |
| 13 | + |
| 14 | +[Access Control YAML file]: https://github.com/hyperledger/governance/blob/main/access-control.yaml |
| 15 | + |
| 16 | +## The Duties of a Hyperledger AnonCreds Maintainers |
| 17 | + |
| 18 | +Maintainers are expected to fulfill the following responsibilities for the repositories they oversee. The duties are listed in more or less priority order: |
| 19 | + |
| 20 | +- Review, respond, and act on any security vulnerabilities reported against the repository. |
| 21 | +- Review, provide feedback on, and merge or reject GitHub Pull Requests from |
| 22 | + Contributors. |
| 23 | +- Review, triage, comment on, and close GitHub Issues |
| 24 | + submitted by Contributors. |
| 25 | +- When appropriate, lead/facilitate architectural discussions in the community. |
| 26 | +- When appropriate, lead/facilitate the creation of a product roadmap. |
| 27 | +- Create, clarify, and label issues to be worked on by Contributors. |
| 28 | +- Ensure that there is a well defined (and ideally automated) product test and |
| 29 | + release pipeline, including the publication of release artifacts. |
| 30 | +- When appropriate, execute the product release process. |
| 31 | +- Maintain the repository CONTRIBUTING.md file and getting started documents to |
| 32 | + give guidance and encouragement to those wanting to contribute to the product, and those wanting to become maintainers. |
| 33 | +- Contribute to the product via GitHub Pull Requests. |
| 34 | +- Monitor requests from the Hyperledger Technical Oversight Committee about the |
| 35 | +contents and management of Hyperledger repositories, such as branch handling, |
| 36 | +required files in repositories and so on. |
| 37 | +- Contribute to the Hyperledger Project's Quarterly Report. |
| 38 | + |
| 39 | +## Becoming a Hyperledger AnonCreds Maintainer |
| 40 | + |
| 41 | +This community welcomes contributions. Interested contributors are encouraged to |
| 42 | +progress to become maintainers. To become a maintainer the following steps |
| 43 | +occur, roughly in order. |
| 44 | + |
| 45 | +- The proposed maintainer establishes their reputation in the community, |
| 46 | + including authoring five (5) significant merged pull requests, and expresses |
| 47 | + an interest in becoming a maintainer for the repository. |
| 48 | +- A PR is created to update the [Access Control YAML file] to add the proposed maintainer on team with appropriate privileges in the relevant repositories. |
| 49 | +- The PR is authored by an existing maintainer or has a comment on the PR from an existing maintainer supporting the proposal. |
| 50 | +- The PR is authored by the proposed maintainer or has a comment on the PR from the proposed maintainer confirming their interest in being a maintainer. |
| 51 | + - The PR or comment from the proposed maintainer must include their |
| 52 | + willingness to be a long-term (more than 6 month) maintainer. |
| 53 | +- Once the PR and necessary comments have been received, an approval time frame begins. |
| 54 | +- The PR **MUST** be communicated on all appropriate communication channels, including relevant community calls, chat channels and mailing lists. Comments of support from the community are welcome. |
| 55 | +- The PR is merged and the proposed maintainer becomes a maintainer if either: |
| 56 | + - At least three (3) TSC or project Maintainers approve the PR or provide an approval comment on the PR. |
| 57 | +- If the PR does not get the requisite PR approvals, it may be closed. |
| 58 | + |
| 59 | +## Removing Hyperledger AnonCreds Maintainers |
| 60 | + |
| 61 | +Being a maintainer is not a status symbol or a title to be carried |
| 62 | +indefinitely. It will occasionally be necessary and appropriate to move a |
| 63 | +maintainer to emeritus status. This can occur in the following situations: |
69 | 64 |
|
70 | 65 | - Resignation of a maintainer. |
71 | 66 | - Violation of the Code of Conduct warranting removal. |
72 | 67 | - Inactivity. |
73 | 68 | - A general measure of inactivity will be no commits or code review comments |
74 | | - for two reporting quarters, although this will not be strictly enforced if |
| 69 | + for one reporting quarter. This will not be strictly enforced if |
75 | 70 | the maintainer expresses a reasonable intent to continue contributing. |
76 | 71 | - Reasonable exceptions to inactivity will be granted for known long term |
77 | 72 | leave such as parental leave and medical leave. |
78 | | -- Other unspecified circumstances. |
79 | | - |
80 | | -As for adding a maintainer, the record and governance process for moving a |
81 | | -maintainer to emeritus status is recorded using review approval in the PR making that change. |
82 | | - |
83 | | -Returning to active status from emeritus status uses the same steps as adding a |
84 | | -new maintainer. |
85 | | - |
86 | | -Note that the emeritus maintainer always already has the required significant contributions. |
87 | | -There is no contribution prescription delay. |
88 | | - |
89 | | -## Proposal PR template |
90 | | - |
91 | | -```markdown |
92 | | -I propose to add [maintainer github handle] as a AnonCreds project maintainer. |
93 | | - |
94 | | -[maintainer github handle] contributed with many high quality commits: |
95 | | - |
96 | | -- [list significant achievements] |
97 | | - |
98 | | -Here are [their past contributions on AnonCreds project](https://github.com/hyperledger/anoncreds-rs/commits?author=[user github handle]). |
99 | | - |
100 | | -Voting ends two weeks from today. |
101 | | - |
102 | | -For more information on this process see the Becoming a Maintainer section in the MAINTAINERS.md file. |
103 | | -``` |
| 73 | +- Other circumstances at the discretion of the other Maintainers. |
| 74 | + |
| 75 | +The process to remove a maintainer from active status is comparable to the process for adding a maintainer, outlined above. In the case of voluntary |
| 76 | +resignation, the Pull Request can be merged following a maintainer PR approval. If the removal is for any other reason, the following steps **SHOULD** be followed: |
| 77 | + |
| 78 | +- A PR is created to update the [Access Control YAML file] to remove the maintainer from the appropriate teams. |
| 79 | +- The PR is authored by, or has a comment supporting the proposal from, an existing maintainer or Hyperledger GitHub organization administrator. |
| 80 | +- Once the PR and necessary comments have been received, the approval timeframe begins. |
| 81 | +- The PR **MAY** be communicated on appropriate communication channels, including relevant community calls, chat channels and mailing lists. |
| 82 | +- The PR is merged and the maintainer is removed if: |
| 83 | + - The PR is approved by the maintainer to be removed, OR |
| 84 | + - At least three (3) TSC or AnonCreds Project maintainer PR approvals or approval comments have been recorded. |
| 85 | +- If the PR does not get the requisite PR approvals, it may be closed. |
| 86 | + |
| 87 | +Returning to active maintainer status after being removed uses the same steps as adding a |
| 88 | +new maintainer. Note that the emeritus maintainer already has the 5 required |
| 89 | +significant changes as there is no contribution time horizon for those. |
0 commit comments