|
| 1 | +# Loaders Team |
| 2 | + |
| 3 | +For the current list of Team members, see the project |
| 4 | +[README.md](./README.md). |
| 5 | + |
| 6 | +## Members |
| 7 | + |
| 8 | +The [nodejs/loaders](https://github.com/nodejs/loaders) GitHub |
| 9 | +repository is maintained by the Team and additional Members who are |
| 10 | +added on an ongoing basis. |
| 11 | + |
| 12 | +There are two types of Members: |
| 13 | + |
| 14 | +### Active Members |
| 15 | + |
| 16 | +* Invited to all meetings |
| 17 | +* Can participate in [consensus seeking process](#consensus-seeking-process) |
| 18 | +* Counted towards quorum in [Team Meetings](#team-meetings) |
| 19 | +* Participates in voting |
| 20 | + |
| 21 | +### Observers |
| 22 | + |
| 23 | +* Invited to all meetings |
| 24 | +* Can participate in [consensus seeking process](#consensus-seeking-process) |
| 25 | +* Not counted towards quorum in [Team Meetings](#team-meetings) |
| 26 | +* Cannot participate in voting |
| 27 | + |
| 28 | +## Team Membership |
| 29 | + |
| 30 | +Team Membership is not time-limited. There is no fixed size of the Team. |
| 31 | + |
| 32 | +There is no specific set of requirements or qualifications for Team Membership beyond these rules. |
| 33 | + |
| 34 | +Changes to Team membership should be proposed with an issue and labelled `loaders-agenda` |
| 35 | +to be included in the next [team meeting](#team-meetings). Decisions are made via the |
| 36 | +[Consensus Seeking Process](#consensus-seeking-process). If there are not objections in the |
| 37 | +issue new members may attend the meeting in which their membership is officially accepted. |
| 38 | + |
| 39 | +If a Team member is unable to attend a meeting where a planned membership decision is being made, |
| 40 | +then their consent is assumed. |
| 41 | + |
| 42 | +New Members to the team are initially accepted as Observers. |
| 43 | + |
| 44 | +Observers can request to be made Active Members following the above process. |
| 45 | + |
| 46 | +Active Members requesting to be made Observers following the above process are automatically approved |
| 47 | +by the Team and do not require consensus. |
| 48 | + |
| 49 | +Any Member requesting to be removed from the group following the above process are automatically approved |
| 50 | +by the Team and do not require consensus. |
| 51 | + |
| 52 | +## Team Meetings |
| 53 | + |
| 54 | +The Team meets bi-weekly on Zoom.us. A designated moderator |
| 55 | +approved by the Team runs the meeting. Each meeting should be |
| 56 | +published to YouTube. |
| 57 | + |
| 58 | +Items are added to the Team agenda that are considered contentious or |
| 59 | +are modifications of governance, contribution policy, Team membership, |
| 60 | +or release process. |
| 61 | + |
| 62 | +The intention of the agenda is not to approve or review all patches; |
| 63 | +that should happen continuously on GitHub and be handled by the larger |
| 64 | +group of Collaborators. |
| 65 | + |
| 66 | +Any community member or contributor can ask that something be added to |
| 67 | +the next meeting's agenda by logging a GitHub Issue. Any Collaborator, |
| 68 | +Team member or the moderator can add the item to the agenda by adding |
| 69 | +the ***loaders-agenda*** tag to the issue. |
| 70 | + |
| 71 | +Prior to each Team meeting the moderator will share the agenda with |
| 72 | +members of the Team. Team members can add any items they like to the |
| 73 | +agenda at the beginning of each meeting. The moderator and the Team |
| 74 | +cannot veto or remove items. |
| 75 | + |
| 76 | +The Team may invite persons or representatives from certain projects to |
| 77 | +participate in a non-voting capacity. |
| 78 | + |
| 79 | +Decisions in meetings are made via the [Consensus Seeking Process](#Consensus-Seeking-Process) |
| 80 | +and require a quorum of 50% of Active Members. |
| 81 | + |
| 82 | +The moderator is responsible for summarizing the discussion of each |
| 83 | +agenda item and sends it as a pull request after the meeting. |
| 84 | + |
| 85 | +## Consensus Seeking Process |
| 86 | + |
| 87 | +The Team follows a |
| 88 | +[Consensus Seeking](http://en.wikipedia.org/wiki/Consensus-seeking_decision-making) |
| 89 | +decision-making model. |
| 90 | + |
| 91 | +When an agenda item has appeared to reach a consensus, the moderator |
| 92 | +will ask "Does anyone object?" as a final call for dissent from the |
| 93 | +consensus. |
| 94 | + |
| 95 | +If an agenda item cannot reach a consensus, a Team member can call for |
| 96 | +the item to be decided by a vote or to table the issue to the next |
| 97 | +meeting. In both cases the decision must be seconded by a majority of the Team |
| 98 | +or else the discussion will continue. Simple majority wins. Only Active |
| 99 | +Members participate in a vote. |
| 100 | + |
| 101 | +## Pull Requests |
| 102 | + |
| 103 | +This section details expectations for team members involved in any pull |
| 104 | +requests that relate to the group's [scope][loaders-team-purpose] and |
| 105 | +[implementation work][loaders-team-plan]. |
| 106 | + |
| 107 | +The following expectations apply to all team members involved in a related pull |
| 108 | +requests in [this Repository][nodejs-loaders]. This section does |
| 109 | +not apply to [the Node.js core repository](https://github.com/nodejs/node). |
| 110 | + |
| 111 | +These expectations are intended to ensure that all concurrent efforts align |
| 112 | +with the overall direction of the group for delivering a cohesive and predictable |
| 113 | +user experience for ECMAScript, CommonJS, and other loaders supported by Node.js. |
| 114 | + |
| 115 | +Pull requests not included under the _special exemptions_ section below must |
| 116 | +reach consensus in a meeting in order to be merged into this repository. A pull |
| 117 | +request that is is unable to reach consensus cannot be merged into this |
| 118 | +repository. |
| 119 | + |
| 120 | +### Special Exemptions to the PR landing process |
| 121 | + |
| 122 | +Special exception is made for pull requests seeking to make any of the following |
| 123 | +changes to this repository: |
| 124 | + |
| 125 | +- Errata fixes. |
| 126 | +- Editorial changes. |
| 127 | +- Meeting minutes. |
| 128 | +- Updates to the team lists via the `ncu-sync` tool. |
| 129 | +- Doc Fixes |
| 130 | +- Tests |
| 131 | +- Fixing Conflicts with a rebase |
| 132 | + |
| 133 | +These pull requests may be merged without being presented at a meeting if a |
| 134 | +reasonable time is given for review and there no dissent. The time period seen |
| 135 | +as reasonable for review varies on a case by case basis as determined by the |
| 136 | +author. A member may request a specific time period for review of such a pull |
| 137 | +request not to exceed the next meeting date. If a time for review is requested, |
| 138 | +members must wait for that time period to pass or review be completed prior to |
| 139 | +that time. |
| 140 | + |
| 141 | +<a id="developers-certificate-of-origin"></a> |
| 142 | +## Developer's Certificate of Origin 1.1 |
| 143 | + |
| 144 | +By making a contribution to this project, I certify that: |
| 145 | + |
| 146 | +* (a) The contribution was created in whole or in part by me and I |
| 147 | + have the right to submit it under the open source license |
| 148 | + indicated in the file; or |
| 149 | + |
| 150 | +* (b) The contribution is based upon previous work that, to the best |
| 151 | + of my knowledge, is covered under an appropriate open source |
| 152 | + license and I have the right under that license to submit that |
| 153 | + work with modifications, whether created in whole or in part |
| 154 | + by me, under the same open source license (unless I am |
| 155 | + permitted to submit under a different license), as indicated |
| 156 | + in the file; or |
| 157 | + |
| 158 | +* (c) The contribution was provided directly to me by some other |
| 159 | + person who certified (a), (b) or (c) and I have not modified |
| 160 | + it. |
| 161 | + |
| 162 | +* (d) I understand and agree that this project and the contribution |
| 163 | + are public and that a record of the contribution (including all |
| 164 | + personal information I submit with it, including my sign-off) is |
| 165 | + maintained indefinitely and may be redistributed consistent with |
| 166 | + this project or the open source license(s) involved. |
| 167 | + |
| 168 | + |
| 169 | +<!-- Links --> |
| 170 | + |
| 171 | +[nodejs-loaders]: https://github.com/nodejs/loaders |
| 172 | +[nodejs-core]: https://github.com/nodejs/node |
| 173 | +[loaders-team-purpose]: ./README.md#purpose |
| 174 | +[loaders-team-plan]: ./doc/design.md |
0 commit comments