What is the problem SIGs meet?
SIGs divide repository
Generally SIGs own one or more repository, but sig-sql-infra, sig-planner, sig-execution, sig-migration, and so on share the main repo pingcap/tidb.
It hurts that we artificially break GitHub repo into several parts while database internals are interrelated. Most of our contributors are looking forward to a GitHub repo granularity governance that can be easily understood.
SIGs are apart from GitHub permission model
SIG members’ permission are granted by membership file in this repository. It is not GitHub friendly that our committer cannot do actions required GitHub write permission on repositories owned by SIGs, said edit issues, be assigned, etc.
SIGs promotion are not respected
The promotion rules are not well respected where most of contributors think PR numbers requirements are ridiculous. The actual rule is enough sponsor, i.e., consensus voting.
Also the procedure is highly coupled with infra team that you should file an issue first and later two of infra team create and approve the PR so you are added as an member, which hurts SIG committers and leaders notice they responsibility to handle these affairs.
SIGs ladders are redundant
- Active contributor can be easily reflected by participation and associated with no permission.
- Co-leaders are leaders.
What is proposed to do?
To “SIGs divide repository”
I propose to redeclare SIGs in GitHub repo granularity so that they can be easily understood.
To “SIGs are apart from GitHub permission model”
Keep membership file for display but create GitHub teams to grant committers etc. GitHub permission. Bot logic can adopt trusted team or GitHub permission.
To “SIGs promotion are not respected”
Remain the consensus voting requirements. SIGs can generate their own guidelines on what they are looking for on committers etc. But hopefully we have loose requirements and contributors conclude how to become a committer by existing examples.
Also let the sig leaders moderate the whole promotion procedure.
To “SIGs ladders are redundant”
Remove Active Contributor ladder, merge co-leaders and leaders ladder.
To be precious,
- A reviewer is able to review pull request for quality and correctness of repositories associated with the team. His/Her LGTM is counted.
- A committer is able to both review and commit pull request.
- A leader, based on the rights of a committer, is able to promote or evict a reviewer, a committer or a leader by majority decision.
- If this proposal accepted, after sig merge there will be a few of “leaders”, may we call them “maintainers” instead. We hope have more maintainers who are responsible to grow the community, not one or two “leaders”. Also our old “Community Structure” named it “Maintainers”