diff --git a/CHARTER.md b/CHARTER.md index 009a86d..c5f6795 100644 --- a/CHARTER.md +++ b/CHARTER.md @@ -1,120 +1 @@ -# Technical Charter (the "Charter") for Magma Core Foundation -**a Series of LF Projects, LLC** - ---- -**Adopted March 15, 2021** - -This Charter sets forth the responsibilities and procedures for technical contribution to, and oversight of, the Magma open source project (github.com/magma), which has been established as Magma Core Foundation a Series of LF Projects, LLC (the “Project”). LF Projects, LLC (“LF Projects”) is a Delaware series limited liability company. All contributors (including committers, maintainers, and other technical positions) and other participants in the Project (collectively, “Collaborators”) must comply with the terms of this Charter. - -## 1. Mission and Scope of the Project - -a. The mission of the Project is to develop a platform that gives network operators an open, flexible and extendable mobile core network solution. - -b. The scope of the Project includes collaborative development under the Project License (as defined herein) supporting the mission, including documentation, testing, integration and the creation of other artifacts that aid the development, deployment, operation or adoption of the open source project. - -## 2. Technical Steering Committee - -a. The Technical Steering Committee (the “TSC”) will be responsible for all technical oversight of the open source Project. - -b. At the inception of the project, the Committers of the Project will be as set forth within the “CONTRIBUTING” file within the Project’s code repository. The initial Committers will vote to appoint five (5) of its members to serve as the voting members of the TSC for a period of one (1) year. The Project Committers may choose an alternative approach for determining the voting members of the TSC, and any such alternative approach will be documented in the CONTRIBUTING file. Any meetings of the Technical Steering Committee are intended to be open to the public, and can be conducted electronically, via teleconference, or in person. - -c. TSC projects generally will involve Contributors and Committers. The TSC may adopt or modify roles so long as the roles are documented in the CONTRIBUTING file. Unless otherwise documented: - -    i. Contributors include anyone in the technical community that contributes code, documentation, or other technical artifacts to the Project; - -    ii. Committers are Contributors who have earned the ability to modify ("commit") source code, documentation or other technical artifacts in a project’s repository; and - -    iii. A Contributor may become a Committer by a majority approval of the existing Committers. A Committer may be removed by a majority approval of the other existing Committers. - -d. Participation in the Project through becoming a Contributor and Committer is open to anyone so long as they abide by the terms of this Charter. - -e. The TSC may (1) establish work flow procedures for the submission, approval, and closure/archiving of projects, (2) set requirements for the promotion of Contributors to Committer status, as applicable, and (3) amend, adjust, refine and/or eliminate the roles of Contributors, and Committers, and create new roles, and publicly document any TSC roles, as it sees fit. - -f. The TSC may elect a TSC Chair from among its membership, who will preside over meetings of the TSC and will serve until the earlier of: (1) the Chair’s resignation; or (2) the Chair’s replacement by the TSC (either by majority vote or through an election process approved by the TSC); or (3) a term of (1) year. - -g. Responsibilities: The TSC will be responsible for all aspects of oversight relating to the Project, which may include: - -    i. coordinating the technical direction of the Project; - -    ii. approving project or system proposals (including, but not limited to, incubation, deprecation, and changes to a sub-project’s scope); - -    iii. organizing sub-projects and removing sub-projects; - -    iv. creating sub-committees or working groups to focus on cross-project technical issues and requirements; - -    v. appointing representatives to work with other open source or open standards communities; - -    vi. establishing community norms, workflows, issuing releases, and security issue reporting policies; - -    vii. approving and implementing policies and processes for contributing (to be published in the CONTRIBUTING file) and coordinating with the series manager of the Project (as provided for in the Series Agreement, the "Series Manager") to resolve matters or concerns that may arise as set forth in Section 8 of this Charter; - -    viii. discussions, seeking consensus, and where necessary, voting on technical matters relating to the code base that affect multiple projects; and - -    ix. coordinating any marketing, events, or communications regarding the Project. - -h. The TSC shall also form an advisory committee to help in driving the longer term technical vision of the project (the “Technical Advisory Committee”). - -i. The TSC Chair, or any other TSC or Technical Advisory Committee member so designated by the TSC, will serve as the primary communication contact between the Project and the Magma Core Foundation Fund Governing Board of the Linux Foundation ("Governing Board"). - - -## 3. TSC Voting - -a. While the Project aims to operate as a consensus-based community, if any TSC decision requires a vote to move the Project forward, the voting members of the TSC will vote on a one vote per voting member basis. - -b. Quorum for TSC meetings requires at least fifty percent of all voting members of the TSC to be present. The TSC may continue to meet if quorum is not met but will be prevented from making any decisions at the meeting. - -c. Except as provided in Section 7.c. and 8.a, decisions by vote at a meeting require a majority vote of those in attendance, provided quorum is met. Decisions made by electronic vote without a meeting require a majority vote of all voting members of the TSC. - -d. In the event a vote cannot be resolved by the TSC, any voting member of the TSC may refer the matter to the Series Manager for assistance in reaching - -## 4. Compliance with Policies - -a. This Charter is subject to the Series Agreement for the Project and the Operating Agreement of LF Projects. Contributors will comply with the policies of LF Projects as may be adopted and amended by LF Projects, including, without limitation the policies listed at https://lfprojects.org/policies/. - -b. The TSC may adopt a code of conduct (“CoC”) for the Project, which is subject to approval by the Series Manager. In the event that a Project-specific CoC has not been approved, the LF Projects Code of Conduct listed at https://lfprojects.org/policies will apply for all Collaborators in the Project. - -c. When amending or adopting any policy applicable to the Project, LF Projects will publish such policy, as to be amended or adopted, on its web site at least 30 days prior to such policy taking effect; provided, however, that in the case of any amendment of the Trademark Policy or Terms of Use of LF Projects, any such amendment is effective upon publication on LF Project’s web site. - -d. All Collaborators must allow open participation from any individual or organization meeting the requirements for contributing under this Charter and any policies adopted for all Collaborators by the TSC, regardless of competitive interests. Put another way, the Project community must not seek to exclude any participant based on any criteria, requirement, or reason other than those that are reasonable and applied on a non-discriminatory basis to all Collaborators in the Project community. - -e. The Project will operate in a transparent, open, collaborative, and ethical manner at all times. The output of all Project discussions, proposals, timelines, decisions, and status should be made open and easily visible to all. Any potential violations of this requirement should be reported immediately to the Series Manager. - -## 5. Community Assets - -a. LF Projects will hold title to all trade or service marks used by the Project (“Project Trademarks”), whether based on common law or registered rights. Project Trademarks will be transferred and assigned to LF Projects to hold on behalf of the Project. Any use of any Project Trademarks by Collaborators in the Project will be in accordance with the license from LF Projects and inure to the benefit of LF Projects. - -b. The Project will, as permitted and in accordance with such license from LF Projects, develop and own all Project GitHub and social media accounts, and domain name registrations created by the Project community. - -c. Under no circumstances will LF Projects be expected or required to undertake any action on behalf of the Project that is inconsistent with the tax-exempt status or purpose, as applicable, of the Joint Development Foundation or LF Projects, LLC. - -## 6. General Rules and Operations. - -a. The Project will: - -    i. engage in the work of the Project in a professional manner consistent with maintaining a cohesive community, while also maintaining the goodwill and esteem of LF Projects, LFP, Inc. and other partner organizations in the open source community; and - -    ii. respect the rights of all trademark owners, including any branding and trademark usage guidelines. - -## 7. Intellectual Property Policy - -a. Collaborators acknowledge that the copyright in all new contributions will be retained by the copyright holder as independent works of authorship and that no contributor or copyright holder will be required to assign copyrights to the Project. - -b. All contributions to the Project are subject to the following: - -    i. Subject to Section 7.b.ii, new inbound code contributions to the Project must be made using The 3-Clause BSD License, available at https://opensource.org/licenses/BSD-3-Clause (the “Project License”). - -    ii. The Project License currently applies to development under github.com/magma/magma. This TSC (or other TSCs that are created in the future) may accept contributions under different licenses for other repositories, including OSI-approved open source licenses, a creative commons license or another copyright-only license, the OAI Public License, or any other licensing terms that are acceptable to this TSC (or future TSCs) and the applicable contributors. - -    iii. All new inbound code contributions must also be accompanied by a TSC-approved contribution process which will bind the authorized contributor and, if not self-employed, their employer to the applicable license. - -    iv. All outbound code will be made available under the Project License. - -    v. Documentation will be received and made available by the Project under the Creative Commons Attribution 4.0 International License (available at http://creativecommons.org/licenses/by/4.0/). - -    vi. The Project may seek to integrate and contribute back to other open source projects (“Upstream Projects”). In such cases, the Project will conform to all license requirements of the Upstream Projects, including dependencies, leveraged by the Project. Upstream Project code contributions not stored within the Project’s main code repository will comply with the contribution process and license terms for the applicable Upstream Project. - -c. Contributed files should contain license information, such as SPDX short form identifiers, indicating the open source license or licenses pertaining to the file. - -## 9. Amendments - -This charter may be amended by a two-thirds vote of the entire TSC and is subject to approval by LF Projects. +This document has been superceded by CHARTER.md in the root of the magma repository. diff --git a/README.MD b/README.MD index f7310c8..8e62f56 100644 --- a/README.MD +++ b/README.MD @@ -1,86 +1,5 @@ -# DRAFT +This repository is no longer in use. Its uses have been absorbed into the repository https://github.com/magma/magma, particularly the document GOVERNANCE.md. That change was implemented under the ticket https://github.com/magma/magma/issues/15390 and project https://github.com/orgs/magma/projects/25. -# Magma Core Foundation Technical Steering Committee (TSC) +The contents of this document have been incorporated into and obsoleted by /magma/magma/GOVERNANCE.md. -The Magma Core TSC will be responsible for all technical oversight of the open source Project. - -## Magma Core Technical Charter - -The Magma Core Technical Charter is located in [CHARTER.md](CHARTER.md) - -## Collaboration Tools - -### Mailing List - -The TSC for Magma Core Foundation can be reached at their [mailing list](https://lists.magmacore.org/g/magma-tsc) - - -### Slack - -The Magma Core Foundation maintains a [Slack Workspace](https://join.slack.com/t/magmacore/shared_invite/zt-g76zkofr-g6~jYiS3KRzC9qhAISUC2A) for communication and collaboration. The Magma Core Foundation [Slack Workspace](https://join.slack.com/t/magmacore/shared_invite/zt-g76zkofr-g6~jYiS3KRzC9qhAISUC2A) is open for anyone to join. - - -### Calendars and Meetings - -The Magma Core Foundation maintains a [public calendar](https://calendar.google.com/calendar/embed?src=c_gbiu1t7a67ika1th2smldeh19s%40group.calendar.google.com&ctz=America%2FChicago) for TSC and community meetings. These meetings are open for anyone to join. - - -### CLA - -Everyone must sign the CLA prior to making a contribution. You may either sign the CLA on your own, or your company can sign it for you. At a high level, if you aren't covered by a CLA, you will be notified the first time you open a PR. Please see our [documentation on the process](./CLA.md). - -## Members - -The voting members of the Magma Core Foundation TSC are listed [here](https://github.com/magma/Governance/wiki/Magma-TSC-Members) - -## Policies and procedures - -The Magma Core Foundation TSC is governed by the Technical Charter. The Charter provides a foundational structure for the TSC on topics such as its scope, how to make decisions, and how to make changes to itself. At the same time, it grants the TSC a high degree of freedom when determining how to implement the policies of the Magma Core Foundation. - -The following policies and procedures have been adopted by the TSC. - -### Making decisions - -A majority of the eligible voting members participating at a meeting, or participating in an email vote separate from a meeting, shall constitute a quorum. A majority of the eligible voting members participating when a quorum is present shall be required to approve other actions of the Committee. - -### Merging PRs into the TSC repository - -Pull requests that do not change the charter or governance of the TSC can be merged into this repository provided the following conditions have been met: - -*There are no outstanding objections -*There are two approvals by TSC members -*The PR has been open for at least 72 hours -*Pull requests that change governance of the TSC (excluding the charter) must be open for at least 14 days, unless consensus is reached in a meeting with quorum of voting members. - -Pull requests that change the charter of the TSC must meet any requirements in the charter. - -If consensus cannot be reached, a pull request may still be landed after a vote by the Voting members to override outstanding objections. - -### Fast-Tracking PRs - -Special exception is made for pull requests seeking to make any of the following changes to this repository: - -Errata fixes. -Editorial changes. -Meeting minutes. -Updates to team lists. -Doc fixes. -Charter changes cannot be fast-tracked. - -To propose fast-tracking a pull request, apply the fast-track label. Then add a comment that TSC members may upvote. If someone disagrees with the fast-tracking request, remove the label. Do not fast-track the pull request in that case. - -The pull request may be fast-tracked if two TSC members approve the fast-tracking request. To land, the pull request itself still needs two TSC member approvals. - -TSC members may request fast-tracking of pull requests they did not author. In that case only, the request itself is also one fast-track approval. Upvote the comment anyway to avoid any doubt. - -### IP Policy - -The [Magma Foundation IP policy](https://github.com/magma/tsc/blob/master/CHARTER.md#7-intellectual-property-policy) is defined in the [charter](CHARTER.md), and it applies unless an exception is explicitly approved by the TSC. - -#### Copyright notices - -Magma Core Foundation follows the [community best practices](https://www.linuxfoundation.org/blog/2020/01/copyright-notices-in-open-source-software-projects/) of not requiring contributors to add a notice to each file. - -#### SPDX - -Contributors are encouraged (but not required) to adopt the practice of including [SPDX short form identifiers](https://spdx.org/ids-how) in their files. +Note that this document was DRAFT status and thus its provisions were not normative. diff --git a/TAC CHARTER.md b/TAC CHARTER.md index 7193d64..24b1f88 100644 --- a/TAC CHARTER.md +++ b/TAC CHARTER.md @@ -1,47 +1 @@ -# The Magma Foundation Technical Advisory Committee - -**Charter** - -This Charter was adopted on April 12th, 2021, by the Technical Steering Committee of the Magma Foundation. Capitalized terms used herein and not otherwise defined shall have the meanings set forth in The Magma Foundation Charter. - -## 1. Purpose and Scope. - -The Technical Advisory Committee of the Magma Foundation (the "TAC") is responsible for driving the longer term technical vision of the project on behalf of the Technical Steering Committee. The TAC is expected to coordinate closely with the Technical Steering Committee to maximize the longer term relevance and impact of Magma in furthering the democratization of connectivity. - -## 2 Membership - -(a) The TAC shall consist of up to 7 members. - -(b) TAC members shall be chosen by the TSC based on proven thought leadership in technical disciplines related to the mission of the Magma Core Foundation. - -(c) TAC members shall serve a not to exceed 2 years. At the end of their term a member of the TAC remains eligible to be re-selected as a member of the TAC. - -(d) At the end of a member's term of service, or upon their resignation, their seat shall be filled by a new member nominated by the remaining TAC members and approved by the TSC. - -(d) The initial TAC members shall be nominated by the Magma Project's Committers as defined in the Magma Technical Charter and approved by the TSC. The TSC shall assign staggered term dates to the initial TAC. - -## 3. Omitted - -## 4. Chairperson. - -The TAC shall select one of its members, subject to approval of the TSC, to serve as its chairperson (the "Chairperson"). The Chairperson is responsible for reporting progress and decisions of the Committee back to the TSC. The Chairperson shall serve a term of 1 year at which point a new Chairperson shall be elected by the TAC. - -## 5. Governing Board membership. - -The TSC shall assign its seat on the Magma Core Foundation's Governing Board to the Chairperson of the TAC. - -## 5. Meetings. - -The Chairperson shall give notice of the time and access information (or physical location, as appropriate) of each meeting, together with the agenda for the meeting, to members of the TAC in advance of the meeting. The TAC shall cause minutes to be kept of each meeting, recording the attendees of each meeting and any decisions approved by the Committee. Minutes may be in the form of an audio or video recording of the meeting. - -## 6. Decisions. - -A majority of the eligible voting members participating at a meeting, or participating in an email vote separate from a meeting, shall constitute a quorum. A majority of the eligible voting members participating when a quorum is present shall be required to approve other actions of the Committee. - -## 7. Policies. - -All activities of the Committee must operate under any rules, procedures and policies as may be approved by the Governing Board and confirmed by The Linux Foundation, including without limitation the Antitrust Policy of The Linux Foundation, available at [https://www.linuxfoundation.org/antitrust-policy](https://www.linuxfoundation.org/antitrust-policy). - -## 8. Amendments. - -This Charter may be amended from time to time by the TSC in its discretion. +The TAC was dissolved by the TSC in the process of implementing https://github.com/magma/magma/issues/15390 under the terms defined in magma/magma/GOVERNANCE.md.