Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PROCESS CHANGE]: add a simple inactivity measure and process for removal #1390

Merged
merged 2 commits into from
Oct 6, 2023

Conversation

lance
Copy link
Member

@lance lance commented Jul 3, 2023

The ROLES.md document was recently updated to more accurately reflect how the Knative organization should work with regards to a "contribution ladder" and methods of moving up and down that latter based on project contributions. What was not addressed in those changes was how to handle stepping away from the project or being removed for some reason.

This change is a first pass at addressing that omission. The text is taken directly from the CNCF contribution ladder template located here:

https://github.com/cncf/project-template/blob/main/CONTRIBUTOR_LADDER.md#inactivity

What still remains unaddressed is what, if anything happens in peribolos. I think that should probably be stated somewhere in this document or another.

Clearly, when users step away from the project or WG leads change, they should be removed from teams that have elevated priviledges (writers, reviewers, admin, etc). To date, this just mostly means that they end up remaining members of the knative and knative-sandbox orgs, but no longer have write priveleges for specific repos or administrative capabilities.

It's not clear to me, however, what is the best way to deal with people stepping away from the project entirely or being removed for some cause (e.g. violation of the code of conduct). Users in the knative and knative-sandbox orgs in Peribolos already have restricted, read-only rights. Does it make sense to create an emeritus group to explicitly move these users into a recognized team that still has restricted, read-only rights but is recognized explicitly as no-longer contributing?

Related: #1383

/cc @knative/steering-committee

/kind documentation
/hold as WIP

@knative-prow knative-prow bot requested a review from a team July 3, 2023 18:59
@knative-prow knative-prow bot added kind/documentation do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. labels Jul 3, 2023
@knative-prow
Copy link

knative-prow bot commented Jul 3, 2023

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: lance

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@knative-prow knative-prow bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 3, 2023
@lance lance requested a review from geekygirldawn July 3, 2023 18:59
@knative-prow knative-prow bot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Jul 3, 2023
@lance lance requested a review from jberkus July 3, 2023 18:59
ROLES.md Outdated Show resolved Hide resolved
@aliok
Copy link
Member

aliok commented Jul 3, 2023

(non-binding comment)

This change is a first pass at addressing that omission.

LGTM!

What still remains unaddressed is what, if anything happens in peribolos. I think that should probably be stated somewhere in this document or another.
...
Does it make sense to create an emeritus group to explicitly move these users into a recognized team that still has restricted, read-only rights but is recognized explicitly as no-longer contributing?

It is reasonable. @puerco mentioned in the call today that some SIG (can't remember which one) is doing it this way and I think it makes sense.

Thanks for driving this @lance

@lance
Copy link
Member Author

lance commented Jul 4, 2023

I've added some verbiage around Peribolos changes. We should create that group before landing this PR.

@geekygirldawn
Copy link
Member

Thanks for addressing this, and this looks like a good way of handling it.

@aliok
Copy link
Member

aliok commented Jul 4, 2023

I just saw this in the graduation criteria:

Explicitly define the criteria, process and offboarding or emeritus conditions for project maintainers; or those who may interact with the CNCF on behalf of the project. The list of maintainers should be preferably be stored in a MAINTAINERS.md file and audited at a minimum of an annual cadence.

This PR change addresses some of that requirement, which is great.

We also need an audit too. Let's not worry about that in this PR though.

@knative-prow knative-prow bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Jul 5, 2023
@lance
Copy link
Member Author

lance commented Jul 5, 2023

I have added an Emeritus group to Peribolos, and included for now @abrennan89 and @jcrossley3 since they have both definitely stepped away from the project. I think actually moving other folks who have stopped contributing should happen in a separate PR. This is just being done for illustrative purposes.

@aliok
Copy link
Member

aliok commented Jul 5, 2023

I have added an Emeritus group to Peribolos

ping @knative/productivity-leads

@upodroid
Copy link
Member

upodroid commented Jul 5, 2023

The best course of action is removing someone from GitHub teams. Privileges are granted via GitHub Teams and prow checks GitHub Teams when considering /approve commands.

Being an org member is effectively having 0 permissions given we don't have private repos.

emeritus_approvers aren't that helpful as there should be no GitHub usernames in any OWNERS files.

@upodroid
Copy link
Member

upodroid commented Jul 5, 2023

Projects can add emeritus_approvers to OWNERS files to thank someone but approvers and reviewers should be GitHub Teams

ROLES.md Outdated Show resolved Hide resolved
ROLES.md Outdated Show resolved Hide resolved
@knative-prow-robot knative-prow-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 12, 2023
@knative-prow-robot knative-prow-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 12, 2023
@lance
Copy link
Member Author

lance commented Jul 12, 2023

@knative/productivity-leads et. al. I've made some changes to the text, removing the emeritus team and simplifying the process of voluntary and involuntary removal. PTAL 🙏 /cc @geekygirldawn @aliok

@knative-prow knative-prow bot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Jul 12, 2023
@lance
Copy link
Member Author

lance commented Jul 12, 2023

/unhold

@knative-prow knative-prow bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 12, 2023
ROLES.md Outdated Show resolved Hide resolved
@psschwei
Copy link
Contributor

+1 from me (though I'm not on steering, so don't think my vote counts 😄 )

@lance
Copy link
Member Author

lance commented Jul 26, 2023

+1 from me (though I'm not on steering, so don't think my vote counts 😄 )

@knative/steering-committee ptal

@upodroid
Copy link
Member

upodroid commented Aug 1, 2023

/retest

@knative-prow-robot knative-prow-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 1, 2023
The ROLES.md document was recently updated to more accurately reflect
how the Knative organization should work with regards to a "contribution
ladder" and methods of moving up and down that latter based on project
contributions. What was not addressed in those changes was how to handle
stepping away from the project or being removed for some reason.

This change is meant to address that omission. The text is
taken from the CNCF contribution ladder template located here:

https://github.com/cncf/project-template/blob/main/CONTRIBUTOR_LADDER.md#inactivity

When members step away from the project or step away from leadership roles, they
should be removed from teams that have elevated priviledges (writers,
reviewers, admin, etc).

When members choose to leave the project entirely due to changing
employment of life events, they should be removed from the knative and
knative-sandbox

When members fail to contribute for a period of one year, they may be
involuntarily removed from the knative and knative-sandbox GitHub organizations.

Signed-off-by: Lance Ball <[email protected]>
@knative-prow-robot knative-prow-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 4, 2023
ROLES.md Outdated Show resolved Hide resolved
ROLES.md Outdated Show resolved Hide resolved
Co-authored-by: Ali Ok <[email protected]>
@csantanapr
Copy link
Member

I took @aliok recommendation and committed

@csantanapr
Copy link
Member

/lgtm

@knative-prow knative-prow bot added the lgtm Indicates that a PR is ready to be merged. label Oct 6, 2023
@knative-prow knative-prow bot merged commit 17dde90 into knative:main Oct 6, 2023
6 checks passed
@jberkus
Copy link
Contributor

jberkus commented Oct 10, 2023

Belatedly, +1 from me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. kind/documentation lgtm Indicates that a PR is ready to be merged. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.