# OliveTin's AI Policy ## Runtime: - [x] The project does not include any AI functionality at runtime. - [x] No data, usage, or similar is sent to, or analyized by AI. ## Development - Autonomy level OliveTin development uses up to **Level 2 of 5 (pair programmer)** on the [AI Levels of Autonomy in Software Engineering](https://blog.jread.com/posts/ai-levels-of-autonomy-in-software-engineering/) scale: AI may generate suggestions and non-trivial changes, but humans review and decide what lands in the project. ## Development - Contributions - [x] The project **does accept** contributions that were written with AI help. **However**: - The contribution must be attributed to a human username who takes responsibility for the code as if they wrote it themselves. - AI often generates very unmaintainable code as it gets longer - loads of duplication, very little function re-use amd very poor at following style guides / idiomatic design. All code contributions (AI or not) are scrutinized hard for **maintainability** and **clean merging**. Please follow the CONTRIBUTORS guide. - AI that helps with short tab completion is generally fine. - AI that writes lots of new code across lots of files, or makes lots of superfluous changes is generally less likely to be accepted. - Vibe coding is generally not a suitable way to contribute to this project. - [x] Contributors should declare when AI has been used to help write contributions in the pull request body message. - [x] The project uses AI as an **optional** part of the PR process (coderabbitai). Please raise any concerns about usage within the PR. - [x] Suggestions from coderabbitai can be accepted verbaitem, but ideally it should be the PR author that uses coderabbitai as a guide, who then re-writes the contribution. - [x] Maintainers are the only agents permitted to accept merges. ## Development - Build process - [x] Linters, code review tools, and others which are enabled by AI are allowed, but cannot be added as part of the standard build process. ## Community - [x] Only project admins are allowed to run bots in the community discord server (at the time of writing, the current bot, Japella, is not AI-enabled). - [x] Support is currently not provided by AI. ## Training - [x] You may use the OliveTin code base, documentation and repositories to train AI, but obviously usernames and personally identifiable information may not be stored.