Thank you for your interest in contributing! Start by reading the development conventions — submissions that do not follow them will be rejected.
- Fork the repository and clone your fork
- Install pre-commit hooks:
make setup-hooks - Build and test:
make build && make test - Run every gate locally before pushing:
make all
Requirements are listed in docs/development.md.
Features that span multiple PRs, introduce new architectural patterns, or affect the public interface go through the proposal process.
CI enforces reviewability on every PR:
- At most 750 added lines of production code (tests, docs, examples excluded)
- A real description of what and why
Signed-off-bytrailer on every commit (git commit -s)- Cryptographically signed commits (GPG or SSH)
- Human authorship: commits authored or signed-off by AI tools are rejected
- Conventional commit subjects
(
type(scope): summary, ≤72 chars)
See the PR conventions section for details and override labels.