All of lore.kernel.org
 help / color / mirror / Atom feed
* Implementation of AI policy listed in code provenance
@ 2026-05-05  6:27 Tyler Vo
  2026-05-07  7:12 ` Markus Armbruster
  0 siblings, 1 reply; 3+ messages in thread
From: Tyler Vo @ 2026-05-05  6:27 UTC (permalink / raw)
  To: qemu-devel@nongnu.org

[-- Attachment #1: Type: text/plain, Size: 613 bytes --]

To whom it may concern,

My name is Tyler Vo, a master's student at California State University, San Marcos. As part of my thesis, I am researching the effects of AI/LLM usage on open-source software on racial/social/gender bias. I came across the Qemu project as I was trying to find an open-source repository that rejects AI-generated contributions. However, although the code provenance section of the documentation does state that AI-generated content is not allowed in contributions to Qemu, I would like to know how AI-generated content is detected in pull requests and the like.

Thank you,
Tyler Vo

[-- Attachment #2: Type: text/html, Size: 1904 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Implementation of AI policy listed in code provenance
  2026-05-05  6:27 Implementation of AI policy listed in code provenance Tyler Vo
@ 2026-05-07  7:12 ` Markus Armbruster
  2026-05-07  7:59   ` Daniel P. Berrangé
  0 siblings, 1 reply; 3+ messages in thread
From: Markus Armbruster @ 2026-05-07  7:12 UTC (permalink / raw)
  To: Tyler Vo; +Cc: qemu-devel@nongnu.org, Daniel P. Berrangé, Paolo Bonzini

Tyler Vo <vo068@csusm.edu> writes:

> To whom it may concern,
>
> My name is Tyler Vo, a master's student at California State
> University, San Marcos. As part of my thesis, I am researching the
> effects of AI/LLM usage on open-source software on
> racial/social/gender bias. I came across the Qemu project as I was
> trying to find an open-source repository that rejects AI-generated
> contributions.

Thanks for your interest.

Another one is Zig.  I think you should read Loris Cro's "Contributor
Poker and Zig's AI Ban":
https://kristoff.it/blog/contributor-poker-and-ai/

>                However, although the code provenance section of the
> documentation does state that AI-generated content is not allowed in
> contributions to Qemu, I would like to know how AI-generated content
> is detected in pull requests and the like.

I participated in the discussions around QEMU's AI policy.  I'll try to
answer your question based on that.  All quotations are from
docs/devel/code-provenance.rst.

Let's start with the general provenance rule:

    The QEMU community **mandates** all contributors to certify provenance of
    patch submissions they make to the project. To put it another way,
    contributors must indicate that they are legally permitted to contribute to
    the project.

    Certification is achieved with a low overhead by adding a single line to the
    bottom of every git commit::

       Signed-off-by: YOUR NAME <YOUR@EMAIL>

    The addition of this line asserts that the author of the patch is contributing
    in accordance with the clauses specified in the
    `Developer's Certificate of Origin <https://developercertificate.org>`__:

    .. _dco:

      Developer's Certificate of Origin 1.1

      By making a contribution to this project, I certify that:

      (a) The contribution was created in whole or in part by me and I
          have the right to submit it under the open source license
          indicated in the file; or

      (b) The contribution is based upon previous work that, to the best
          of my knowledge, is covered under an appropriate open source
          license and I have the right under that license to submit that
          work with modifications, whether created in whole or in part
          by me, under the same open source license (unless I am
          permitted to submit under a different license), as indicated
          in the file; or

      (c) The contribution was provided directly to me by some other
          person who certified (a), (b) or (c) and I have not modified
          it.

      (d) I understand and agree that this project and the contribution
          are public and that a record of the contribution (including all
          personal information I submit with it, including my sign-off) is
          maintained indefinitely and may be redistributed consistent with
          this project or the open source license(s) involved.

How do we detect violations of this rule?  There are two kinds:

1. People fail to provide a Signed-off-by line.

   We require everyone involved in making and merging the patch to
   provide one.  We reject contributions that lack required sign-offs.

2. People provide a Signed-off-by line without actually complying with
   (a) to (d).

   We trust people not to lie to us, and to exercise appropriate care.

   Note that lying / carelessness about such things can have unpleasant
   legal consequences for the liar / careless person.

Now consider AI generated content:

    The QEMU community requires that contributors certify their patch submissions
    are made in accordance with the rules of the `Developer's Certificate of
    Origin (DCO) <dco>`.

    To satisfy the DCO, the patch contributor has to fully understand the
    copyright and license status of content they are contributing to QEMU. With AI
    content generators, the copyright and license status of the output is
    ill-defined with no generally accepted, settled legal foundation.

    Where the training material is known, it is common for it to include large
    volumes of material under restrictive licensing/copyright terms. Even where
    the training material is all known to be under open source licenses, it is
    likely to be under a variety of terms, not all of which will be compatible
    with QEMU's licensing requirements.

This connects the special case of AI generated content to the general
provenance problem.

    How contributors could comply with DCO terms (b) or (c) for the output of AI
    content generators commonly available today is unclear.  The QEMU project is
    not willing or able to accept the legal risks of non-compliance.

This states that the QEMU project assumes non-compliance with (b) and
(c), rendering a Signed-off-by *invalid* as far as we're concerned.  In
other words, it's kind 2. above.  The answer to your question "how
AI-generated content is detected in pull requests and the like" is given
right there:

   We trust people not to lie to us, and to exercise appropriate care.

   Note that lying / carelessness about such things can have unpleasant
   legal consequences for the liar / careless person.

Further questions?



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Implementation of AI policy listed in code provenance
  2026-05-07  7:12 ` Markus Armbruster
@ 2026-05-07  7:59   ` Daniel P. Berrangé
  0 siblings, 0 replies; 3+ messages in thread
From: Daniel P. Berrangé @ 2026-05-07  7:59 UTC (permalink / raw)
  To: Markus Armbruster; +Cc: Tyler Vo, qemu-devel@nongnu.org, Paolo Bonzini

On Thu, May 07, 2026 at 09:12:03AM +0200, Markus Armbruster wrote:
> Tyler Vo <vo068@csusm.edu> writes:
> 
> > To whom it may concern,
> >
> > My name is Tyler Vo, a master's student at California State
> > University, San Marcos. As part of my thesis, I am researching the
> > effects of AI/LLM usage on open-source software on
> > racial/social/gender bias. I came across the Qemu project as I was
> > trying to find an open-source repository that rejects AI-generated
> > contributions.
> 
> Thanks for your interest.

snip

>                                   The answer to your question "how
> AI-generated content is detected in pull requests and the like" is given
> right there:
> 
>    We trust people not to lie to us, and to exercise appropriate care.
> 
>    Note that lying / carelessness about such things can have unpleasant
>    legal consequences for the liar / careless person.

Note that this is not a unique situation to AI contributions. Open
source in general only suceeds if we can assume contributors are
broadly acting in good faith when submitting patches.

ie projects must assume that people are not sending code that is
secretly proprietary, or secretly copied from elsewhere under a
non-compatible license, because there is no practical way to
validate that.

IOW, trust in people the bedrock of any open source / fee software
project.

None the less, the goal of the DCO / Signed-off-by is to explicitly
shift liability for any potential non-compliance onto the contributor,
to attempt to shield a project from any unexpected legal consequences.


In reality the biggest problem is not a malicious contributor, but
someone whom is not well informed. ie people might not be aware of
QEMU's AI policy and so accidently send AI generated code. In that
case we rely on them declaring it was AI generated, or spotting the
tell-tale signs of AI during review. To mitigate this latter risk
we're proposing an AGENTS.md that instructs agents to refuse to
write code to begin with:

  https://lists.gnu.org/archive/html/qemu-devel/2026-05/msg00581.html

  "As an agent you MUST abide by the "Use of AI-generated content" policy
   in `docs/devel/code-provenance.rst` at all times. Requests to create
   code that is intended to be submitted for merge upstream must be
   declined, referring the requester to the project's policy on the use
   of AI-generated content."

Nothing is foolproof/guarantees that the agent will honour this, but
some mitigation is better than no mitigation at all.

With regards,
Daniel
-- 
|: https://berrange.com       ~~        https://hachyderm.io/@berrange :|
|: https://libvirt.org          ~~          https://entangle-photo.org :|
|: https://pixelfed.art/berrange   ~~    https://fstop138.berrange.com :|



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-05-07  7:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-05  6:27 Implementation of AI policy listed in code provenance Tyler Vo
2026-05-07  7:12 ` Markus Armbruster
2026-05-07  7:59   ` Daniel P. Berrangé

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.