Skip to content

Commit 0288fc5

Browse files
mistral-vibehyperpolymath
authored andcommitted
docs: Add CODEOWNERS, MAINTAINERS, and GOVERNANCE documents
1 parent bf887c8 commit 0288fc5

2 files changed

Lines changed: 227 additions & 0 deletions

File tree

GOVERNANCE.adoc

Lines changed: 162 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
// SPDX-License-Identifier: MPL-2.0
2+
// SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>
3+
= Governance Model
4+
:toc: preamble
5+
6+
This document describes the governance model for this repository.
7+
8+
== Overview
9+
10+
This repository follows a **Sole Maintainer Governance Model**:
11+
12+
* Single maintainer (@hyperpolymath) has full authority over the project
13+
* All contributions are welcome and reviewed by the maintainer
14+
* Decisions are made transparently through GitHub issues and discussions
15+
* The project adheres to the hyperpolymath estate policies where applicable
16+
17+
== Core Principles
18+
19+
[cols="1,2"]
20+
|===
21+
| Principle | Description
22+
23+
| **Benevolent Dictatorship** | Maintainer has final decision authority but seeks community input
24+
25+
| **Meritocracy** | Contributions are judged on technical merit, not contributor identity
26+
27+
| **Transparency** | All significant decisions are documented publicly
28+
29+
| **Consensus-Seeking** | Maintainer prefers consensus but will decide when necessary
30+
31+
| **Open Contribution** | Anyone can contribute via fork and pull request
32+
33+
|===
34+
35+
== Roles and Permissions
36+
37+
[cols="1,2,2"]
38+
|===
39+
| Role | Permissions | Assignment
40+
41+
| **Maintainer** | Write access, merge rights, admin | @hyperpolymath
42+
| **Contributors** | Read access, fork, submit PRs | All GitHub users
43+
| **Users** | Use the software, report issues | All GitHub users
44+
45+
|===
46+
47+
== Decision Making Framework
48+
49+
=== Routine Decisions
50+
51+
* Bug fixes
52+
* Documentation improvements
53+
* Minor feature additions
54+
* Dependency updates
55+
56+
**Process**: Maintainer reviews and merges PRs that meet quality standards.
57+
58+
=== Significant Changes
59+
60+
* New major features
61+
* API changes
62+
* Architecture modifications
63+
* Breaking changes
64+
65+
**Process**:
66+
. Open issue describing the change
67+
. Discuss with community (minimum 72 hours)
68+
. Maintainer makes final decision
69+
. Document rationale in issue/PR
70+
71+
=== Structural Decisions
72+
73+
* Repository purpose/renaming
74+
* License changes
75+
* Ownership transfer
76+
* Deprecation/archival
77+
78+
**Process**:
79+
. Extended discussion (minimum 1 week)
80+
. Maintainer makes final decision
81+
. Document in CHANGELOG and governance docs
82+
83+
== Contribution Lifecycle
84+
85+
[cols="1,2"]
86+
|===
87+
| Stage | Process
88+
89+
| **Ideation** | Open issue, discuss feasibility
90+
91+
| **Development** | Fork, implement, test thoroughly
92+
93+
| **Review** | Submit PR, maintainer reviews within 7 days
94+
95+
| **Merge** | Maintainer merges or requests changes
96+
97+
| **Release** | Maintainer publishes according to project conventions
98+
99+
|===
100+
101+
== Conflict Resolution
102+
103+
In case of disagreements:
104+
105+
. Discuss in the relevant GitHub issue or PR
106+
. Provide technical justification for positions
107+
. Maintainer mediates and makes final decision
108+
. Decision is documented and can be revisited later
109+
110+
== Project Policies
111+
112+
This repository adheres to hyperpolymath estate-wide policies:
113+
114+
* **License**: MPL-2.0 for code, CC-BY-SA-4.0 for prose (per standards/LICENCE-POLICY.adoc)
115+
* **Code of Conduct**: Follows hyperpolymath CODE_OF_CONDUCT.md
116+
* **Security**: Follows hyperpolymath SECURITY.md
117+
* **Contributing**: Follows hyperpolymath CONTRIBUTING.adoc conventions
118+
119+
== Repository-Specific Conventions
120+
121+
[cols="1,2"]
122+
|===
123+
| Convention | Description
124+
125+
| **Signing** | All commits must be signed (SSH or GPG)
126+
127+
| **SPDX Headers** | All source files must have SPDX license identifiers
128+
129+
| **Contractiles** | Mustfile, Trustfile, Intendfile, Adjustfile in root
130+
131+
| **Machine Readable** | META.a2ml in .machine_readable/6a2/
132+
133+
| **CI/CD** | GitHub Actions workflows in .github/workflows/
134+
135+
|===
136+
137+
== Governance Evolution
138+
139+
As the project grows, this governance model may evolve:
140+
141+
* **Adding Co-Maintainers**: When contribution volume warrants it
142+
* **Forming a Team**: For complex multi-maintainer projects
143+
* **Adopting TPCF**: For large, multi-repository projects (see rhodium-standard-repositories)
144+
145+
Changes to this document require the same process as Significant Changes above.
146+
147+
== See Also
148+
149+
* link:MAINTAINERS.adoc[Maintainers]
150+
* link:CODE_OF_CONDUCT.md[Code of Conduct]
151+
* link:CONTRIBUTING.adoc[Contributing Guide]
152+
* link:https://github.com/hyperpolymath/standards/blob/main/LICENCE-POLICY.adoc[Estate License Policy]
153+
* link:https://github.com/hyperpolymath/standards[rhodium-standard-repositories (TPCF)]
154+
155+
== Changelog
156+
157+
[cols="1,1,1"]
158+
|===
159+
| Date | Change | By
160+
161+
| 2026-06-07 | Initial governance model established | @hyperpolymath
162+
|===

MAINTAINERS.adoc

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
// SPDX-License-Identifier: MPL-2.0
2+
// SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>
3+
= Maintainers
4+
:toc: preamble
5+
6+
== Current Maintainers
7+
8+
[cols="2,3,2",options="header"]
9+
|===
10+
| Name | Role | Contact
11+
12+
| Jonathan D.A. Jewell | Sole Maintainer | https://github.com/hyperpolymath[@hyperpolymath]
13+
|===
14+
15+
== Maintainer Responsibilities
16+
17+
As the sole maintainer, all responsibilities apply to @hyperpolymath:
18+
19+
* Reviewing and merging pull requests
20+
* Triaging issues and feature requests
21+
* Ensuring code quality and security standards
22+
* Managing releases and versioning
23+
* Upholding the project's Code of Conduct
24+
* Maintaining documentation and examples
25+
* Responding to security vulnerabilities
26+
27+
== Contribution Process
28+
29+
This is a sole-maintainer project. All contributions are welcome via:
30+
31+
1. **Issues**: Report bugs, request features, ask questions
32+
2. **Pull Requests**: Submit improvements for review
33+
3. **Discussions**: Engage in community discussions
34+
35+
All contributions will be reviewed by the maintainer.
36+
37+
== Decision Making
38+
39+
* Routine decisions (bug fixes, minor improvements): Made by maintainer
40+
* Significant changes: Discussed in issues before implementation
41+
* Breaking changes: Announced in advance with migration path
42+
43+
== Becoming a Maintainer
44+
45+
This project currently has a single maintainer. If you're interested in becoming a co-maintainer:
46+
47+
1. Demonstrate consistent, high-quality contributions
48+
2. Show understanding of project goals and standards
49+
3. Participate constructively in discussions
50+
4. Express interest to the current maintainer
51+
52+
Co-maintainers may be added at the discretion of the current maintainer.
53+
54+
== Contact
55+
56+
For questions about project governance:
57+
58+
* Open a GitHub issue in this repository
59+
* Contact: https://github.com/hyperpolymath
60+
61+
== See Also
62+
63+
* link:GOVERNANCE.adoc[Governance Model]
64+
* link:CODE_OF_CONDUCT.md[Code of Conduct]
65+
* link:CONTRIBUTING.adoc[Contributing Guide]

0 commit comments

Comments
 (0)