We've just rolled out a new policy for using generative AI tools when contributing to BeeWare.

In short, we don't care if you use AI tooling or not. However, we *do* expect that a human takes responsibility for everything that is contributed - including adhering to project guidelines - and for that human to declare if they've used AI tooling.

The full policy can be found here:
https://beeware.org/contributing/guide/policies/ai-policy/

AI Policy - BeeWare

@beeware Recently history shows that working AI-generated code is difficult to read or maintain. Is this what you want for the project?
@paulehoffman I suggest you read the AI policy we have published.

@beeware I did, of course. I am not a BeeWare maintainer, so I don't know how strict the code reviewers are, and whether they are then assumed themselves to understand the contributed code long-term.

My concern is that allowing code from a source that is known to be harder to maintain is quite different than accepting it from humans who have a much higher likelihood of becoming long-term maintainers themselves.

@paulehoffman The policy says, explicitly, that:

* A human is always responsible
* The human contributor must understand the code they contribute
* The human reviewer must understand the code they're reviewing.

There is functionally no difference between accepting a PR from a drive-by human contributor, and accepting an AI-generated PR.

Yes, there is a different long term load balance on the maintainers, but that's an entirely different issue, and one unlikely to be fixed with a policy.

@beeware Thanks. I have a vibe feeling that a contributor who uses AI to create code is much more likely to be "drive-by" than a contributor who hand-codes, but I have no evidence to back that up. For your sake, I hope I'm wrong, given the diversity of your code base.