From 285df54d0d01e2b464f986848ded1d7054eb5fe3 Mon Sep 17 00:00:00 2001 From: Bryan Helmkamp Date: Wed, 18 Mar 2026 17:41:34 -0400 Subject: [PATCH] Add issue-based contribution policy to README and CONTRIBUTING Co-Authored-By: Claude Opus 4.6 (1M context) --- CONTRIBUTING.md | 21 ++++++++++++++------- README.md | 20 ++++++++++++++++++++ 2 files changed, 34 insertions(+), 7 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 33d2c89b5..7228fbed8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,7 +2,19 @@ Thanks for your interest in contributing to Fabro! -## Getting started +## How to contribute + +Fabro uses an **issue-based contribution model**. Instead of accepting outside pull requests, we accept bug reports and feature requests as GitHub Issues. + +1. **Open an issue** -- File an issue on [GitHub Issues](https://github.com/fabro-sh/fabro/issues) with a bug report or feature request. The more detail your issue contains, the easier it will be for us to address it quickly and successfully. +2. **We build it** -- A Fabro maintainer will follow our software development process to create a patch, supervising AI coding agents and workflows. +3. **You get credit** -- We will include you as a co-author on the commit which lands the change. + +See the [README](README.md#contributing-to-fabro) for more on why we use this model. + +## Development setup + +If you are maintaining a fork, the instructions below will help you build and test locally. ### Prerequisites @@ -36,14 +48,9 @@ bun run typecheck # type check ## Development workflow -1. Fork the repository and create a branch from `main` +1. Create a branch from `main` 2. Make your changes 3. Ensure `cargo test --workspace`, `cargo fmt --check --all`, and `cargo clippy --workspace -- -D warnings` pass -4. Open a pull request - -## Reporting bugs - -Open an issue on [GitHub Issues](https://github.com/fabro-sh/fabro/issues) with steps to reproduce the problem. ## License diff --git a/README.md b/README.md index 29a02175d..6e733411a 100644 --- a/README.md +++ b/README.md @@ -129,6 +129,26 @@ fabro init # per project --- +## Contributing to Fabro + +Fabro uses an **issue-based contribution model**. Instead of accepting outside pull requests, we accept bug reports and feature requests as GitHub Issues. + +AI can rapidly write or edit large amounts of plausible-looking code. Accepting these patches from external sources opens up risks to security and quality. To mitigate these risks, we are tightly controlling the inputs into the software development process. + +Contributions follow these steps: + +1. **Open an issue** -- File an issue with a bug report or feature request. The more detail your issue contains, the easier it will be for us to address it quickly and successfully. + +2. **We build it** -- A Fabro maintainer will follow our software development process to create a patch, supervising AI coding agents and workflows. + +3. **You get credit** -- We will include you as a co-author on the commit which lands the change. + +As a result, you get the feature you need, without needing to keep a fork in sync. + +If you need a capability which is not in-scope for Fabro, you always have the option to maintain a fork of Fabro as it is distributed under the MIT license. + +--- + ## Help or Feedback - [Bug reports](https://github.com/fabro-sh/fabro/issues) via GitHub Issues