alamb commented on code in PR #24510:
URL: https://github.com/apache/datafusion/pull/24510#discussion_r4189562136
##########
docs/source/contributor-guide/index.md:
##########
@@ -129,6 +134,87 @@ Please ensure your PR follows the [testing
guide](testing.md). In particular:
[Choosing What Kind of Test to
Write](testing.md#choosing-what-kind-of-test-to-write).
- Run any relevant commands from the [testing quick
start](testing.md#testing-quick-start).
+## AI-Assisted contributions
+
+DataFusion has the following policy for AI-assisted PRs:
+
+- We welcome AI-assisted PRs from anyone. We do not welcome unreviewed "AI
dumps" (defined below).
+- The PR author should have personally read the entire PR they submit, and
**understand the core ideas** behind the implementation **end-to-end**. Authors
should be ready to justify and help reviewers understand the design and code
during review.
+- **Call out unknowns and assumptions**. It's okay to not fully understand
some bits of AI-generated code. Please point these cases out so we can work
together to clear up any concerns.
+
+### What is an "AI dump" and why it is not helpful
+
+An "AI dump" is a PR, or a series of PRs, consisting largely of AI-generated
+code and descriptions that the author has not reviewed and does not understand.
+The code may even be correct. The problem is that all the work of understanding
+falls on the reviewer.
+
+Code review serves two purposes:
+
+1. Finish the intended task.
+2. Share knowledge between authors and reviewers, as a long-term investment in
+ the project. For this reason, even if someone familiar with the codebase
+ could finish a task more quickly by themselves, we are still happy to help
+ a new contributor work on it.
+
+An AI dump meets neither purpose. Maintainers could finish the task faster by
+running the AI tool themselves, and an author who acts only as a pass-through
+proxy for the tool learns little from the review.
+
+Reviewing capacity for the project is **very limited**, so PRs that appear to
be
+AI dumps may not get reviewed, and may eventually be closed.
+
+Multiple PRs created in a short amount of time, especially by a first-time
+contributor, that in our judgment show a lack of understanding or author
+engagement may be treated as spam and closed. One high quality PR that you work
+with maintainers to merge is far more valuable to you and the project than ten
+PRs you have your agent generate and submit for you.
+
+### Responding to review comments
+
+The same policy applies to review discussion as to the code itself: reviewers
+want to talk to **you**, not to your AI tool. Please do not paste an
AI-generated
+response to a review comment verbatim or have your agent respond to
Review Comment:
This is a great point -- I tried to clarify in 57fde97742 to emphasize that
the point is to avoid unreviewed AI dumps. Here is the updated text:
## Responding to review comments
The same policy applies to review discussion as to the code itself: reviewers
want to talk to **you**, not to your AI tool. Please do not respond to
reviewer
comments with unreviewed, fully AI-generated responses as again this puts
all the
burden on the reviewer and you learn nothing. We expect your responses to be
in your own words, though it is fine to use AI to help prepare your response
(for example to understand the comment, or help translate your response to
English). Examples of unhelpful unreviewed AI comment dumps:
- Summarizes the diff rather than answering the question that was asked.
- Lists the commands run locally (e.g. `cargo fmt`, `cargo test`)
and whether they passed. This is not useful to reviewers because CI
already runs
these checks.
- Contains statements that don't make sense in context, such as claiming
tests could not be run because `cargo` is not installed.
For example, see [this review thread in arrow-rs][arrow-rs-review-example]
where
the reviewer asked a design question, and received several replies that
described what had changed and which commands had been run, rather than an
answer to the question.
Again, the point of code review is to help the project **and** to help you
grow
as an engineer, so please read each comment, make sure you understand it, and
reply in your own words.
##########
docs/source/contributor-guide/index.md:
##########
@@ -129,6 +134,87 @@ Please ensure your PR follows the [testing
guide](testing.md). In particular:
[Choosing What Kind of Test to
Write](testing.md#choosing-what-kind-of-test-to-write).
- Run any relevant commands from the [testing quick
start](testing.md#testing-quick-start).
+## AI-Assisted contributions
+
+DataFusion has the following policy for AI-assisted PRs:
+
+- We welcome AI-assisted PRs from anyone. We do not welcome unreviewed "AI
dumps" (defined below).
+- The PR author should have personally read the entire PR they submit, and
**understand the core ideas** behind the implementation **end-to-end**. Authors
should be ready to justify and help reviewers understand the design and code
during review.
Review Comment:
I tried to incorporate this feedback in
4405473b7321fb38e6661b05583517352dfe23e2
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]