The QEMU community has broad consensus to not accept assisted-by and similar
trailers, and much less fake co-authored-bys, independent of any AI policy.
Implement this in checkpatch.pl already, so that there is another way for
contributors to discover the AI policy.

Suggested-by: Daniel P. Berrangé <[email protected]>
Reviewed-by: Daniel P. Berrangé <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
---
 scripts/checkpatch.pl | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 03f35e75012..547a59dcac5 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -1811,6 +1811,18 @@ sub process {
                        }
                }
 
+# Reject trailers that credit an AI agent.
+               if ($realfile =~ /^$/ &&
+                   ($line =~ /🤖/ ||
+                    $line =~ /^\s*(?:Assisted|Generated)-by:/i ||
+                    ($line =~ /^\s*Co-authored-by:\s*(.*?)\s*$/i &&
+                     $1 =~ /\bcopilot\b | \bchatgpt\b | \bcodex\b | \bcursor\b 
|
+                            \bgemini\b | \bllama\b | \bnoreply\b | \[bot\] |
+                            
\bclaude\b.*(?:opus|sonnet|fable|haiku|anthropic\.com)/xi))) {
+                       ERROR("QEMU does not allow using AI for contributions, 
" .
+                               "see docs/devel/code-provenance.rst\n" . 
$herecurr);
+               }
+
 # Check SPDX-License-Identifier references a permitted license
                if (($rawline =~ m,SPDX-License-Identifier: (.*?)(\*/)?\s*$,) &&
                        $rawline !~ /^-/) {
-- 
2.55.0


Reply via email to