Skip to content

Latest commit

 

History

History
32 lines (21 loc) · 2.25 KB

CONTRIBUTING.md

File metadata and controls

32 lines (21 loc) · 2.25 KB

CONTRIBUTING

Contributions are welcome. Tensaku is not able to evolve without relying on its contributors and their contributions.

This documents tries to reduce friction when it comes to contributions by defining some guidelines, some of which may follow a rationale while others are arbitrary determinations.

Code formatting and hints/improvements

Please use cargo fmt to apply formatting and cargo clippy to fix all suggestions pertinent to your changes. You can use make fix for both. Please note that this may apply changes unrelated to your code:

  • formatting if previous commits have not used cargo fmt
  • hints if previous commits have not used cargo clippy OR clippy is newer than the last commit and has learned new hints in the meantime

Missing formatting/hints that precede your PR should be addressed via a separate issue/PR in main branch first. If in doubt how to resolve such a situation, ask.

README changes

If a PR changes Tensaku's behaviour and where appropriate, please adjust README.md as well. make update-readme adds the command line help (output of tensaku --help) automatically which is relevant whenever command line arguments change. While it can be tempting to add other fixes to the README while you're at it, unrelated changes to it which precede your PR should be addressed in a separate issue/PR first. If in doubt how to resolve such a situation, ask.

AI-assisted contributions

AI coding tools are welcome here. Plenty of good contributions are written with the help of LLMs and agentic coding tools — what matters is the quality of the result, not how it was produced.

The flip side is that you own what you submit. Whether a line was typed by hand or generated by an agent, the same bar applies, and the same person — you — is accountable for it. When using AI assistance, please make sure that

  • the code can be licensed under Tensaku's license, i.e. it doesn't reproduce copyrighted or otherwise restricted code
  • the code actually does what it claims, and is covered by tests where that's reasonable
  • you've reviewed the change and understand it well enough to stand behind it and engage with review feedback

Unreviewed, untested output won't be merged, but that's a bar on the result, not on the tool you used to get there.