git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2] SubmittingPatches: add section about AI

From
Christian Couder <christian.couder@gmail.com>
Date
Oct 3, 2025, 14:25 UTC
Message-ID
<CAP8UFD0=W3Mn8FQBmWFPN+3G9V73iorK-Y9Hs-LQ69hWCBeDOw@mail.gmail.com>
In-Reply-To
<aN2fG-nS9fE5-2jD@fruit.crustytoothpaste.net>

On Wed, Oct 1, 2025 at 11:37 PM brian m. carlson <sandals@crustytoothpaste.net> wrote:

Show 20 quoted lines
>
> On 2025-10-01 at 14:02:50, Christian Couder wrote:
> > +[[ai]]
> > +=== Use of Artificial Intelligence (AI)
> > +
> > +The Developer's Certificate of Origin requires contributors to certify
> > +that they know the origin of their contributions to the project and
> > +that they have the right to submit it under the project's license.
> > +It's not yet clear that this can be legally satisfied when submitting
> > +significant amount of content that has been generated by AI tools.
>
> Perhaps we'd like to write this:
>
>   It's not yet clear that this can be legally satisfied when submitting
>   significant amount of content that has been generated by AI tools,
>   so we cannot accept this content in our project.
>
> If we're going to have a policy, we need to be direct about it and not
> let people draw their own conclusions.  Many people don't have English
> as a first language and we don't want people trying to language lawyer.

I understand why you want to be direct, but unfortunately (or fortunately depending on your point of view) some generated content is acceptable if it is not too big, or if it is specific enough or if a human has been involved enough. In a number of cases like for example translated or reworded content, wrapping lines, refactored code, or renamed variables, it is likely that a significant amount of content is acceptable because a human has already been involved and the content is specific enough. If we say right away that we cannot accept it, we might prevent interesting and useful use cases.

Show 5 quoted lines
> We could say something like this:
>
>   Please do not sign off your work if you’re using an LLM to contribute
>   unless you have included copyright and license information for all the
>   code used in that LLM.

For now I don't think we want or need to be involved in checking or trying to check what code and/or training data has been/is used in an LLM, what LLM(s) are used in which AI tools, all the AI tools that a user might have used, etc. See my reply to Chuck Wolber's review related to declare-ai.org.

Show 5 quoted lines
> This allows the possibility that, say, Google trains an LLM entirely on
> their own code, such that there is only one copyright holder and they
> can license it as they see fit.  I don't think we _need_ to consider
> that case if we don't want to allow that (say, for code quality
> reasons), but we could if we wanted to.

I agree it would be nice if some LLMs were trained only on specific code (or on no existing code at all) so that we could alleviate the legal issue with them, but for now I don't think they exist. We can always adapt later if/when they ever appear.

Show 18 quoted lines
> > +Another issue with AI generated content is that AIs still often
> > +hallucinate or just produce bad code, commit messages, documentation
> > +or output, even when you point out their mistakes.
> > +
> > +To avoid these issues, we will reject anything that looks AI
> > +generated, that sounds overly formal or bloated, that looks like AI
> > +slop, that looks good on the surface but makes no sense, or that
> > +senders don’t understand or cannot explain.
>
> I've definitely seen this.  LLMs also typically do not write nice,
> logical, bisectable commits, which I personally dislike as a reviewer.
>
> > +We strongly recommend using AI tools carefully and responsibly.
>
> I think this is maybe not definitive enough.  If we don't believe it's
> possible to sign-off when code is generated using LLMs, then we should
> say definitively, "Contributors may not use AI to write contributions to
> Git," or something similarly clear.

I think it's far too restrictive for no good reason. See above and see my discussion about this with Junio on the first version of this patch he sent last July.

Show 7 quoted lines
> Right now, this sounds too ambiguous and it might allow someone to write
> substantial code that they think is of good quality using an LLM because
> in their view that's careful and responsible, when we don't think that
> users can sign off on that and therefore that's not possible.  Telling
> people to use tools "carefully and responsibly" is like telling people
> to drive "a reasonable and prudent speed" without further qualification
> and then being surprised when they go 200 km/hr down the road.

The sentence ("We strongly recommend using AI tools carefully and responsibly.") is designed to make people pause and think a bit when they are reading machinally or just skimming the doc. It's not designed to set a clear limit on what is acceptable and what is not. And in fact it couldn't do so because there is no such clear limit.

> I'd like to see the language be more like our code of conduct in that it
> is broad and covers a wide variety of behaviour but also explicitly
> states what is and is not acceptable to avoid ambiguity, confusion, or
> argument.

Feel free to make more suggestions. I don't think your goal is easy to achieve though.

Show 11 quoted lines
> > +Contributors would often benefit more from AI by using it to guide and
> > +help them step by step towards producing a solution by themselves
> > +rather than by asking for a full solution that they would then mostly
> > +copy-paste. They can also use AI to help with debugging, or with
> > +checking for obvious mistakes, things that can be improved, things
> > +that don’t match our style, guidelines or our feedback, before sending
> > +it to us.
>
> This kind of use I feel is less objectionable.  I think it might be
> acceptable to use an LLM as a guide, a linter, or a first-pass code
> review.

Yeah, it looks like we all agree on that. The issue is that the limit between these acceptable kinds of use and other problematic ones is fuzzy.

Thanks.
Previous: brian m. carlsonNext: Elijah Newren
Message 20 of 34 in “SubmittingPatches: forbid use of genAI to generate changes”
  1. SubmittingPatches: forbid use of genAI to generate changesJunio C Hamano, Jun 30, 2025
  2. brian m. carlsonJun 30, 2025
  3. Collin FunkJun 30, 2025
  4. Christian CouderJul 1, 2025
  5. Christian CouderJul 1, 2025
  6. Junio C HamanoJul 1, 2025
  7. Junio C HamanoJul 1, 2025
  8. Christian CouderJul 8, 2025
  9. SubmittingPatches: add section about AIChristian Couder, Oct 1, 2025
  10. Chuck WolberOct 1, 2025
  11. brian m. carlsonOct 1, 2025
  12. Ben KnobleOct 2, 2025
  13. Christian CouderOct 3, 2025
  14. Junio C HamanoOct 1, 2025
  15. Christian CouderOct 3, 2025
  16. Junio C HamanoOct 3, 2025
  17. rsbecker@nexbridge.comOct 3, 2025
  18. Christian CouderOct 8, 2025
  19. brian m. carlsonOct 1, 2025
  20. Christian CouderOct 3, 2025
  21. Elijah NewrenOct 3, 2025
  22. brian m. carlsonOct 3, 2025
  23. Junio C HamanoOct 6, 2025
  24. Elijah NewrenOct 8, 2025
  25. Junio C HamanoOct 12, 2025
  26. Christian CouderOct 8, 2025
  27. Junio C HamanoOct 13, 2025
  28. Junio C HamanoOct 23, 2025
  29. Elijah NewrenOct 8, 2025
  30. Christian CouderOct 8, 2025
  31. Michal SuchánekOct 8, 2025
  32. Christian CouderOct 8, 2025
  33. Collin FunkOct 9, 2025
  34. Christian CouderOct 8, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.