NetBSD also joins the movement to ban contributions generated by AI

NetBSD updates commit rules to exclude AI-generated code

The news was recently announced that the NetBSD Foundation has established a series of new rules to modify your source tree, including a clause that prohibits the inclusion of code generated by artificial intelligence tools such as ChatGPT, GitHub Copilot and Code Llama, without prior written approval from the Core Team.

It is mentioned that the main reason and concern is due to the nature of AIs, since the way they are trained is through the use of a wide variety of information, including code protected by copyright and under different licenses.

On the other hand, there is the issue that when generating code through AI tools, the information is not always taken into account, which can lead to considering the generated code as derived from the code used for training the model and distributed under certain licenses.

In addition to that, when an AI model is trained with code Under licenses that require attribution, code generated by AI tools may not meet this requirement, which could be interpreted as a violation of several open licenses such as GPL, MIT, and Apache. Also license compatibility issues may arise by integrating code generated by models trained in copyleft code into projects under permissive licenses such as BSD.

That is why this generates worries, especially about copyright and Specially in Compliance with licensing policies from NetBSD. That is why the NetBSD Foundation has defined a series of new guidelines that define the standards for committing to its source code repository.

Regarding the new guidelines for committing to the NetBSD project:

  • Code familiarity: Developers are required to only commit code they are familiar with. If there are doubts about the acceptability of the code to be committed, it is recommended to request a review from a developer experienced in that specific area.
  • Approved code: Code that has not been written by the developer himself should not be committed, unless it has been verified that the license of said code allows its import into the NetBSD source code repository and its free distribution. Code generated by large language models or similar technologies is considered committed code and should not be committed without prior written approval from Team Core.
  • Code origin: Committing code from external source trees is prohibited. All code must be obtained exclusively from cvs.NetBSD.org.
  • Approval level required: The magnitude of the changes determines the level of approval required. Additionally, the introduction of new features or the inclusion of new packages requires prior discussion on a specific technical mailing list and approval by the core.
  • Code tests: Before committing the code, extensive testing is necessary to ensure its proper functioning. It is crucial to test code in a variety of scenarios and environments, and ensure that it does not cause long-term regressions.
  • Grouping of «Commits»: If several commits are part of the same correction, they must be grouped into a single commit.
  • Each "Commit" as a separate entity: Each commit must represent a single correction, addition, or modification. Avoid grouping multiple changes in a single "commit" simplifies the extraction process to development branches and facilitates the review of changes by the release team (releng).
  • Clear documentation in the “Commits” log: It is crucial to provide detailed documentation of the reasons behind each change in the commit records. This information is invaluable for understanding the purpose and context of a change in the future.
  • Give proper credit: Each commit must give appropriate credit to contributors, either for fixes submitted in issue reports or for code obtained from other open source projects.
  • Commits Reversal Process: It is recommended not to revert other developers' commits without prior discussion or agreement. In case of disagreement, the Core Team must be contacted as the mediation authority.

finally if you are interested in knowing more about it, you can check the details in the following link


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.