From 3bee0c9d192d64016e47b592aef5d6e145beba3a Mon Sep 17 00:00:00 2001 From: Josh Berkus Date: Tue, 17 Dec 2024 17:15:37 -0800 Subject: [PATCH 1/2] Bring the governance templates in line with the current graduation checklist. Update issue template accordingly. Signed-off-by: Josh Berkus --- .../governance-review-request.yaml | 23 +- governance/reviews/template.md | 232 ++++++++++-------- 2 files changed, 140 insertions(+), 115 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/governance-review-request.yaml b/.github/ISSUE_TEMPLATE/governance-review-request.yaml index cabf240c..32544f32 100644 --- a/.github/ISSUE_TEMPLATE/governance-review-request.yaml +++ b/.github/ISSUE_TEMPLATE/governance-review-request.yaml @@ -73,18 +73,10 @@ body: validations: required: true - - type: textarea - attributes: - label: Are there any sub-projects, plugins, and related? - description: | - If your project includes the sub-projects, plugins, and other notable divisions, please write them here. - validations: - required: true - - type: markdown attributes: value: | - ## Governance information + ## Governance Information - type: textarea attributes: @@ -94,6 +86,14 @@ body: If not, please write a short description of your governance model. validations: required: true + + - type: textarea + attributes: + label: Link to Incubating/Graduation/Sandbox Application + description: | + If your project is in the process of moving levels or being accepted into the CNCF please link to the Issue or PR for that event. If for Incubation or Graduation, please fill out all items in the appropriate sections of that application (Governance and Contributing) before applying for a governance review. + validations: + required: true - type: textarea attributes: @@ -112,8 +112,9 @@ body: - Who owns what code and docs These documents do NOT need to be separate documents. Single document or a few documents that explain everything above is good for us to read, understand and evaluate your project governance. - - **NOTE**: Make sure you provide links to these documents as snapshots with commit hashes and use the same commit for all links from the same repository. Example: `https://github.com/FOO/BAR/blob//path/to/doc.md` + + If these documents are already linked from an Incubation or Graduation application, you may simply + refer to that document by linking it here, and fill in only the documents not listed there. validations: required: true diff --git a/governance/reviews/template.md b/governance/reviews/template.md index e1e6af4c..66c31c49 100644 --- a/governance/reviews/template.md +++ b/governance/reviews/template.md @@ -1,20 +1,8 @@ # Governance Review Template - - What follows is a governance review and assessment for the ______ project. This review is carried out by members of the Governance Working Group of TAG Contributor Strategy. The review may have been done because of a change in maturity level for the project, at the request of the TOC, or as a request by the project itself. If requested by the project, the review will be provided to the project maintainers. Otherwise, the review will be submitted to the TOC for their follow-up. -Governance reviews contribute to the health and sustainability of the CNCF projects. By providing guidance on effective governance practices, TAG Contributor Strategy aims to ensure that projects operate efficiently, encourage diverse participation, and uphold the values of the CNCF. The governance review process is designed to be constructive and supportive, aiming to assist projects in refining their governance models and addressing any challenges they may face. - -Projects may ask TAG Contributor Strategy for assistance in resolving any issues uncovered by the review. The TAG is available via our [Slack channel](https://cloud-native.slack.com/archives/CT6CWS1JN), [email](https://lists.cncf.io/g/cncf-tag-contributor-strategy), [GitHub](https://github.com/cncf/tag-contributor-strategy), or by joining our weekly meetings (listed on the [CNCF public calendar](https://www.cncf.io/calendar/)). +Projects may ask TAG Contributor Strategy for assistance in resolving any issues uncovered by the review. The TAG is available via our [slack channel](https://cloud-native.slack.com/archives/CT6CWS1JN), [email](https://lists.cncf.io/g/cncf-tag-contributor-strategy), [GitHub](https://github.com/cncf/tag-contributor-strategy), or by joining our weekly meetings (listed on the [CNCF public calendar](https://www.cncf.io/calendar/)). ## Summary and Assessment @@ -23,36 +11,30 @@ Exemplary: project has an extraordinary level of governance development and impl Satisfactory: project has appropriate governance for its maturity level and is following that governance Mostly Satisfactory: project has mostly appropriate governance, but needs to fix one or two things Needs Work: project's governance is lacking and inadequate for its current level of maturity, and needs substantial work to overcome that - -NOTE: Fill this part as a summary of your review. It is recommended to start from the "Review" section below in the template. +In Crisis: project appears to be having a meltdown and needs CNCF intervention to survive ---> -Status: Exemplary|Satisfactory|Mostly Satisfactory|Needs Work +Status: Exemplary|Satisfactory|Mostly Satisfactory|Needs Work|In Crisis - + ### Executing the Assessment - -Make sure you use a snapshot of the governance documents for your assessment and note the commit hash of the snapshot here as a link. ----> - -### Critical Items +### Must-Fix Items The following issues have been identified that need to be resolved before [project milestone or other requirement]: - -If there are no critical items, do not delete the section but write that there are no critical items. ----> - -* +1. ### Points of Excellence The following aspects of governance are exemplary, and can be referenced as examples for other projects to copy: + * @@ -60,134 +42,176 @@ The following aspects of governance are exemplary, and can be referenced as exam ### Areas for Improvement Over the next year, the project should work on the following issues to improve its governance, these are considered non-blocking: - -* + -Details of these issues can be found in the [Findings Table](#Governance-Findings-Table) and the related sections below. +* ## Review -### Governance Description +The following review primarily consists of an audit on the project's self-assessment in their Graduation application. - +[Project Application with Governance and Community Sections](link to project application here) -### Discoverability +### Governance Summary -#### Governance Location + - +### Governance Evolution -#### Governance Discovery Completeness +* Governance has continuously been iterated upon by the project as a result of their experience applying it, with the governance history demonstrating evolution of maturity alongside the project's maturity evolution. - + -### Documentation Content +### Discoverability - +* Clear and discoverable project governance documentation. -The following table details the governance areas expected for a project. Coverage is indicated by Complete, Partial, Missing, and Unknown. -* Complete - the content of the governance documentation is fully detailed and does not leave any question to the reader. -* Partial - the content of the governance documentation is missing some information and would leave the reader with questions or some level of misunderstanding. -* Missing - the documentation is absent, wholly undiscoverable, or woefully inadequate in meeting the objectives of that governance content. The reader cannot act on the content that is available. -* Unknown - status cannot be assessed at this time + -| Governance Area | Coverage | Documents | Finding Notes | -|:----------------|:--------:|:------:|:--------------| -| Project Purpose | Complete/Partial/Missing/Unknown | *LINKS* | | -| Maintainer List | Complete/Partial/Missing/Unknown | *LINKS* | | -| Code of Conduct | Complete/Partial/Missing/Unknown | *LINKS* | | -| Contributor Guide | Complete/Partial/Missing/Unknown | *LINKS* | | -| Contributor Ladder | Complete/Partial/Missing/Unknown | *LINKS* | | -| Maintainer Lifecycle | Complete/Partial/Missing/Unknown | *LINKS* | | -| Decision-making | Complete/Partial/Missing/Unknown | *LINKS* | | -| Code and Docs Ownership | Complete/Partial/Missing/Unknown | *LINKS* | | -| Security Reporting and response | Complete/Partial/Missing/Unknown | *LINKS* | | -| Communication and Meetings | Complete/Partial/Missing/Unknown | *LINKS* | | + +### Accuracy and Clarity +* Governance is up to date with actual project activities, including any meetings, elections, leadership, or approval processes. -#### Sub-projects, plugins, and related + - +* Governance clearly documents [vendor-neutrality](https://contribute.cncf.io/maintainers/community/vendor-neutrality/) of project direction. -The project includes the following sub-projects, plugins, and other notable divisions: + -| Area | Ownership and Operation | Standing Bodies | Project Alignment | Notes | -|:-----|:-----------------------:|:---------------:|:------------------|:---| -|*sub-project*| Complete/Partial/Missing | Complete/Partial/Other | Complete/Partial/Conflict | | +### Decisions and Role Assignments -### Operation +* Document how the project makes decisions on leadership roles, contribution acceptance, requests to the CNCF, and changes to governance or project goals. +* Document how role, function-based members, or sub-teams are assigned, onboarded, and removed for specific teams (example: Security Response Committee). - + -#### Transparency and freshness +### Maintainers and Maintainer Lifecycle - +* Document complete list of current maintainers, including names, contact information, domain of responsibility, and affiliation. +* A number of active maintainers which is appropriate to the size and scope of the project. -Transparency for a project is exemplified in the public documentation, record, and communications, allowing observers and contributors to monitor the project's adherence to their stated governance. Freshness indicates governance activities mirror the documented governance for the project, and have been reviewed or updated recently. + -The project's governance documentation and activities are ... +* Document a complete maintainer lifecycle process (including roles, onboarding, offboarding, and emeritus status). +* Demonstrate usage of the maintainer lifecycle with outcomes, either through the addition or replacement of maintainers as project events have required. -#### Governance Drift + - +* Project maintainers from at least 2 organizations that demonstrates survivability. -Governance Drift can occur when the executed and observable governance of a project deviates from the documented governance of the project. + -The project [does/does] not experience governance drift as indicated by... +### Ownership -#### Ownership +* Code and Doc ownership in Github and elsewhere matches documented governance roles. - + -The project's ownership evaluation [did/did not] leverage Sheriff, the CNCF GitHub permission auditing tool. +### Code of Conduct -The project's permissions and ownership settings and files [are/are not] appropriate for the stated governance. Specifically, ... +* Document adoption of the CNCF Code of Conduct +* CNCF Code of Conduct is cross-linked from other governance documents. -### Maintainer List(s) + - +### Subprojects -The project's maintainer list(s) [are/are not] current. Individuals on the maintainer list [do/do not] appear to match the requirements of maintainership in accordance with the project's documented requirements. The maintainer affiliations (employers) reflect [Balanced/Unbalanced] diversity. +* All subprojects, if any, are listed. +* If the project has subprojects: subproject leadership, contribution, maturity status documented, including add/remove process. - + -### Evolution +The project includes the following sub-projects, plugins, and other notable divisions: - +| Area | Ownership and Operation | Communications | Project Alignment | Notes | +|:-----|:-----------------------:|:---------------:|:------------------|:---| +|*sub-project*| Complete/Partial/Missing | Complete/Partial/Other | Complete/Partial/Conflict | | -Governance evolution is the observable changes and improvements the project makes to its governance over the project's lifespan. It is expected that changes will occur over the project's life and that such changes are iterative, tested, and adjusted. +### Contributors and Community -Major milestones in the project's governance over time include: +* Contributor ladder with multiple roles for contributors. -* + -Recent changes to the governance include: +* Clearly defined and discoverable process to submit issues or changes. -* + -Areas of potential future development include: +* Project must have, and document, at least one public communications channel for users and/or contributors. +* List and document all project communication channels, including subprojects (mail list/slack/etc.). List any non-public communications channels and what their special purpose is. -* + -### Governance Findings Table - -Should be reported as "Areas for Improvement" -- Medium/low: needs improvement +* Documentation of how to contribute, with increasing detail as the project matures. ----> + + +* Demonstrate contributor activity and recruitment. + + -| Finding Title | Importance | Description | Links | Notes & Impact | -|:------------- |:----------:|:------------|:------|:---------------| -| *Title* | Critical/Medium/Low | *detailed description* | *relevant links* | *additional notes and explanation of impact if appropriate* | -### Previous Reviews -| Date | Requested By | Reason | Link | -|:-------|:--------------|:------------------------------------------:|:---------------------| -| *Date* | *TOC/Project* | *Maturity change / project request / etc.* | *link to review doc* | From 096ec3bf4b72dca4dd7963f9b4432c0c7da381bd Mon Sep 17 00:00:00 2001 From: Josh Berkus Date: Mon, 13 Jan 2025 17:02:01 -0800 Subject: [PATCH 2/2] Incorporate Emily Fox's feedback into the new template. Signed-off-by: Josh Berkus --- governance/reviews/template.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/governance/reviews/template.md b/governance/reviews/template.md index 66c31c49..b45c3c97 100644 --- a/governance/reviews/template.md +++ b/governance/reviews/template.md @@ -11,7 +11,7 @@ Exemplary: project has an extraordinary level of governance development and impl Satisfactory: project has appropriate governance for its maturity level and is following that governance Mostly Satisfactory: project has mostly appropriate governance, but needs to fix one or two things Needs Work: project's governance is lacking and inadequate for its current level of maturity, and needs substantial work to overcome that -In Crisis: project appears to be having a meltdown and needs CNCF intervention to survive +In Crisis: project appears to have several outstanding, critical issues that require attention, clarity, and/or direct guidance from CNCF in order to return to a state of good health and standing. ---> Status: Exemplary|Satisfactory|Mostly Satisfactory|Needs Work|In Crisis @@ -26,7 +26,7 @@ Status: Exemplary|Satisfactory|Mostly Satisfactory|Needs Work|In Crisis The following issues have been identified that need to be resolved before [project milestone or other requirement]: - 1. @@ -157,7 +157,13 @@ who receives the reports and how and where they're evaluated. ---> +bit-rot quite a bit, and you can help them see where they need to update it. +If the project has a full listing of suboprojects use the text below. Completeness hinges on whether subproject listings include full ownership, communications, and alignment info. ---> + +The project maintains a [listing of subprojects](LINK). This listing appears to be [Very Complete|Mostly Complete|Incomplete]. + + The project includes the following sub-projects, plugins, and other notable divisions: