From aa420d350722b5f0f33897ed5e72b0b0dff19913 Mon Sep 17 00:00:00 2001 From: hygienic-books Date: Wed, 16 Sep 2026 09:05:08 +0200 Subject: [PATCH] meta(meta): document commit types and scopes Define the Conventional Commits types currently used by the project. Document the initial scope vocabulary for APT integration, hook wiring, ZFS behavior, configuration, and documentation. Require every future commit to carry a scope and keep verbose commit body lines within the repository's 72-character limit. Require new types and scopes to be documented before they are used. --- CONTRIBUTING.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..54df662 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,30 @@ +# Contributing + +## Commit conventions + +This project uses Conventional Commits. Every commit must have a scope: + +```text +type(scope): imperative summary +``` + +The project currently uses these commit types: + +- `feat`: adds user-visible functionality +- `fix`: corrects an incorrect or unsafe behavior +- `refactor`: changes internal structure without changing intended behavior +- `docs`: changes documentation only +- `meta`: changes project conventions, repository metadata, or contribution files +- `build`: changes installation, packaging, or deployment integration + +The project currently uses these scopes: + +- `apt`: APT and Debian package-manager behavior +- `hook`: APT hook configuration and invocation wiring +- `zfs`: ZFS selection, snapshot naming, and retention behavior +- `conf`: Runtime configuration parameters and defaults +- `docs`: README and explanatory documentation + +Add a new type or scope to this document before using it. Keep commit subjects +concise and imperative. Commit bodies should explain the motivation and the +resulting behavior, with body lines no longer than 72 characters.