docs(CONTRIBUTING): update contribution guidelines

This commit is contained in:
Ivan
2026-04-15 20:20:01 -05:00
parent 1ea22e1be2
commit 3c72a1d0aa

View File

@@ -1,47 +1,56 @@
Contributing to Reticulum MeshChatX
# Contributing to Reticulum MeshChatX
Patches are the preferred way to contribute. Create your changes locally,
export a .patch file, and send it over Reticulum.
Patches are the preferred way to contribute. Create your changes locally, export a `.patch` file, and send it over Reticulum.
Generating a Patch
------------------
## Generating a patch
1. Clone or fork the repository and make your changes on a branch.
2. Stage and commit your work:
git add -A
git commit -m "Short description of the change"
```bash
git add -A
git commit -m "Short description of the change"
```
3. Export the commit(s) as a .patch file:
3. Export the commit(s) as a `.patch` file:
# Single most recent commit
git format-patch -1
```bash
# Single most recent commit
git format-patch -1
# Last N commits
git format-patch -N
# Last N commits
git format-patch -N
# All commits since a branch point
git format-patch main..HEAD
# All commits since a branch point
git format-patch main..HEAD
```
This produces one .patch file per commit (e.g. 0001-my-change.patch).
This produces one `.patch` file per commit (for example `0001-my-change.patch`).
## Sending the patch
Sending the Patch
-----------------
Send the `.patch` file as an LXMF message over Reticulum to:
Send the .patch file as an LXMF message over Reticulum to:
```
7cc8d66b4f6a0e0e49d34af7f6077b5a
```
7cc8d66b4f6a0e0e49d34af7f6077b5a
You can attach the file using Sideband, Meshchat, MeshchatX, or any LXMF-capable client with attachments support. Include a brief description of what the patch does in the message body.
You can attach the file using Sideband, Meshchat, MeshchatX, or any LXMF-capable client with attachments support.
Include a brief description of what the patch does in the message body.
Lastly, be patient.
Lastly, be patient.
Patch Guidelines
----------------
## Patch guidelines
- Keep patches focused on a single change or fix.
- Test your changes before exporting.
- Test your changes before exporting.
- No need to run linting or formatting.
- No need to add a test or run the test suite.
## Generative AI policy
You may use generative AI tools when contributing, on the condition that your setup actually supplies the model with enough context to produce sound work: relevant files, constraints, failing tests, and project conventions. Vague prompts and thin context lead to wrong or generic patches; that burden is on the contributor, not the reviewers.
We prefer models that run locally or offline when that is practical for you.
Contributions must still be yours to justify and maintain. Do not submit bulk-generated changes you have not read, understood, and tested. We are not looking for unreviewed AI output or style-only churn from tools used without engineering/architectural judgment.