Skip to content

Propose documentation of maintainers and lightweight governance process#71

Open
jkjell wants to merge 2 commits intosecure-systems-lab:mainfrom
jkjell:main
Open

Propose documentation of maintainers and lightweight governance process#71
jkjell wants to merge 2 commits intosecure-systems-lab:mainfrom
jkjell:main

Conversation

@jkjell
Copy link
Copy Markdown

@jkjell jkjell commented Feb 16, 2024

This PR is a result of conversations from the in-toto-go-consolidation efforts (see CNCF Slack for additional context on that work).

This is a first draft expressing loose opinions on an initial governance process for go-securesystemslib. The intent is to allow foundation-based projects under community governance, such as in-toto and TUF, to adopt go-securesystemslib without fear of suffering consequences from unilateral decisions or changes.

I'm open to any and all suggestions to what will make this proposal acceptable to secure-systems-lab and interested consuming projects.

Signed-off-by: John Kjell <john@testifysec.com>
Comment thread GOVERNANCE.md Outdated
Comment thread GOVERNANCE.md Outdated
Co-authored-by: Tom Meadows <tom@tmlabs.co.uk>
@ChaosInTheCRD
Copy link
Copy Markdown

just followed up and read the rest - seems reasonable enough 😄

Comment thread GOVERNANCE.md
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add a section that describes non-project-specific maintainers?

To a newcomer, it may seem a bit confusing that there are multiple maintainers affiliated with a project.

Also, how important would it be to maintain an academic/researchy core?

Comment thread GOVERNANCE.md
their prior service to the project, but no longer have code review, voting, or other
maintainer privileges for the project.

## Project-specific dedicated maintainer roles
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add a way to govern this? Similar to changes if governance by having 72 hour public comment period + the need of a 2/3 majority.

Comment thread GOVERNANCE.md
## Changes in governance

The maintainers supervise changes in governance. Changes are approved by a 2/3
majority of voting maintainers with a 72 hour public voting / discussion period.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
majority of voting maintainers with a 72 hour public voting / discussion period.
majority of voting maintainers with a 72 hour public comment period.

Copy link
Copy Markdown
Member

@adityasaky adityasaky left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks great but I have some questions / suggestions about the processes described here. Thanks for working on this!

Comment thread GOVERNANCE.md
[go-securesystemslib](https://github.com/secure-systems-lab/go-securesystemslib)
and related documentation. This governance does **NOT** apply to any other
projects under the [secure-systems-lab](https://github.com/secure-systems-lab)
Github organization.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Github organization.
GitHub organization.

Comment thread GOVERNANCE.md
The goal of the go-securesystemslib project is to be a common foundational
library for cryptographic signing and verifying. We strongly believe a common,
widely reviewed library, will result in a higher quality and more secure
implementaiton. The project, while not limited to, is specifically interested in
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
implementaiton. The project, while not limited to, is specifically interested in
implementation. The project, while not limited to, is specifically interested in

Comment thread GOVERNANCE.md
widely reviewed library, will result in a higher quality and more secure
implementaiton. The project, while not limited to, is specifically interested in
the signing and verification of metadata and signing envelopes. Several major
foundation-based open source projects would like to contribute to and consume
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With foundation-based, do we just mean CNCF / OpenSSF etc?

Comment thread GOVERNANCE.md

## Code of Conduct

The go-securesystemslib project abides by the Cloud Native Computing Foundation's
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should clarify that CoC violations are not actually handled by the CNCF.

Comment thread GOVERNANCE.md
## Changes in maintainership

Active contributors may be offered or request to be granted maintainer status.
This requires approval from a 2/3 majority of currently voting maintainers with at
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What distinguishes a voting maintainer from a non voting maintainer?

Comment thread GOVERNANCE.md
open issues. A maintainer has the authority to approve or reject pull requests
submitted by contributors.

## Changes in maintainership
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## Changes in maintainership
### Changes in maintainership

Comment thread GOVERNANCE.md
their prior service to the project, but no longer have code review, voting, or other
maintainer privileges for the project.

## Project-specific dedicated maintainer roles
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## Project-specific dedicated maintainer roles
### Project-specific dedicated maintainer roles

Comment thread GOVERNANCE.md

| Project | Maintainer |
| -------------------------------------------- | ---------- |
| [In-toto](https://github.com/in-toto) | TBD |
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| [In-toto](https://github.com/in-toto) | TBD |
| [in-toto](https://github.com/in-toto) | TBD |

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the table shouldn't list the maintainer, so that we don't touch GOVERNANCE.md for personnel changes.

Comment thread GOVERNANCE.md
| [In-toto](https://github.com/in-toto) | TBD |
| [TUF](https://github.com/theupdateframework) | TBD |

**Note: Dedicated Maintainer roles are still subject to general maintainer rules*
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Note: Dedicated Maintainer roles are still subject to general maintainer rules*
**Note: Dedicated Maintainer roles are still subject to general maintainer rules.

Comment thread GOVERNANCE.md

## Project-specific dedicated maintainer roles

Any project that demonstrates a commitment to consuming this library as a
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need direct maintainers and project specific maintainers? I think in this case, we could get away with just having the latter, given the nature of the library?

Comment thread GOVERNANCE.md
| Project | Maintainer |
| -------------------------------------------- | ---------- |
| [In-toto](https://github.com/in-toto) | TBD |
| [TUF](https://github.com/theupdateframework) | TBD |
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be specifically go-tuf?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants