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
