-
Notifications
You must be signed in to change notification settings - Fork 99
Add initial GOVERNANCE.md #169
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
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,73 @@ | ||
| # Governance | ||
|
|
||
| > **Status: Draft — under review and discussion.** This document is a proposal | ||
| > and has not yet been ratified by the Substrate maintainers. Feedback welcome | ||
| > via PR review or on the `ate-dev@googlegroups.com` mailing list. | ||
|
|
||
| Agent Substrate is an Apache-2.0 open-source project. This document describes | ||
| how decisions get made and how contributors can take on more responsibility | ||
| over time. | ||
|
|
||
| For day-to-day collaboration norms (PR workflow, communication, AI-tool | ||
| disclosure), see [COLLABORATING.md](COLLABORATING.md). For build and | ||
| contribution instructions, see [CONTRIBUTING.md](CONTRIBUTING.md). For | ||
| community conduct, see [code-of-conduct.md](code-of-conduct.md). | ||
|
|
||
| ## Roles | ||
|
|
||
| We distinguish four tiers. Promotion to each tier requires sustained, | ||
| high-quality contributions; "enough" is intentionally judgment-based and | ||
| decided among current Maintainers. | ||
|
|
||
| **Default** — No formal designation. Anyone may open issues and PRs on the | ||
| project, or review other people's PRs and issues. Must follow the Code of | ||
| Conduct. Opening a PR requires that the author sign the [Google Contributor | ||
| License Agreement](https://cla.developers.google.com/about) (see | ||
| [CONTRIBUTING.md](CONTRIBUTING.md)). | ||
|
|
||
| **Contributor** — Someone who has made at least one non-trivial contribution | ||
| and is known to or vouched for by a Maintainer, or has accumulated enough | ||
| contributions over time. Granted `Read` access on the repository. Must follow | ||
| the Code of Conduct and sign the [Google Contributor License | ||
| Agreement](https://cla.developers.google.com/about) before their first | ||
| contribution is merged (see [CONTRIBUTING.md](CONTRIBUTING.md)). | ||
|
|
||
| **Reviewer** — A contributor who has made enough contributions and is vouched | ||
| for by at least 2 Maintainers. Granted `Triage` access: can review, label, and | ||
| comment on PRs and issues, but cannot merge PRs without a Maintainer. | ||
|
|
||
| **Maintainer** — A reviewer who has made enough sustained contributions across | ||
| the project and is vouched for by at least 2 existing Maintainers. Granted | ||
| `Write` access: can approve and merge PRs, manage releases, and represent the | ||
| project externally. | ||
|
|
||
| A formal list of Maintainers and per-area Reviewers (e.g., via `CODEOWNERS` or | ||
| `OWNERS` files) is a separate discussion and will land as roles are formalized. | ||
|
|
||
| ## Decisions | ||
|
|
||
| - **Code changes.** Every PR needs at least one Maintainer approval and green | ||
| CI before merge. Authors should never approve or merge their own PRs, unless | ||
| something critical needs to be fixed urgently (e.g. a build break) and no | ||
| other Maintainer is available. | ||
| - **Design changes.** File a GitHub issue or discussion describing the proposal | ||
| and tag relevant Maintainers. Allow at least one week for feedback. | ||
| Significant changes require Maintainer support; as the project grows, more | ||
| authority will be delegated to per-subsystem owners. | ||
| - **Disputes.** Try to resolve on the PR or issue first. If that fails, any | ||
| participant can ask the Maintainers to decide. | ||
| - **Code-of-Conduct issues.** Reported and handled per | ||
| [code-of-conduct.md](code-of-conduct.md). | ||
|
|
||
| ## Activity | ||
|
|
||
| Roles require ongoing participation. Reviewers and Maintainers inactive for six | ||
| months may have their status reviewed, with allowances for known absences | ||
|
thockin marked this conversation as resolved.
|
||
| (e.g., sabbatical, parental leave). Individuals who are inactive may be | ||
| designated "emeritus", which carries no formal authority but recognizes their | ||
| past contributions and allows them to return at a future date if they wish. | ||
|
|
||
| ## Changing this document | ||
|
|
||
| Open a PR. Allow at least one week for discussion. Requires Maintainer approval | ||
| to merge. | ||
|
Comment on lines
+72
to
+73
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Not sure if you want to mention if there is different opinion among maitainers, how it should be resolved?
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm trying to not be TOO prescriptive until there's really a need. I am a big believer is (near-)consensus when possible. Do you think it's critcal just yet? |
||
Uh oh!
There was an error while loading. Please reload this page.