Skip to content

Commit efe5515

Browse files
Update CONTRIBUTING.md (#145)
1 parent 679f6f7 commit efe5515

1 file changed

Lines changed: 59 additions & 10 deletions

File tree

CONTRIBUTING.md

Lines changed: 59 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Contributing to CleanCloud
22

3-
Thank you for your interest in CleanCloud! We welcome contributions from the community.
3+
Thank you for your interest in CleanCloud. Community contributions are welcome, but CleanCloud remains a maintainer-led project with a deliberately narrow product scope.
44

55
---
66

@@ -31,9 +31,28 @@ CleanCloud is a **trust-first cloud hygiene engine** designed for production and
3131

3232
**Documentation Improvements** - Fix typos, clarify instructions, add examples
3333

34-
**Code Contributions** - Bug fixes, performance improvements, new rules
34+
**Code Contributions** - Bug fixes, performance improvements, and maintainer-approved rules
3535

36-
**Cloud Provider Support** - Help add GCP, OCI, or other cloud platforms
36+
**Scope-aligned Enhancements** - Improvements that stay within CleanCloud's core thesis: read-only cloud hygiene and waste detection for AWS, Azure, and GCP
37+
38+
### Scope Boundaries
39+
40+
CleanCloud is intentionally focused on:
41+
42+
- **Read-only cloud hygiene** for AWS, Azure, and GCP
43+
- **Deterministic waste detection** with conservative confidence scoring
44+
- **Policy-as-code workflows** for production and regulated environments
45+
46+
CleanCloud prioritises depth in cloud cost and governance signals over breadth across infrastructure categories.
47+
48+
The following usually require **maintainer approval before implementation begins**:
49+
50+
- New providers, platforms, or execution environments
51+
- Features that expand beyond cloud hygiene into host, agent, runtime, or general observability tooling
52+
- New product categories, broad architectural changes, or major UX changes
53+
- Large feature PRs that are not based on a pre-approved issue
54+
55+
If a proposal changes the product boundary, open an issue or discussion first. Unsolicited large feature PRs may be closed without merge if they fall outside the current product scope or roadmap priorities.
3756

3857
---
3958

@@ -108,6 +127,17 @@ All code changes must include documentation updates:
108127
- Update README.md if user-facing changes
109128
- Add entry to CHANGELOG.md (if exists)
110129

130+
### Approval Required for Major Changes
131+
132+
Open an issue and wait for maintainer approval before starting work on any of the following:
133+
134+
- New providers or provider families
135+
- New auth models or trust boundaries
136+
- New scan surfaces outside AWS/Azure/GCP cloud APIs
137+
- Large refactors of CLI flow, output schema, packaging, or release process
138+
139+
PRs opened without prior alignment for these categories may be closed to preserve roadmap focus and product consistency.
140+
111141
---
112142

113143
## Rule Addition Criteria
@@ -198,11 +228,16 @@ Examples:
198228
- Any breaking changes?
199229
- Screenshots (if UI/output changes)
200230

231+
**Additional expectations for non-trivial PRs:**
232+
- The change must be within the current CleanCloud scope
233+
- The implementation should follow existing architecture and output conventions
234+
- New features should link to a pre-approved issue or maintainer discussion
235+
201236
### Review Process
202237

203-
1. Maintainer will review within 48 hours (best effort)
238+
1. Maintainer reviews based on scope fit, product direction, and code quality
204239
2. Address any feedback or requested changes
205-
3. Once approved, maintainer will merge
240+
3. Approved changes may be merged, revised by the maintainer, or re-implemented independently based on the proposed idea.
206241

207242
---
208243

@@ -312,11 +347,25 @@ cleancloud scan --provider aws --region us-east-1
312347

313348
---
314349

315-
## License
350+
## Contribution Terms
351+
352+
By submitting a pull request, patch, or other contribution to this repository, you represent that:
353+
354+
- The contribution is your original work, or you have the legal right to submit it
355+
- You are authorized to grant the rights described below
356+
- The contribution does not knowingly infringe the rights of any third party
316357

317-
By contributing to CleanCloud, you agree that your contributions will be licensed under the MIT License.
358+
Unless explicitly agreed otherwise in writing with the maintainer prior to merge:
359+
360+
- Your contribution is submitted under the repository's MIT License
361+
- You grant the project maintainer and downstream recipients a perpetual, worldwide, non-exclusive, irrevocable license to use, copy, modify, distribute, sublicense, relicense, and commercialize your contribution as part of CleanCloud
362+
- Submitting a contribution does **not** obligate the maintainer to merge it, ship it, credit it beyond normal project practice, or adopt your proposed roadmap direction
363+
364+
For substantial features, new providers, or strategically sensitive work, the maintainer may require a separate CLA or other written agreement before merge.
365+
366+
## License
318367

319-
All contributions must be your original work or properly attributed.
368+
CleanCloud is distributed under the MIT License. See [`LICENSE`](LICENSE).
320369

321370
---
322371

@@ -328,6 +377,6 @@ Contributors will be:
328377
- Listed in CONTRIBUTORS.md (for substantial contributions)
329378
- Referenced for enterprise features on our website (with permission)
330379

331-
**We value all contributions** - whether it's fixing a typo, improving documentation, or adding a major feature. Every contribution helps make CleanCloud better for enterprise teams worldwide.
380+
**We value all contributions** - especially focused bug fixes, docs improvements, and scope-aligned rule proposals that strengthen CleanCloud's core thesis.
332381

333-
Thank you for helping make CleanCloud better!
382+
Thank you for helping make CleanCloud better!

0 commit comments

Comments
 (0)