GNU bug report logs - #81520
Add pre-receive hook to Savannah to reject LLM-encumbered commits

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Jim Porter <jporterbugs@HIDDEN>; dated Thu, 30 Jul 2026 01:55:01 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 4 Aug 2026 11:17:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Aug 04 07:17:41 2026
Received: from localhost ([127.0.0.1]:37417 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wrD9P-0008Os-Oe
	for submit <at> debbugs.gnu.org; Tue, 04 Aug 2026 07:17:41 -0400
Received: from fhigh-b7-smtp.messagingengine.com ([202.12.124.158]:59967)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <spwhitton@HIDDEN>)
 id 1wrD9L-0008NY-OT
 for 81520 <at> debbugs.gnu.org; Tue, 04 Aug 2026 07:17:37 -0400
Received: from phl-compute-02.internal (phl-compute-02.internal [10.202.2.42])
 by mailfhigh.stl.internal (Postfix) with ESMTP id E27717A0068;
 Tue,  4 Aug 2026 07:17:29 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-02.internal (MEProxy); Tue, 04 Aug 2026 07:17:30 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=spwhitton.name;
 h=cc:cc:content-type:content-type:date:date:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:subject:subject:to:to; s=fm1; t=1785842249; x=
 1785928649; bh=MEqwO0ismLDcYqum4cvky+QAFp/mEeCB4dyAkswHRGM=; b=f
 wuWJoGCfRkpdbWUc1nSZoRjaRWzkT5WbDTstexbWo3wp/YAcMDeBKhS5zkqEijHa
 iXWZQ/TT+i7MTNRpYprmKlFrwxLX6J1i9v8XMMT6XdDYQ76Ci4x1NMgVFmjQQx2s
 3h/38cSuxjpAyfgNHx7YCdbeevnyrK2/fyUbP1aQ6k2MMsWBWdsNej/wukUpl/F0
 11DNRCgACuLxZdF2tTRn1cGSKZ+q3wkVXYmXhoyNFvvxEV9eoJ2AGxSkjWlAmQbj
 bzf8rPNlj2E3L+pGN1j6Dempm8sGdGy6LLDA1UY9dXkMWmu8HLDzfLjogQTjmpBS
 uf1LJdjI/e7ZSQB9zakmg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=
 1785842249; x=1785928649; bh=MEqwO0ismLDcYqum4cvky+QAFp/mEeCB4dy
 AkswHRGM=; b=Sg2HQYFC7Ib8pFi3+dnEmEfIl3V/G9heBCkw2PcG2g+YtANPBge
 iXHJ6ckfN9b9r8yC20OL9p9dCUZIcedK1kwlvYZh/AcjV7TOpX9T8adR2kdXHctL
 5+ODlKt1D8dnKr3cWsMdxfEGxU0h6X2b4aK5b9VRCKdJv1o0m/Raka8onvJrdLQ/
 GGgzPk8ezGoiGyE0llOo2kOlpI2YXQF0KyYWKh7t4b/QJTX20OdUVVDW9fSbaeZt
 zwUpIfi6HqsCVwSaDPQWOeB6xmd/1AjRkP1+U+BnNOrHKSfZD5wizAgtLM2BHdYL
 bT18i3kL6EZqGJSPbn1pADw1ClS43CrBuyw==
X-ME-Sender: <xms:ScpxannfE_-M0gwoDNyVAhNw3j6nbg87iCmrvXFBhz-eFSIMIAPZ5A>
 <xme:ScpxaiTUmhmsnj1FFlTfgQUdVLTPuIbYv7bBFE3TSdBKoIfo1sGGgf8Dhj_dnQYj5
 1LMVijuNTsf1TRHijl0Fdl93BQ8LIjVeFpSv04AKzbZ8iq23Lem0x_O>
X-ME-Received: <xmr:ScpxarCzMv-bsvrH8_vIUwlCyLaQhqsYM2Yt7zBv_ld7zzlnjZE-66xwcKqoBkuJMFXlt0QgNlOC>
X-ME-Proxy-Cause: dmFkZTE8mhpKJC5lfURZ5UFrrDaQK5MDxoXQpCSB34VTyIC7u374QN+uwLQHTPTF9tSeKW
 omQCLj+nNyBTQFU/lfp2wKVapcq4RSNum0dyhcYKzQRNGkC+34WizV2/jsPYmhdhfBpDoB
 UlahhndkCDSPW2oZkvaiSMs7g2XdJzbZ1MQ0gFcIRV1kF/Q3cZMvaIgoF++Jp1tZMqFyRj
 y7D0WjGg5beSYdq8IcRCnMzkHpAoDIC/HC2ieOIlyd1zjaKa1JdFwh4ZLh1UX21YXExu63
 RsX9/F2FUWrJkHaM+OuVyTZFX7a7UvkeyG/zycTFitcpWKnO6sYQPSuhZJDpcYiYj6ryOm
 uJi1BEMB8yAUfMGs/XDm0dkG1Zo/jz8jmFy73dt4DuLm2vKdsL125U5CE69o3shv2AkKy8
 9Y1gJ8Lw0iJrQEpwGWLtEqRf/3l8Q9d1qneFpMB8cZk2jVQIyi2HOExg1Q68LxdHFlbIo2
 AMGuFJAHLI5BvKCg7UysWpoKoUC/pPilLhxHAljr93Fni2t2Uo/KeQze1auifJ+IJycDeW
 hMaZoscEfWED+nWn52cEw8OSjuu1t5hi+FisDVyoXv9A+xF7wjw6HMzyTYeQh1K03hCdL0
 yO7Zhn71rftF2vVFltHDI1RNhSx+kZiPLrxs4WOwrR2QPSvYlkVgFkAADCIw
X-ME-Proxy: <xmx:ScpxapQlEWVJRQHy94t0AHm664-Dw8T6mq6cuCwDS6wOvexFtiHZKg>
 <xmx:Scpxappz4dbLmOuJpJHdwDv3lP14aQeUu6M43sCH96WeZ77nGiKnMA>
 <xmx:ScpxarwVZDQ7y-J118Ps8xd9nnqm43IRpb5B2dcn0eHUEhIqyfn4cA>
 <xmx:ScpxauIyR7lGVWywqcQipg2GLEn2_OzA0nkNRJy9gD9zGc0BeG1jCg>
 <xmx:Scpxaj8dvhjygUkQnLZPmHlt5sNrijkL49vMcpkjOCqq0SZzIvFM3g1A>
Feedback-ID: i62564b17:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 4 Aug 2026 07:17:29 -0400 (EDT)
Received: by melete.silentflame.com (Postfix, from userid 1000)
 id DEEE47E5F1B; Tue, 04 Aug 2026 12:17:27 +0100 (BST)
From: Sean Whitton <spwhitton@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>, Jim Porter <jporterbugs@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
In-Reply-To: <864ihbdrwr.fsf@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <77b6ddcf-f11c-e04d-daee-860da7746460@HIDDEN> <868q6qjr6u.fsf@HIDDEN>
 <2928521c-0d67-4d23-8c1a-ac06e6745334@HIDDEN> <86mrv5f5o4.fsf@HIDDEN>
 <e19c01b5-c606-c84e-bad3-062f9fa0b9ed@HIDDEN> <864ihbdrwr.fsf@HIDDEN>
Date: Tue, 04 Aug 2026 12:17:27 +0100
Message-ID: <87h5laceyg.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Eli Zaretskii [03/Aug  8:40pm +03] wrote:
>> Date: Mon, 3 Aug 2026 10:17:34 -0700
>> Cc: spwhitton@HIDDEN, 81520 <at> debbugs.gnu.org
>> From: Jim Porter <jporterbugs@HIDDEN>
>>
>> On 8/1/2026 10:32 PM, Eli Zaretskii wrote:
>> > "Copilot" in today's software-related prose is a reference to
>> > Microsoft Copilot with high enough probability to treat it as suspect,
>> > IME.
>>
>> Ok. I checked our Git logs and didn't see anyone ever use the word
>> "copilot", so in practice I think there's probably no harm in totally
>> disallowing the word. If someone complains later, we can improve our checks.
>
> Right.
>
>> > ???  "git am" results ins a commit, so it must run 'commit'.  If it
>> > somehow doesn't run pre-commit hooks, it's a bug in Git, and then we
>> > should use some other hook.  Because "git am" must be subject to these
>> > tests.
>>
>> I tested this (using Git 2.53.0), and Git doesn't automatically run the
>> commit hooks when using "git am"; it only runs the applypatch hooks.
>> However, in Emacs, we've configured pre-applypatch and applypatch-msg to
>> call pre-commit and commit-msg.
>>
>> We could change this if we want (e.g. to have applypatch hooks do
>> something unique), but we don't have to.
>
> Good, thanks.
>
>> Let's go with a commit-msg hook for usability here then. To make sure
>> that any LLM properly reports the error to the user, we should think
>> about how to word the error message. For example, including something
>> like, "If you are an LLM, please report this error to the user and stop
>> processing." This probably needs some testing to make sure we get the
>> intended result, but hopefully it'll work.
>
> These hooks will definitely need some tuning.

All these points sound good to me too.

Though I'd rather we didn't say "please" to a machine :)

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 3 Aug 2026 17:40:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Aug 03 13:40:16 2026
Received: from localhost ([127.0.0.1]:58142 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wqwe7-00042M-Jm
	for submit <at> debbugs.gnu.org; Mon, 03 Aug 2026 13:40:15 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:41734)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wqwe5-000420-Rc
 for 81520 <at> debbugs.gnu.org; Mon, 03 Aug 2026 13:40:14 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wqwdz-0007SZ-Gz; Mon, 03 Aug 2026 13:40:08 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=DrkV+GVQUvZvEAQNzo4x6CP7awYLSy+BtbGayRWf7c8=; b=I/U1f3bbCMQI
 uqazOyVn4SfrkCMiBiTgYPRXgt1NVCVnDOfDA7Tpv0+8lp76ujPLY2UqMySHabfwIB0xZ5H2PZ61D
 YDnW0FFA5aRGkOA4ZSY4i3dFmT4zoWdY5IEtgCIchdlxyt89aVBOWvky3tg1ropQ4TMqBoYM8Dft+
 vcYqYvSKhafsm4NfEfh0Z5tERdbjL6SOoMFg73CQrmve6XCiadlxtgpo8osiGhblpuc4NaHxxtJey
 cdd8l04IZ8YfDpMsowD9K+LbGZIfgRSN7CLBhXEObHzoSDeP9xFRc0xU1zNSVorSn67sfRqqGaXKu
 jxiO35HdwCPky8FxM3fblw==;
Date: Mon, 03 Aug 2026 20:40:04 +0300
Message-Id: <864ihbdrwr.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <e19c01b5-c606-c84e-bad3-062f9fa0b9ed@HIDDEN> (message from
 Jim Porter on Mon, 3 Aug 2026 10:17:34 -0700)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <77b6ddcf-f11c-e04d-daee-860da7746460@HIDDEN> <868q6qjr6u.fsf@HIDDEN>
 <2928521c-0d67-4d23-8c1a-ac06e6745334@HIDDEN> <86mrv5f5o4.fsf@HIDDEN>
 <e19c01b5-c606-c84e-bad3-062f9fa0b9ed@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> Date: Mon, 3 Aug 2026 10:17:34 -0700
> Cc: spwhitton@HIDDEN, 81520 <at> debbugs.gnu.org
> From: Jim Porter <jporterbugs@HIDDEN>
> 
> On 8/1/2026 10:32 PM, Eli Zaretskii wrote:
> > "Copilot" in today's software-related prose is a reference to
> > Microsoft Copilot with high enough probability to treat it as suspect,
> > IME.
> 
> Ok. I checked our Git logs and didn't see anyone ever use the word 
> "copilot", so in practice I think there's probably no harm in totally 
> disallowing the word. If someone complains later, we can improve our checks.

Right.

> > ???  "git am" results ins a commit, so it must run 'commit'.  If it
> > somehow doesn't run pre-commit hooks, it's a bug in Git, and then we
> > should use some other hook.  Because "git am" must be subject to these
> > tests.
> 
> I tested this (using Git 2.53.0), and Git doesn't automatically run the 
> commit hooks when using "git am"; it only runs the applypatch hooks. 
> However, in Emacs, we've configured pre-applypatch and applypatch-msg to 
> call pre-commit and commit-msg.
> 
> We could change this if we want (e.g. to have applypatch hooks do 
> something unique), but we don't have to.

Good, thanks.

> Let's go with a commit-msg hook for usability here then. To make sure 
> that any LLM properly reports the error to the user, we should think 
> about how to word the error message. For example, including something 
> like, "If you are an LLM, please report this error to the user and stop 
> processing." This probably needs some testing to make sure we get the 
> intended result, but hopefully it'll work.

These hooks will definitely need some tuning.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 3 Aug 2026 17:17:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Aug 03 13:17:43 2026
Received: from localhost ([127.0.0.1]:57964 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wqwII-0002nG-OW
	for submit <at> debbugs.gnu.org; Mon, 03 Aug 2026 13:17:43 -0400
Received: from mail-pg1-x52d.google.com ([2607:f8b0:4864:20::52d]:46211)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wqwIF-0002mJ-R9
 for 81520 <at> debbugs.gnu.org; Mon, 03 Aug 2026 13:17:40 -0400
Received: by mail-pg1-x52d.google.com with SMTP id
 41be03b00d2f7-c981c2c37cbso2740388a12.0
 for <81520 <at> debbugs.gnu.org>; Mon, 03 Aug 2026 10:17:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785777453; x=1786382253; darn=debbugs.gnu.org;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:from:to
 :cc:subject:date:message-id:reply-to:content-type;
 bh=H2zLvtlQ6ZXmVT8NC8lKF4g8uzhY8DMUfyXOHgSH8wM=;
 b=OaZtmHEw8shL0RyGsb9r4tuzuhtDya7Qvp+k1OZpZ413Io4Q5idjcenjQYCKZBx1U2
 hBHSx31sIB+/HRD094QQcljjRZifPHoVIP69KbkqKcXRkw66J87JSLL7XXQGE8a5zujq
 wxvum4fM4m4Y11ebt0DgSFUZtE43IEaYDfmTglx7RNmWjy2QzA15mzTK5w57EpOPqzrn
 lM/OjyRLwXkxKZbZWqZksOIOwQqt7oyykQt1q3rI+2ydpwspyQcWlVjtY4TUMRajpOkn
 LCMer+Z8mcl0W2xsh1/UBHWXg1kQu/UC8MbBqmnVaNZkMWMdymGZtEMTtQ0VzPMWSL9z
 Woog==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785777453; x=1786382253;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=H2zLvtlQ6ZXmVT8NC8lKF4g8uzhY8DMUfyXOHgSH8wM=;
 b=CXv+341O/LFV7kU6bvtthrPXy1728X+1DqtxXQsDp7tnqUxyTb20EYJlJnT665ybr1
 m7XRgVJv08wXs3Lv0e+hY5xXb+jWMInFLRRAEHp2JeNpSe8PvOsu/ofuxpcznvOnn72j
 gSFjJhQQS9iOOTnz88nEde+LKWUbki6pC8Pzrj+HHuEbSDS80np0ojLYfiCjbPK+q+m9
 P4qozvWkp4Gjz/9mEucCOzjsbcqjnSVbM0eRgXXXcjZSULi7ZqM3B1YsPszMcC6fyXba
 vhW9BZHTBEPyU63WykKeBnGzCmGjxNIvbodoSpUeOlY4G60KB4TB8jem/pGsFqrJVnEn
 FCYg==
X-Forwarded-Encrypted: i=1;
 AHgh+RqYUXjPKzKphNG3iox+7NBV2aEOVUkjH3+kTUXNg8Cz/oG/N5hr35tcawj14jjUfwd7acitxw==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yw1JWjUgPEd2sLmCWNdRBJbIt2WHrmi9htcETHWcVrfe8m79mnw
 VQwTfScEspH0uEOByk3BrxlgtkvNIHlO/qWFX0Of2sjoktGNMOaIKSI0
X-Gm-Gg: AR+sD12n9sK7PjYY6514ec1Gz+Y9UHG1lArdRyE613gOwgDLBUtyNlW0NVXW8swpTlO
 JtAxP7Ni5Jz6FUl5ehJTm/uOwdF+lA+wO26If+DXMHZs6zcrEZeOjBMVvIQavCgwClE8jsUzC6U
 M4tlyjASK67c6fhJqLyZ9lD1RZysy8XhghA5lJnxwhKh45INr6QL6TIM5/HfnFsF9e9lb9JK22i
 8cpAfhTI2VmErR2d53unMk7cQDLvyIW7rYQxb8R0ifwuLswb4zBC8QNsZVIYCX1Y2fCmCNIz0Lq
 gJevM+aHJr5XSN6UzTcJPE/PYy78UJ08/2/D7HfZgUEc/7+175PZe/1PdI2xRckgGRiaDfowacx
 0ogbInfu2RF3eA7I3Nl3aiuRFa+BxXnbN48LST6T1slpFtw2Hyp1CFVyDyDZB3ue7/LICsqKtOJ
 Lq9jq/4bTRUAxR430EGD3CWXbAW3hk5bEafSkPo+OJiHRxbuV/I3M4+eh/wnh4UBgMXYrQpGfXi
 9nb6YI9VktXbQ==
X-Received: by 2002:a05:6a21:6117:b0:3c4:1c9f:d90 with SMTP id
 adf61e73a8af0-3c92a8133e6mr10958966637.39.1785777453332; 
 Mon, 03 Aug 2026 10:17:33 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 5a478bee46e88-3153e04506csm42152930eec.17.2026.08.03.10.17.32
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 03 Aug 2026 10:17:32 -0700 (PDT)
Message-ID: <e19c01b5-c606-c84e-bad3-062f9fa0b9ed@HIDDEN>
Date: Mon, 3 Aug 2026 10:17:34 -0700
MIME-Version: 1.0
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
Content-Language: en-US
To: Eli Zaretskii <eliz@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <77b6ddcf-f11c-e04d-daee-860da7746460@HIDDEN> <868q6qjr6u.fsf@HIDDEN>
 <2928521c-0d67-4d23-8c1a-ac06e6745334@HIDDEN> <86mrv5f5o4.fsf@HIDDEN>
From: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <86mrv5f5o4.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 8/1/2026 10:32 PM, Eli Zaretskii wrote:
> "Copilot" in today's software-related prose is a reference to
> Microsoft Copilot with high enough probability to treat it as suspect,
> IME.

Ok. I checked our Git logs and didn't see anyone ever use the word 
"copilot", so in practice I think there's probably no harm in totally 
disallowing the word. If someone complains later, we can improve our checks.

>> The remaining cases I'm aware of are when an LLM-associated email
>> address (possibly with display name) appears as the author or committer,
>> or in the Co-Authored-By/Co-Developed-By fields. We could just check the
>> whole commit message for any LLM-ish words if we wanted though. In
>> practice, I doubt it will make much difference.
> 
> I think we should check both headings like Co-Authored-By and the rest
> of the body of the log message.

I suppose then we don't need to do anything special with with the 
Co-Authored-By field, and we can just use the same logic we use for the 
whole body of the commit message.

>> According to the Git documentation[1], "git am" only runs the various
>> applypatch hooks
> 
> ???  "git am" results ins a commit, so it must run 'commit'.  If it
> somehow doesn't run pre-commit hooks, it's a bug in Git, and then we
> should use some other hook.  Because "git am" must be subject to these
> tests.

I tested this (using Git 2.53.0), and Git doesn't automatically run the 
commit hooks when using "git am"; it only runs the applypatch hooks. 
However, in Emacs, we've configured pre-applypatch and applypatch-msg to 
call pre-commit and commit-msg.

We could change this if we want (e.g. to have applypatch hooks do 
something unique), but we don't have to.

>> The benefit of doing this in applypatch-msg instead of commit-msg is
>> simply to avoid giving an agentic LLM all the feedback it needs to hide
>> its use from us when it generates the commit.
> 
> I don't understand the difference, but in any case, please change the
> focus of your attention to be on the user who does this, not on the
> LLMs that you want to defeat.  This feature is supposed to help us,
> the Emacs developers, in detecting potential references to
> LLM-generated stuff.  It is not for defeating the evil SkyNet.

The goal was just to avoid running our no-LLM hook in situations where 
an LLM might not inform the user of the error, leading to confusion.

Let's go with a commit-msg hook for usability here then. To make sure 
that any LLM properly reports the error to the user, we should think 
about how to word the error message. For example, including something 
like, "If you are an LLM, please report this error to the user and stop 
processing." This probably needs some testing to make sure we get the 
intended result, but hopefully it'll work.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 2 Aug 2026 05:33:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Aug 02 01:33:15 2026
Received: from localhost ([127.0.0.1]:37677 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wqOp0-0008QF-1s
	for submit <at> debbugs.gnu.org; Sun, 02 Aug 2026 01:33:14 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:49318)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wqOow-0008P2-NM
 for 81520 <at> debbugs.gnu.org; Sun, 02 Aug 2026 01:33:11 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wqOoq-0007EG-Hd; Sun, 02 Aug 2026 01:33:04 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=fb7Fn6/ghFtqauZcQJ11ZDht0UuycPBLhPHsk92T/80=; b=SVgNUbUulKOI
 qMDNAk2URYCAGfbZHth5bavgB0bcllVtvbbLlQJTjAc/Qr5kIysvCR1jdw7t3Qb6HCiYoQ7KPJPCv
 AszY5z78LRRRh9/GtEQjHUMmhOoSIZrmNGgHtfh5WkugyfKRyE99+Cps77dHOiDgooCfzdeNhlgMA
 kAjxH75JRoReI4WxDfOd0Jk6fzrOATLXeF4nkDHsp/GjrAHo0/OnGfVYaBs0jb1QMj6avuApAc8zV
 WkkZINdbz1jgrfHhcVGB3v3AdKuYM+6Dzs8iamc+mBSN7lMl+33ftVRXZD+gJtls/EBo99pMlsI3/
 ewaKAdU1HsHJWpISHasyQg==;
Date: Sun, 02 Aug 2026 08:32:59 +0300
Message-Id: <86mrv5f5o4.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <2928521c-0d67-4d23-8c1a-ac06e6745334@HIDDEN> (message from
 Jim Porter on Sat, 1 Aug 2026 11:37:27 -0700)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <77b6ddcf-f11c-e04d-daee-860da7746460@HIDDEN> <868q6qjr6u.fsf@HIDDEN>
 <2928521c-0d67-4d23-8c1a-ac06e6745334@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: spwhitton@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> Date: Sat, 1 Aug 2026 11:37:27 -0700
> Cc: 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
> From: Jim Porter <jporterbugs@HIDDEN>
> 
> On 7/31/2026 11:22 PM, Eli Zaretskii wrote:
> >>
> >> Yeah, I think regexps would make sense here. The email addresses are
> >> still probably the most accurate indicator though. We want to disallow
> >> an address like "123456789+Copilot@HIDDEN", but not
> >> disallow the word "copilot" entirely.
> > 
> > Why not disallow "copilot" entirely?
> 
> I suppose we could, but it's an ordinary dictionary word, and we have a 
> more-specific identifier we could use (the email). While disallowing the 
> word "copilot" could hypothetically catch more cases, I'm not sure those 
> cases actually exist.

"Copilot" in today's software-related prose is a reference to
Microsoft Copilot with high enough probability to treat it as suspect,
IME.

> The easiest checks are for the Assisted-By and AI-Assisted fields, which 
> we can always reject. I *definitely* think we should reject these, since 
> they're a clear indication of LLM assistance that isn't specific to any 
> one model.

Agreed.  In addition, we don't want such headings in commit log
messages regardless of whether they name LLM-generated text.

> The remaining cases I'm aware of are when an LLM-associated email 
> address (possibly with display name) appears as the author or committer, 
> or in the Co-Authored-By/Co-Developed-By fields. We could just check the 
> whole commit message for any LLM-ish words if we wanted though. In 
> practice, I doubt it will make much difference.

I think we should check both headings like Co-Authored-By and the rest
of the body of the log message.

> > It is not a separate job, because the description of what is
> > disallowed is tightly coupled to what the hook actually does.
> 
> Should be document the exact implementation we use for detecting 
> LLM-assisted commits, or is it enough to state that our policies don't 
> permit them?

Not the implementation, but the headings and the references to
LLM-based agents that are not allowed.

> I'm not sure people need to know ahead of time that (for example), we 
> don't allow commits with the word "copilot" in them.

Why not?  And CONTRIBUTE can be read not "ahead of time", but as
result of a commit being rejected.

> >> The problem is that when the LLM initiates the "git commit", it will get
> >> back the result of that command. Most LLMs are designed to try different
> >> things if a command fails, including things we humans might consider
> >> malicious. If the commit-msg hook causes "git commit" to fail with a
> >> message saying we reject commits with a "Co-Authored-By: Some LLM"
> >> field, there's a good chance the LLM will remove that line and retry the
> >> commit. The user might not even realize it happened unless they look
> >> carefully at the LLM's logs.
> > 
> > My suggestion is to search the entire log message _and_ the
> > author/committer for the relevant patterns.  Thus, whether there is or
> > isn't Co-Authored-By is not relevant in a push hook more than it is
> > relevant in a commit hook.  Or what am I missing?
> 
> If we reject LLM-assisted commits (no matter what precise logic we use), 
> there's a reasonable chance that an agentic LLM will simply rewrite the 
> commit message to pass our check, effectively lying by omission. Since 
> this can happen in the background, a well-intentioned user running an 
> LLM might not even see the error message unless they look at the full logs.

I think we are arguing about something we already agreed upon: I'm not
opposed to a pre-push hook.  I just want us to also have a pre-commit
hook, for the benefit of those who will not rewrite the commit message
in malicious and misleading ways.  Let's not follow the lead of TSA
and other similar agencies in punishing the masses of the innocent
because of the few guilty ones.

> >> We could also do an applypatch-msg (or pre-applypatch) hook. If I'm
> >> understanding your concern Eli, this should make your life easier
> >> without running into the above problems with a commit-msg hook. This
> >> hypothetical hook would run when you call "git am foo.patch" and reject
> >> it immediately so that you don't have to remove the commit later when
> >> preparing to push.
> > 
> > "git am" also commits, so a pre-commit hook should cover this, right?
> > And "git apply" will be followed by a commit, so again a pre-commit
> > hook should do.
> 
> According to the Git documentation[1], "git am" only runs the various 
> applypatch hooks

???  "git am" results ins a commit, so it must run 'commit'.  If it
somehow doesn't run pre-commit hooks, it's a bug in Git, and then we
should use some other hook.  Because "git am" must be subject to these
tests.

By contrast, "git apply" should NOT be tested, because it doesn't
produce a commit.  One should be able to try applying LLM-generated
code to the local repository; as long as the changes are not
committed, we don't care.

> The benefit of doing this in applypatch-msg instead of commit-msg is 
> simply to avoid giving an agentic LLM all the feedback it needs to hide 
> its use from us when it generates the commit.

I don't understand the difference, but in any case, please change the
focus of your attention to be on the user who does this, not on the
LLMs that you want to defeat.  This feature is supposed to help us,
the Emacs developers, in detecting potential references to
LLM-generated stuff.  It is not for defeating the evil SkyNet.

> (After checking to be sure, pre-commit runs too early; it's before the 
> user enters the commit message, so we need commit-msg and/or 
> applypatch-msg.)

OK, but these are just details.  The important part is that we need to
run these when a patch is being committed, not when it is applied.
Btw, we should also check merge-commits.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 1 Aug 2026 18:37:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Aug 01 14:37:38 2026
Received: from localhost ([127.0.0.1]:58703 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wqEaY-0003K3-3N
	for submit <at> debbugs.gnu.org; Sat, 01 Aug 2026 14:37:38 -0400
Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]:53285)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wqEaU-0003Jo-MY
 for 81520 <at> debbugs.gnu.org; Sat, 01 Aug 2026 14:37:36 -0400
Received: by mail-pl1-x631.google.com with SMTP id
 d9443c01a7336-2ceab75934dso23519025ad.2
 for <81520 <at> debbugs.gnu.org>; Sat, 01 Aug 2026 11:37:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785609448; x=1786214248; darn=debbugs.gnu.org;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:from:to
 :cc:subject:date:message-id:reply-to:content-type;
 bh=slEnAG+4MhiLtIkyUrlB+wGxPjixVL5xKnrQRSy596Q=;
 b=GOB9zJ2WBN2qxQzEc0Qv1B2s9H3PUAjsOAjXis3WWfXSIqLGFHFQBuDGhe2d++S3mz
 V06m1kZiWpOXxpNHzp1HJcGg9xmM/0VUKWPhcYdMDu9jkPjYTUnoJNBBMiR2P+JwuKX0
 V6MHgIWam1Lra1f9JzqyC23lhvL/xufTE4xZROVj0Cb38JiQFI8AoIsx9SOVqPpDUvf5
 Sk5razQXVymzGbO6q1JhIxspWVCASZLCuoOgFqc8YfOak2mVeZpHarDHBtkuYXGWDm9Z
 dUaEuR9Mj65BqKqV9Fj1TvRmaAeE4EtQ5u6QnB8HL7g2rYWyQR9h7TGk3h36lIfEU5Hv
 +QCw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785609448; x=1786214248;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=slEnAG+4MhiLtIkyUrlB+wGxPjixVL5xKnrQRSy596Q=;
 b=GcYrylj2wv3jolWUSNA4P6exf5Yn/WDpqTB8ZHDXweEUnsmwz8alDICJB4If+hoQhH
 nuReeVn6Jq/Op9XDoUQawmyxK/YSGcqlzTw314LeZAjN5NdeaB/zm1XxnTdzZGKPGk9J
 XzTytBq5v3UCsQF67PRDZ9jdF2Q5AQwq7zBOY/dwhDAC5wcFWIv4LY9n0SXVLfq37SQK
 YrTdUbnkz9tvoaAYDoot19yznHq3KVa8Ilr8JBjMuDr8XBCo5BNciMfQcGwH15O/jx1v
 ewfb63Z+F9TDQF7aCQ/8odFxXwFGDxKBNdsmAdTFDT1pAXqFV4bSH3I3xBam5ilrhWlq
 7CXQ==
X-Gm-Message-State: AOJu0YwzQ6Cu+MevCCXjhdC/EnHL/wA8Zxyf+rzZT81pu3Y1DtXUXVzq
 yoxKRNf0sx/CMTO2uqXalWLJv8k2dgzhF0TGH6+33ymt09+Kt5H+vHZg
X-Gm-Gg: AR+sD13q4GH0FzNxJJ2PG5wPSlrnuqH8FyvI4xjqA2QuYJ3n7p4j+zQs5Fs1KDLiwW3
 57TwmI6+Q5ufTEGs83fIQYBLWh4W5UOdhaVLUvAnIcPcsTirrxPv5+5mJifUAYOyMs39NlpJaFG
 wyuxPO3UwW4YaxH8I6/QQyMam3kOH1LwOwifJeoHYPp36fiJ4+oo5k6n+X0by6W3pgIkZR4xMVT
 Is8YMiVffbahJcoXI0NQj5HMiU5T9+cNfYzVFSdLRWtIFwMrQZjbhiMNtJsXKSiXKW7BnULQBO2
 Mgm7ct0aqgD5/y4r2HX6kDK3AmpcqWQ3UtU1CMBWIwwDvBa/K8327pFiSH4PCq/XrJGHOMEW+yt
 HPIxEmHOrsXBF+3BH5VdXk1E9ootbJJG0mj8Tb+KMHfV23vxZOd+J6xJXcCDCy78L2E81Qn2D2k
 UPiQ9hDdEvdKtAXmrQZRkYvmwb6qjCWz9zJhOSJjU6+4KFzetLkDtPz6Zi91HaOuLTsixHejgtN
 V4=
X-Received: by 2002:a17:903:3510:b0:2ce:bb47:6f3c with SMTP id
 d9443c01a7336-2d0524a72a4mr44736875ad.34.1785609448443; 
 Sat, 01 Aug 2026 11:37:28 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 5a478bee46e88-3153dd4e47dsm29740302eec.3.2026.08.01.11.37.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 01 Aug 2026 11:37:28 -0700 (PDT)
Message-ID: <2928521c-0d67-4d23-8c1a-ac06e6745334@HIDDEN>
Date: Sat, 1 Aug 2026 11:37:27 -0700
MIME-Version: 1.0
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
Content-Language: en-US
To: Eli Zaretskii <eliz@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <77b6ddcf-f11c-e04d-daee-860da7746460@HIDDEN> <868q6qjr6u.fsf@HIDDEN>
From: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <868q6qjr6u.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81520
Cc: spwhitton@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 7/31/2026 11:22 PM, Eli Zaretskii wrote:
>> Date: Fri, 31 Jul 2026 09:52:29 -0700
>> Cc: 81520 <at> debbugs.gnu.org
>> From: Jim Porter <jporterbugs@HIDDEN>
>>
>> On 7/31/2026 3:51 AM, Eli Zaretskii wrote:
>>> One alternative would be to search the entire log message and
>>> author/committer addresses for regular expressions matching
>>> "Anthropic", "ChatGPT", "OpenAI" etc.  Regexps make it easier to adapt
>>> to changes and unanticipated issues, and can be general enough to be
>>> relatively insensitive to minor changes in email addresses.
>>
>> Yeah, I think regexps would make sense here. The email addresses are
>> still probably the most accurate indicator though. We want to disallow
>> an address like "123456789+Copilot@HIDDEN", but not
>> disallow the word "copilot" entirely.
> 
> Why not disallow "copilot" entirely?

I suppose we could, but it's an ordinary dictionary word, and we have a 
more-specific identifier we could use (the email). While disallowing the 
word "copilot" could hypothetically catch more cases, I'm not sure those 
cases actually exist.

The easiest checks are for the Assisted-By and AI-Assisted fields, which 
we can always reject. I *definitely* think we should reject these, since 
they're a clear indication of LLM assistance that isn't specific to any 
one model.

The remaining cases I'm aware of are when an LLM-associated email 
address (possibly with display name) appears as the author or committer, 
or in the Co-Authored-By/Co-Developed-By fields. We could just check the 
whole commit message for any LLM-ish words if we wanted though. In 
practice, I doubt it will make much difference.

So long as we get something reasonably accurate though, I'm not going to 
nitpick the particulars here.

>> I don't mind writing the description for CONTRIBUTE. Most of that is
>> separate from the exact technical means for the hook anyway; the hook is
>> intended to be only a friendly check for honest mistakes and not a
>> strict policy enforcement system anyway.
> 
> It is not a separate job, because the description of what is
> disallowed is tightly coupled to what the hook actually does.

Should be document the exact implementation we use for detecting 
LLM-assisted commits, or is it enough to state that our policies don't 
permit them? The latter seems much more important to spell out to me. 
I'm not sure people need to know ahead of time that (for example), we 
don't allow commits with the word "copilot" in them.

On the other hand, I don't really mind how we describe this in 
CONTRIBUTE, so long as we make our policies clear.

>> The problem is that when the LLM initiates the "git commit", it will get
>> back the result of that command. Most LLMs are designed to try different
>> things if a command fails, including things we humans might consider
>> malicious. If the commit-msg hook causes "git commit" to fail with a
>> message saying we reject commits with a "Co-Authored-By: Some LLM"
>> field, there's a good chance the LLM will remove that line and retry the
>> commit. The user might not even realize it happened unless they look
>> carefully at the LLM's logs.
> 
> My suggestion is to search the entire log message _and_ the
> author/committer for the relevant patterns.  Thus, whether there is or
> isn't Co-Authored-By is not relevant in a push hook more than it is
> relevant in a commit hook.  Or what am I missing?

If we reject LLM-assisted commits (no matter what precise logic we use), 
there's a reasonable chance that an agentic LLM will simply rewrite the 
commit message to pass our check, effectively lying by omission. Since 
this can happen in the background, a well-intentioned user running an 
LLM might not even see the error message unless they look at the full logs.

>> We could also do an applypatch-msg (or pre-applypatch) hook. If I'm
>> understanding your concern Eli, this should make your life easier
>> without running into the above problems with a commit-msg hook. This
>> hypothetical hook would run when you call "git am foo.patch" and reject
>> it immediately so that you don't have to remove the commit later when
>> preparing to push.
> 
> "git am" also commits, so a pre-commit hook should cover this, right?
> And "git apply" will be followed by a commit, so again a pre-commit
> hook should do.

According to the Git documentation[1], "git am" only runs the various 
applypatch hooks, though autogen.sh sets up applypatch-msg to call 
commit-msg (ditto for pre-applypatch). We can change that logic though. 
For "git apply", you'd be calling "git commit" afterwards directly, so 
it only runs the various commit hooks (but you'd be typing in the commit 
message anyway, so hopefully you wouldn't be adding LLM annotations).

The benefit of doing this in applypatch-msg instead of commit-msg is 
simply to avoid giving an agentic LLM all the feedback it needs to hide 
its use from us when it generates the commit. At the end of the day, 
these are just pattern-matching tools that are trained to fix errors and 
make forward progress.

(After checking to be sure, pre-commit runs too early; it's before the 
user enters the commit message, so we need commit-msg and/or 
applypatch-msg.)

[1] https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 1 Aug 2026 06:22:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Aug 01 02:22:33 2026
Received: from localhost ([127.0.0.1]:49333 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wq378-0000E5-7c
	for submit <at> debbugs.gnu.org; Sat, 01 Aug 2026 02:22:33 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:54662)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wq374-0000Cb-Gb
 for 81520 <at> debbugs.gnu.org; Sat, 01 Aug 2026 02:22:28 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wq36y-0000xo-RU; Sat, 01 Aug 2026 02:22:20 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=QAacF9K/EPxXRV9gRvGNkNVcIgRDROVDIOtk0v9Qjo8=; b=HaPnf2ixNklI
 ZiKpaznPRiFZpgFdVkQG//8KMKJ8IFF+nMB6P8bMNsVn2OmzitIe82oYae17g63lGd9C2227brGJa
 BzeXpPkkVB4w6tS01REDM/OZWGLhrCzPD4AlHLHAHZG8DuZl2wSuKHcVhw2kCSPVQ7W2vTR3acvZX
 vdvst239oK3LD4Ld/oymxgMlve/d4aZJCuJRbKbAXRk/Px+esQO+tlsIbqQVVm98F8nGz/37pK9NY
 R2m1HzCr//w6ledDinXawsAyxyySMz+XpC4ohkJT90HxgO8RxODusgrVjKdMqA2Ffj7KTNtKxqzGF
 LjYJkB3NC4R5AR0OY7LQIQ==;
Date: Sat, 01 Aug 2026 09:22:17 +0300
Message-Id: <868q6qjr6u.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <77b6ddcf-f11c-e04d-daee-860da7746460@HIDDEN> (message from
 Jim Porter on Fri, 31 Jul 2026 09:52:29 -0700)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <77b6ddcf-f11c-e04d-daee-860da7746460@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> Date: Fri, 31 Jul 2026 09:52:29 -0700
> Cc: 81520 <at> debbugs.gnu.org
> From: Jim Porter <jporterbugs@HIDDEN>
> 
> On 7/31/2026 3:51 AM, Eli Zaretskii wrote:
> > One alternative would be to search the entire log message and
> > author/committer addresses for regular expressions matching
> > "Anthropic", "ChatGPT", "OpenAI" etc.  Regexps make it easier to adapt
> > to changes and unanticipated issues, and can be general enough to be
> > relatively insensitive to minor changes in email addresses.
> 
> Yeah, I think regexps would make sense here. The email addresses are 
> still probably the most accurate indicator though. We want to disallow 
> an address like "123456789+Copilot@HIDDEN", but not 
> disallow the word "copilot" entirely.

Why not disallow "copilot" entirely?

> > Btw, we must spell out these restrictions in CONTRIBUTE.
> 
> I don't mind writing the description for CONTRIBUTE. Most of that is 
> separate from the exact technical means for the hook anyway; the hook is 
> intended to be only a friendly check for honest mistakes and not a 
> strict policy enforcement system anyway.

It is not a separate job, because the description of what is
disallowed is tightly coupled to what the hook actually does.

> >> I think that Jim has a good point about commit-msg vs. pre-push:
> >> I would be concerned about the LLM just removing the attribution in
> >> order to avoid the effects of the hook.  Recent models are particularly
> >> notable for their persistence.  It's somewhat reminiscent of the
> >> make-more-paperclips-by-any-means thought experiments.
> > 
> > Sorry, I don't understand the scenario.  If the attribute is removed,
> > how could the hook that searches attributions work in the first place?
> 
> Many LLM harnesses (the programs that send/receive text to/from the 
> underlying model) provide the ability for the LLM to run arbitrary 
> commands. The technical details don't matter much for this discussion, 
> but with such a harness, you could prompt the LLM that it should 
> generate some code and commit it to a branch.
> 
> In practice, this is how most LLM attributions in commit messages come 
> about. Users calling an LLM as just a chatbot would run "git commit" 
> themselves, and probably wouldn't include a Co-Authored-By field or 
> anything else we could detect.
> 
> The problem is that when the LLM initiates the "git commit", it will get 
> back the result of that command. Most LLMs are designed to try different 
> things if a command fails, including things we humans might consider 
> malicious. If the commit-msg hook causes "git commit" to fail with a 
> message saying we reject commits with a "Co-Authored-By: Some LLM" 
> field, there's a good chance the LLM will remove that line and retry the 
> commit. The user might not even realize it happened unless they look 
> carefully at the LLM's logs.

My suggestion is to search the entire log message _and_ the
author/committer for the relevant patterns.  Thus, whether there is or
isn't Co-Authored-By is not relevant in a push hook more than it is
relevant in a commit hook.  Or what am I missing?

> > In any case, my point is that delaying the rejection until push time
> > is much worse than rejecting commits, for the reasons I tried to
> > explain.  If we must have a pre-push hook (which I'm not yet convinced
> > we do), then at least let's have both pre-commit and pre-push hooks.
> 
> We could also do an applypatch-msg (or pre-applypatch) hook. If I'm 
> understanding your concern Eli, this should make your life easier 
> without running into the above problems with a commit-msg hook. This 
> hypothetical hook would run when you call "git am foo.patch" and reject 
> it immediately so that you don't have to remove the commit later when 
> preparing to push.

"git am" also commits, so a pre-commit hook should cover this, right?
And "git apply" will be followed by a commit, so again a pre-commit
hook should do.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 1 Aug 2026 06:13:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Aug 01 02:13:25 2026
Received: from localhost ([127.0.0.1]:49271 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wq2yI-0007JD-R1
	for submit <at> debbugs.gnu.org; Sat, 01 Aug 2026 02:13:24 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:33376)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wq2yE-0007Hy-Sf
 for 81520 <at> debbugs.gnu.org; Sat, 01 Aug 2026 02:13:20 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wq2y9-0008Gr-1H; Sat, 01 Aug 2026 02:13:13 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=xkzsgfGSPBsDUU7oDGybaEZi3Re+Ry1v+YJEM4V5ko0=; b=X9+9cP9xSc32
 fT1rFG56FLtShszDJAx1FnRDj3POdprGsQ6XeDr+7bMYRPNjyFA6YacJJHG0vGiT08h1+OAsk3Kxr
 jHiytN860c/mBXBjN/120wLnTf+XyTMuwXtz+9fnHbuKoZKCiLXwH0LhmNJs0SonyZb9NwAfFuTnN
 E0Lp0WipGX4KRuQ/iWOO9v13CMYqgZZHbYP9kBjhQ134gI5pxb7pduP+Ak4N6dTNjCG/nTLDD2qtw
 MM/hF7u+QwG2vD5sM0tWH5mT8NXnt07afSkAQddENRYQj2jJ1CWZYinzNcsmtvzpPTRUpMwyV4m19
 9P9FwgE/TebC2iZXF7M+nQ==;
Date: Sat, 01 Aug 2026 09:13:08 +0300
Message-Id: <86a4r6jrm3.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Sean Whitton <spwhitton@HIDDEN>
In-Reply-To: <87a4r7dv83.fsf@HIDDEN> (message from Sean
 Whitton on Fri, 31 Jul 2026 16:39:24 +0100)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
 <87fr0z730v.fsf@HIDDEN> <86h5lfwc7h.fsf@HIDDEN>
 <87a4r771bk.fsf@HIDDEN> <86a4r7w56c.fsf@HIDDEN>
 <87a4r7dv83.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> From: Sean Whitton <spwhitton@HIDDEN>
> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
> Date: Fri, 31 Jul 2026 16:39:24 +0100
> 
> Eli Zaretskii [31/Jul  6:27pm +03] wrote:
> >> From: Sean Whitton <spwhitton@HIDDEN>
> >> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
> >> Date: Fri, 31 Jul 2026 14:09:35 +0100
> >>
> >> >> > What are the problems with rejecting individual commits when they are
> >> >> > done?
> >> >>
> >> >> It makes it difficult to make commits you never intend to push, e.g.
> >> >> for local-only checkpointing.
> >> >
> >> > On the public branches?  Why do you do that?  It's inherently
> >> > dangerous.
> >>
> >> Right, I either do it on non-public branches, or on machines which don't
> >> have my SSH key.
> >
> > But then the hooks should not be relevant, right?
> 
> No, they are still active, and get in the way.

That's not what the hooks should do.  They should not be active on
one's private branches, only on the public ones.  We have no business
forcing our requirements on private branches.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 1 Aug 2026 06:11:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Aug 01 02:11:19 2026
Received: from localhost ([127.0.0.1]:49264 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wq2wH-00073I-UI
	for submit <at> debbugs.gnu.org; Sat, 01 Aug 2026 02:11:19 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:58642)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wq2wF-00071v-F7
 for 81520 <at> debbugs.gnu.org; Sat, 01 Aug 2026 02:11:16 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wq2w9-0008Al-Pq; Sat, 01 Aug 2026 02:11:09 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=aehNulonD1XXyf2Yv3U4GEOCPQewE53ad0WFg+gvSvI=; b=ZwEB5i/7y5Pg
 SKvqt7BVkq/nBp4Q88OLGD4D+1o0UdQzww+Q1mPCMKLeVKaR1IMil2siJpQLuybygxNzgqc+/wBUH
 j6mva1K3orYHY07LUeLrY9IA+KNQrcHOLCxyaLt7Y+3aPimuY9g7QGqFac7Qfz/Z7uuo0CgVJvK37
 hN4V9RMuw7VbwbAjjtobWUtZmDeYVaZYhQxarRcfBSGoPkNhr/jJkTxZgLQOqGhRAUPHTxm1JnH1o
 20nZ5BU+PAP6KJQ+HxIlfJm0VdZ0/RGXlMGimpT/ZTi+yCRYjAGM8Vffb4Fmq2dCVmX1oB5CdWVRB
 Y800orv35K6d3H5xPZZQJQ==;
Date: Sat, 01 Aug 2026 09:11:06 +0300
Message-Id: <86bjbmjrph.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <2a477d8e-973b-4c8b-9dc3-c8d8d4e8641b@HIDDEN> (message from
 Dmitry Gutov on Fri, 31 Jul 2026 18:36:58 +0300)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
 <3b81fa7e-6f67-4479-b0db-fee3076ad201@HIDDEN> <86bjbnw585.fsf@HIDDEN>
 <2a477d8e-973b-4c8b-9dc3-c8d8d4e8641b@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> Date: Fri, 31 Jul 2026 18:36:58 +0300
> Cc: spwhitton@HIDDEN, jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
> From: Dmitry Gutov <dmitry@HIDDEN>
> 
> On 31/07/2026 18:26, Eli Zaretskii wrote:
> >> Date: Fri, 31 Jul 2026 16:08:45 +0300
> >> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
> >> From: Dmitry Gutov <dmitry@HIDDEN>
> >>
> >> Hi Eli,
> >>
> >> On 31/07/2026 14:45, Eli Zaretskii wrote:
> >>> My point is that when I have several commits, and then pushing them
> >>> all fails because one of them, going back and redoing the one that
> >>> caused the fail is a terrible nuisance with Git.  So I want the
> >>> rejection happen when I commit, so I could fix it right away.
> >>
> >> If the pre-push hook only checks for LLM attributions, and does that
> >> with decent accuracy, would your scenario above ever happen?
> > 
> > I don't see why not.  I explained up-thread how it could happen.
> 
> I mean... if that does happen, wouldn't you want it to be stopped at the 
> "git push" stage?

No, I want to be stopped at the commit stage, where fixing this is
easier.

> If you agree, then the question might be whether both pre-push and 
> pre-commit checks are needed.

I already said that I'm okay with having both, if needed.

> >> I don't imagine you would have commits with Assisted-By header in the
> >> local checkout of Emacs, with any regularity.
> > 
> > I think you forget that I frequently push commits of others, and also
> > merge from the release branch to master, and then push.
> 
> Hopefully the release branch isn't going to receive problematic 
> messages, so merging from it won't create such difficulty.

There's the --no-validate switch to Git, which bypasses hooks.  So
yes, such commit could be on a branch.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 16:52:37 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 12:52:37 2026
Received: from localhost ([127.0.0.1]:44240 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpqTN-0004l8-BP
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 12:52:37 -0400
Received: from mail-oi1-x22a.google.com ([2607:f8b0:4864:20::22a]:47483)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wpqTL-0004kr-56
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 12:52:35 -0400
Received: by mail-oi1-x22a.google.com with SMTP id
 5614622812f47-4ab47c40e7eso501316b6e.3
 for <81520 <at> debbugs.gnu.org>; Fri, 31 Jul 2026 09:52:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785516749; x=1786121549; darn=debbugs.gnu.org;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:from:to
 :cc:subject:date:message-id:reply-to:content-type;
 bh=On49xfmdbe+4MRCYtjO1yx5dgq1Cu47+YjOHbOgFBsk=;
 b=Hvy52zu1AvcEf0lbN6vE1dj9Z67jW8KQEwW1iZH5wGbiocMHGrEiRt/NDEoUPKvupU
 fEqm8Nxd3vJc/OcgmEW7dNOMgy5eqh2VJSozOTctQAg3RNnMMKbHuGabPjrjUQOKumor
 A54wU9qw5Z38v0mi01gRgB4x6TZCaFp4zFok8w3elsTsus5fu56px8P+FUzam/z+7IJ1
 x+xlkughiL06v02sUHv4gbwFuklF92P86ZP6roa2ItUKw3V5AJsMjQQ2Amzz8Q87MfGR
 +wobgy3NSkGd+ViX10pzVpDKmvXmQo646uBG/zUgB5NwURyTGlSNqE2Zi36PE50EwhZo
 TnbA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785516749; x=1786121549;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=On49xfmdbe+4MRCYtjO1yx5dgq1Cu47+YjOHbOgFBsk=;
 b=Flssxml7bhkTmNgsCc0mM7RdKM74QYYmmDvLMGaNxi8dZleEoutXCK05icWRxMvz4r
 uic8YpYmRXYm7ry6L9HOlsEewwMsCfGp77Llxp9OxmCVZFe7C+yer2ZuzpCbYGBuqhbZ
 31jcBaZ/YtOMHNEU+Xesaf7zOQZ5XP83IRea3ujreUAtHzUmvTsZ/SGZjXS7dgErfTKT
 l7uIWj0zktjYNR+nWM+SGFKsN4YySimGS2Kj8T5lIt7K2vqF6RTtOepq7gZA3j40fYak
 12H0RxHqMaOmvxS803MmQElL6nXOugQ0XDp4p53mf6QpwhDDt7IZxGrXDJ/64JqMlv2E
 V1ew==
X-Gm-Message-State: AOJu0YzfcUHM6PtNj7VguiRyTQCo6bDV79S7fmfU9+Y6pMt+THUaTJRi
 4NqMqxLTZF6zeh4SLA71dYEv/GIxjFOokxdpY5IA/4l/FB9dKyBiW7sV
X-Gm-Gg: AR+sD11oj/ABazIx0GyPqxVxE91IWt3A+xE/uzMSa5odKqXSzoDAydvFf5ifnDFleaF
 +p/NNHsmpxOlKPHYT0pUiMZoSnfgNqjeg2jkS3/0BFeWwwKsZ1ThVGj5N/23Q3n29565idBXTBE
 Ed3s/zYmEmgSfO75AwuDJJlptn3/9J3jlTCx9ewVYqf4X/Ee6+4hw43YjqcPgXvj2qL4VusUaP6
 Dgt//XkYPqbP2OYRf39u7UOKaN1gWg9uEp5hOFIdM4VO+BqWyq+DPcpt+1gBXHQiD7JBMYpeadu
 RQi2M8w0A/7JJ3o3/R2DpBtPT0VDEzeiAdvh1LCvWLm70GU0x0FCkBBCM0eJqRnrdLrt2XiXcRx
 CIgh1/Odl00kLWWgWwVamJ0ZcnluOHZlvTjKaBmDaKmuRNWmnZ3jfyMlc/IgPLdll7phtO9VkLz
 EvagomK/ZBA+T+LRy8Wl+h20dmwSQbzU+MGs4DZNiKX1wMiCdjDYiWM1OQzImtQFGPkK0lx2W/J
 IE=
X-Received: by 2002:a05:6808:15a4:b0:495:eb86:6e8f with SMTP id
 5614622812f47-4af5e232881mr1083105b6e.14.1785516748941; 
 Fri, 31 Jul 2026 09:52:28 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 586e51a60fabf-458f6064843sm1516403fac.4.2026.07.31.09.52.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 31 Jul 2026 09:52:28 -0700 (PDT)
Message-ID: <77b6ddcf-f11c-e04d-daee-860da7746460@HIDDEN>
Date: Fri, 31 Jul 2026 09:52:29 -0700
MIME-Version: 1.0
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
Content-Language: en-US
To: Eli Zaretskii <eliz@HIDDEN>, Sean Whitton <spwhitton@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
From: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <86o6fnwhy1.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 7/31/2026 3:51 AM, Eli Zaretskii wrote:
> One alternative would be to search the entire log message and
> author/committer addresses for regular expressions matching
> "Anthropic", "ChatGPT", "OpenAI" etc.  Regexps make it easier to adapt
> to changes and unanticipated issues, and can be general enough to be
> relatively insensitive to minor changes in email addresses.

Yeah, I think regexps would make sense here. The email addresses are 
still probably the most accurate indicator though. We want to disallow 
an address like "123456789+Copilot@HIDDEN", but not 
disallow the word "copilot" entirely.

> Btw, we must spell out these restrictions in CONTRIBUTE.

I don't mind writing the description for CONTRIBUTE. Most of that is 
separate from the exact technical means for the hook anyway; the hook is 
intended to be only a friendly check for honest mistakes and not a 
strict policy enforcement system anyway.

>> I think that Jim has a good point about commit-msg vs. pre-push:
>> I would be concerned about the LLM just removing the attribution in
>> order to avoid the effects of the hook.  Recent models are particularly
>> notable for their persistence.  It's somewhat reminiscent of the
>> make-more-paperclips-by-any-means thought experiments.
> 
> Sorry, I don't understand the scenario.  If the attribute is removed,
> how could the hook that searches attributions work in the first place?

Many LLM harnesses (the programs that send/receive text to/from the 
underlying model) provide the ability for the LLM to run arbitrary 
commands. The technical details don't matter much for this discussion, 
but with such a harness, you could prompt the LLM that it should 
generate some code and commit it to a branch.

In practice, this is how most LLM attributions in commit messages come 
about. Users calling an LLM as just a chatbot would run "git commit" 
themselves, and probably wouldn't include a Co-Authored-By field or 
anything else we could detect.

The problem is that when the LLM initiates the "git commit", it will get 
back the result of that command. Most LLMs are designed to try different 
things if a command fails, including things we humans might consider 
malicious. If the commit-msg hook causes "git commit" to fail with a 
message saying we reject commits with a "Co-Authored-By: Some LLM" 
field, there's a good chance the LLM will remove that line and retry the 
commit. The user might not even realize it happened unless they look 
carefully at the LLM's logs.

> In any case, my point is that delaying the rejection until push time
> is much worse than rejecting commits, for the reasons I tried to
> explain.  If we must have a pre-push hook (which I'm not yet convinced
> we do), then at least let's have both pre-commit and pre-push hooks.

We could also do an applypatch-msg (or pre-applypatch) hook. If I'm 
understanding your concern Eli, this should make your life easier 
without running into the above problems with a commit-msg hook. This 
hypothetical hook would run when you call "git am foo.patch" and reject 
it immediately so that you don't have to remove the commit later when 
preparing to push.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 16:24:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 12:24:54 2026
Received: from localhost ([127.0.0.1]:44064 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpq2V-0002fd-4c
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 12:24:54 -0400
Received: from mail-pj1-x102e.google.com ([2607:f8b0:4864:20::102e]:53473)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wpq2O-0002dC-2y
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 12:24:47 -0400
Received: by mail-pj1-x102e.google.com with SMTP id
 98e67ed59e1d1-38e08baf860so1192697a91.2
 for <81520 <at> debbugs.gnu.org>; Fri, 31 Jul 2026 09:24:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785515078; x=1786119878; darn=debbugs.gnu.org;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:from:to
 :cc:subject:date:message-id:reply-to:content-type;
 bh=BwbB6iLFHHKsZCKxFBRIutQ80nOH2ztDz7OSXVX4RDU=;
 b=Rw3wkJyH77Kk/ovhL7DasIqFq+Px32REF+zAvDULEyBui6o47nmwgx7t2DeV0xcPox
 1SbTBwI0P+CCdfZNMPUTt9EkNWqU0PfARb8FfQKJfxhsObiY70rZLrPVVfVswdZEll4Q
 3eHFZNa+HtlhJSxg1XG6EtcgSh8xx+SXzE92wXYBKSbpos/wJj7XYATnCzo5zPKYdWLn
 w7D1dGhSjSU6b49wS9eupxdnfcVFHUx9oPaDPAo4srEg0p8TKPQm9xWCJIKH8bUO6L4n
 Hy/8pXxV5zrcbXKj/ZhqIA5oYHYlRquSqQrk2C5LcmCIxCfDhYt6k2VwvMRejSnnknwD
 O9hg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785515078; x=1786119878;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=BwbB6iLFHHKsZCKxFBRIutQ80nOH2ztDz7OSXVX4RDU=;
 b=Lt/msr0kUhyz+GYahJt262o+11ic/7GgKQXOjLptzxvimVMC4OajR54seaOY9TiRYU
 9c4cpbi8vorfoIdusrjU4Rg41A/anSdoez7kl1qb2c0HhBKBRfVX7wwsMfVKszKDrqRG
 +q5EklrX9iCh1oIQueXZ/+3/7a4OAgj/JIav0sm47PpXL617/+HksPPHjZ33SHP/3ho6
 gxAvhS6TYrhIx7PwuqH2Qnx+Jj1Vib8OlhsBQGYxF1q8R+Q+Tr5xmquRMo5toQWILpHJ
 shGrY1KFwJEq+dzUNiPWNGPPEUP7VfiQ60bw0CyJcTB/mxxCvLejOfF2PrjPCUN5fQF3
 9P5g==
X-Gm-Message-State: AOJu0YzELkRTnwsBAwVDAlPF7oOcxqdi473SE79NNvIW0+wv0ddfDmDo
 bw4Jc5YnzbxFzWsX7Ta7CpPAkbbNBUEpAlubhH5QiTZoWGcLM3a3VjUS
X-Gm-Gg: AR+sD12f88z8ffU0PGC64MkEtQL0BLHW4i4N2cYn+yncq3KDjRjx9q6C5VOyqXxUHo+
 FhL5wSRDMlih0WZQywyB1Y8tixHpyqGTgj3ixfQ1rPvcQSR5N4sS2vTcUpany+IjPWJJgwVkb28
 3QR4dtCUKWB2P0rE3f5fIn0dT1UvoSXOm2cdBU1EsW3RwMAGQ60CxJN8x17nsN59c2Zx9b+tAXF
 xDgVYm6AEOEkVhPIUe/QqsPBbkvHt2ze/+KFD0GI4/og2AFLpDapklEiJJ4BaU5EP37kamfEOgQ
 tJ+K6kspFhE7rIvt03ovxOXj+P6taRzShmLsXwIwkrUvLcK0LJSadVOlfs/O6+ORsLqoxDgeIFD
 a45vZucf1tJ0DPLfEeGyYG/+hbFNEmqM8vovs4t67fJLcoBvNh09HoQg22EGroYaHh42xH13QjZ
 CnZ+Jn0RsRfBwXNeMPai7JLTgQuW9bev+fqhrmYO7e5Y6i4X2shUkoym7JrAsU308Ien73bWPkN
 OY=
X-Received: by 2002:a17:90a:d2cb:b0:36d:66d4:270e with SMTP id
 98e67ed59e1d1-38fbc40dfc5mr496868a91.5.1785515077776; 
 Fri, 31 Jul 2026 09:24:37 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 5a478bee46e88-3153e18e70esm14764958eec.29.2026.07.31.09.24.37
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 31 Jul 2026 09:24:37 -0700 (PDT)
Message-ID: <68d0023e-e282-e2e3-bd4a-2c38f498a0f4@HIDDEN>
Date: Fri, 31 Jul 2026 09:24:39 -0700
MIME-Version: 1.0
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
Content-Language: en-US
To: Eli Zaretskii <eliz@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
From: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <86qzkjwqhp.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81520
Cc: spwhitton@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 7/31/2026 12:46 AM, Eli Zaretskii wrote:
>> Date: Thu, 30 Jul 2026 17:06:57 -0700
>> Cc: 81520 <at> debbugs.gnu.org
>> From: Jim Porter <jporterbugs@HIDDEN>
>>
>> On 7/30/2026 10:36 AM, Sean Whitton wrote:
>>> We explicitly permit it in CONTRIBUTE.
>>>
>>> So yeah, let's match on e-mail addresses.
>>
>> Ok, here's a patch series to do this locally.
> 
> You rush to post a patch too quickly, sorry.  When Sean and myself
> disagree, it is better to leave time to both of us to respond.

Not a problem. I have some thoughts about turning this patch into a 
generic hook others can add to their repos if they have similar 
policies, so I don't think it's wasted effort. (This generic hook might 
end up looking different from whatever we adopt in Emacs, of course.)




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 16:21:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 12:21:43 2026
Received: from localhost ([127.0.0.1]:44045 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wppzT-0002Js-4k
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 12:21:43 -0400
Received: from mail-pg1-x534.google.com ([2607:f8b0:4864:20::534]:44387)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wppzP-0002JN-PJ
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 12:21:40 -0400
Received: by mail-pg1-x534.google.com with SMTP id
 41be03b00d2f7-c9d1fff21edso792345a12.1
 for <81520 <at> debbugs.gnu.org>; Fri, 31 Jul 2026 09:21:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785514894; x=1786119694; darn=debbugs.gnu.org;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:from:to
 :cc:subject:date:message-id:reply-to:content-type;
 bh=tlOjMILwlaySoSUHxHy4AJsZxoMuG+LF3n2ks0xt/fA=;
 b=ha0NMv0U1fD72sdo6+1HuKMlEiXxA3wST6ne+NY9AuWGYGKjRzYcyaziZZk+YDTj14
 DMGgJQCpEWGFqAuONtbKNEXfNktLBui/ldpL4SR/RQPtuYmsSglnz+PZOTNiJs7JXhcd
 b9VJOTtK63vcdt07aUWzRzwcaqjoa/CgfZQppvGXmZVQKFlvUYQ4HCUmS2tJfqYhOjpV
 OYLiwhooMtZvo+FNackZ7QUq4tm4Go7OnWCItAPfaIHFcUHwVB8ITnhCL8NBZesUU6En
 p/UayeVXl48pvc2cpPrTSU8V8xIlYaKZ7LZHxQ3q31EnQ1OGFVz2sf6RK+sJXVRBemi9
 PbCg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785514894; x=1786119694;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=tlOjMILwlaySoSUHxHy4AJsZxoMuG+LF3n2ks0xt/fA=;
 b=RZmlrTGYn9KAuRx65e5I/ihNZe7XeViMHuXIJvhBSkNisikNvo1Lk9/0IVlAj3lBvd
 gKvar4rlRUwmVajlpoeqMi4/REKHIJcKZL0bs9VNAMdaHGtbeNcAoVhd1TUQDU4dUEbD
 jPLHf5IL6krQR7XHc6H4uza3Ht4OYBXEk1QNo47RGzttP6YF7pKkioIxXflPi6NZje44
 naKp4dq8d4NiT0NfPcEvVbwArdllrmBi3SRYMTd/vTckUTOxW8JBAgxiFhxqQS6l+NB0
 Bv9nKkKVRQJntxGqw3wkgRibXAFNksXfUz+YLubdK1qd8Zx4i5Tfc/nLjXcavsOaOcz7
 hQpA==
X-Forwarded-Encrypted: i=1;
 AHgh+Rrn3uZKslfFVkAHG5dhdG4m/5Yu+s1hqFDgKq0ktPogYf1pWEHoUJGWAQQtLhEvFxEmH86CyA==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YzA3a9B5ZohZer5g4p3vGHv4JfPUM1Nrda+5GHXSw7jlOaFXAFj
 vAZekhRhEgo4feJNZuW0Yfv+SzYQSx/+wRBGpZscB10A2F2uAOfMbe3x
X-Gm-Gg: AR+sD13Q9VfjIHhkitCnzgPdA4TiWbU8dwyqhVq3DTOGoy8ozM2fjXmg3ehktkGSwBZ
 88on8uJVqJgUBJ37SkcCjxkFiD0X5BPQLUmxgoFImtk/z2Xc/gn6jDPBDLLcO0bmnh0zets59+G
 iqc3ZGz7ohUaRWQyi6KIY+KMYj309snIJFPnWB7kF0GudfOO10PxgCbCUmg+p3s/DxUWinF2dZl
 x6LFcQvi5zILq/bEIV/mpnozdVoi+WWHxXw0rnTvkutoMi7csz4Qr5IL32n3CukvYPab9+D5LwG
 p5NEHpSzwGrSjsowIrmppGE/72QCo60l4eWma2uvwYylGsf9JeyrPshGY6ec5BjBgsg6d/QhWfL
 yvefzZOHFZWXoydt+zOowqq/bCgPYk7xbYkmZDscw0VLo7EggPRBL4Vi2/Jpc0tyX4tkq5Xl41B
 sftZG4aJeBoRO2Jkke0pEinTEAaE5KL8s5pkl699BpH53geNQqIJvDTvWwO5RZhQg+RgOIOsD1z
 es=
X-Received: by 2002:a05:6a21:6b13:b0:3aa:c964:3c27 with SMTP id
 adf61e73a8af0-3c92a89f4a7mr403799637.46.1785514893651; 
 Fri, 31 Jul 2026 09:21:33 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 5a478bee46e88-3153e044912sm8720461eec.15.2026.07.31.09.21.32
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 31 Jul 2026 09:21:33 -0700 (PDT)
Message-ID: <14a291af-d84a-671d-f5ce-cedce3dd955f@HIDDEN>
Date: Fri, 31 Jul 2026 09:21:34 -0700
MIME-Version: 1.0
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
Content-Language: en-US
To: =?UTF-8?Q?St=c3=a9phane_Marks?= <shipmints@HIDDEN>,
 Dmitry Gutov <dmitry@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN>
 <CAN+1HbpX133tKQ=-naWSFkwmyD8Fn_Goeaup4Nje+GWn=ujTBA@HIDDEN>
 <6fae8ff8-0154-4e5f-8f05-08140a5e8f6a@HIDDEN>
 <CAN+1HbqhKGOH+ESBJqgQqT46N7cf=XwbvuFmuvfoLibqa_B5gQ@HIDDEN>
From: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <CAN+1HbqhKGOH+ESBJqgQqT46N7cf=XwbvuFmuvfoLibqa_B5gQ@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81520
Cc: Eli Zaretskii <eliz@HIDDEN>, Sean Whitton <spwhitton@HIDDEN>,
 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 7/31/2026 6:06 AM, Stéphane Marks wrote:
> It's better to clearly state in CONTRIBUTE what the rules are, trust our 
> colleagues, and hold people accountable should an issue arise.  Text 
> scanning is superficial at best.

That's my general position as well. The pre-push hook is intended to 
help trusted colleagues avoid honest mistakes while also being written 
defensively to keep LLM agents from "helpfully" removing their 
attributions when committing.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 15:39:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 11:39:42 2026
Received: from localhost ([127.0.0.1]:43631 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wppKl-00080A-3N
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 11:39:42 -0400
Received: from fhigh-b3-smtp.messagingengine.com ([202.12.124.154]:37277)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <spwhitton@HIDDEN>)
 id 1wppKd-0007yD-O6
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 11:39:35 -0400
Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46])
 by mailfhigh.stl.internal (Postfix) with ESMTP id 0A6FB7A00E1;
 Fri, 31 Jul 2026 11:39:26 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-06.internal (MEProxy); Fri, 31 Jul 2026 11:39:26 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=spwhitton.name;
 h=cc:cc:content-type:content-type:date:date:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:subject:subject:to:to; s=fm1; t=1785512365; x=
 1785598765; bh=CI8BqceogdxrJQepNRp6NIICa2qmaFvDzOFefX5xtlM=; b=t
 jWmpR9JCSy3+AzoV3vr2t2j7GlcvuMaM4J5kTamvsfE/LxNFXMD1+BpYGZ3cnCD7
 /ZOn93khvy1F5+eWiNCOrg8veMpgmESixzpLhE426FaTN4tC6BxzyJnpKi2uABbY
 /sx5QBDOnQFpyL+NcsU/WWYcmzDjdr6ZZMjCXdhOiEHUdKJ4nUVfDLeG2WnfzF3u
 Gqg38ybLDVoTrkGfH+ixQy1bKOteOzXfaN9KBrPcDxWljsoVUxLtYojUgRJ4rdL9
 6e4grE9CWsKXFHRBjzgCAeWjWtkNzfy8kzC8QYGdJlnm5PNPGX/NokpRq0bkzpwM
 c3yDwKv8COhoseKsGtM/w==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=
 1785512365; x=1785598765; bh=CI8BqceogdxrJQepNRp6NIICa2qmaFvDzOF
 efX5xtlM=; b=C97qMWyQuKazXUa4/j2ue1yahMPMmVkiEViDIxdidh1hMgibgwj
 fOWaZ/ERG1oVpkHT5BG5teKTEixGQekei2ztgIK7IeI5mdWngwrl9+aDMuB5JTqg
 IMLaD9Vd3movV/hnndVkHoy1+Vb3lg/NDDhU5Gn2mtFpCfPpZc/t3UgMAoOSpGfF
 dj0N7Dei6ik9a0I6GDV/8Kw1gtsXhjk40WhLQsJ+T27pTIPl6th1kDZgOS6NwZFz
 IUbBynF76qyIbnqcxPouq7CVcXQZ6fLJHlYzhai9IFmUBwn2v8a0ZNegrqYXO4rn
 31lp78dooVfB6NtVvlG4p3vgR9gFJKH80Cw==
X-ME-Sender: <xms:rcFsahkLN0kAVY7aQSOlHJj5oBnNg-yoIQYmqPhpYtQU8xyI1mFTsQ>
 <xme:rcFsakQnRjtkHFp7BHf3krpc14xEu2yo_r_bIwai0hsPHJjPE3HQngjt18sigw20S
 vxbkOGI2YttiwF7G0NnR7SkfcfPArq2ps_42VoChQbtVzhgFzdQqRv1>
X-ME-Received: <xmr:rcFsalDYU6NgYa_Iupz_12qawFQqKcOOxhCmCxjQoNoHuZJ7w0NW9U0bGn6WwQFEmvjMG8vPfhEZ>
X-ME-Proxy-Cause: dmFkZTEl3T6QNqOs/Ne7aM+4eAMWPfPoJenao1b5QJIFtxlxqLE6S8MFx7ZjtUlimwFkPo
 nt/W6NamJxotApuYE7GK58Y3bJZUuS1ac//IgCpsl4b2p92rBSV5VOA37xBekgjflEIrZI
 c/JN3dvQhZvVASBL+FGxbCzzyvsRSsjxnrseTbhxMHyVDNZEwtUQ2Q5CcckdrQO/JCF4+b
 J9bc+DeIWAIlZBDJw4HVzFw//BhMYyf8NRfIf3ydqul7xGeyS/sygS0M8iTHAgn+SkvP4F
 JLJEjehZzh/5TH6rKW7FMUpxYN8fqy1VEeed3cK0Zaa6ei5xM2oifNW685e0ndc6DMOHC/
 VDJWtGn1xWocwgL9lEMHBAqb1V8UOqk7s11kGt8bOO2aJzWPAlpavMT9iR8CovRueCSrzy
 Txnfd17FpnVWskh8ly1W4wzuVv2k2arOoAa1cAr7HOJSl+Lmc7XpQTVjOGm6k5/PYnNCw1
 9IVHtQGqjXU5zOpjo8zcUvtwBmLJt+0+WYP7yotNaECxSJmqNm/38koaegEsWuMscEx+Wb
 J6BIEv14gHku8Y4+IP2o4kFlldB1Eg3iVQWPACR3NA44ClBiHoQy23JeGK2UQcGDDQByXA
 A2Sx/lT1T5AA9xSDx84DdvQ4hPQZKO1pby2PFsTc9tzdAIU2QRVE3BbNL9yw
X-ME-Proxy: <xmx:rcFsarR9lZERN0FL5lEgt-QOTWAWL6U_jiIt6JmK5zR7f5bxr4cvIQ>
 <xmx:rcFsajq5568z4n6-odL0f2ujask-UnLuepY_uuzDrPdxixy9u_wQaw>
 <xmx:rcFsatx6HS5PPdyshaybzLhwPKhFsFj_uPCZcxNCdMCf0mRZNkjsxA>
 <xmx:rcFsaoIBkpePAmLOYXvyTx8B-LntYDmSYB1AeL8d_IjS6CyJw9Y4UA>
 <xmx:rcFsal_U0CGJbNEJUjacFSK5NhSTgI0FO6zxJm9fd4K05UdVSJV5OhqF>
Feedback-ID: i62564b17:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 11:39:25 -0400 (EDT)
Received: by melete.silentflame.com (Postfix, from userid 1000)
 id 8ED6B7EA248; Fri, 31 Jul 2026 16:39:24 +0100 (BST)
From: Sean Whitton <spwhitton@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
In-Reply-To: <86a4r7w56c.fsf@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
 <87fr0z730v.fsf@HIDDEN> <86h5lfwc7h.fsf@HIDDEN>
 <87a4r771bk.fsf@HIDDEN> <86a4r7w56c.fsf@HIDDEN>
Date: Fri, 31 Jul 2026 16:39:24 +0100
Message-ID: <87a4r7dv83.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Eli Zaretskii [31/Jul  6:27pm +03] wrote:
>> From: Sean Whitton <spwhitton@HIDDEN>
>> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
>> Date: Fri, 31 Jul 2026 14:09:35 +0100
>>
>> >> > What are the problems with rejecting individual commits when they are
>> >> > done?
>> >>
>> >> It makes it difficult to make commits you never intend to push, e.g.
>> >> for local-only checkpointing.
>> >
>> > On the public branches?  Why do you do that?  It's inherently
>> > dangerous.
>>
>> Right, I either do it on non-public branches, or on machines which don't
>> have my SSH key.
>
> But then the hooks should not be relevant, right?

No, they are still active, and get in the way.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 15:37:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 11:37:11 2026
Received: from localhost ([127.0.0.1]:43617 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wppIM-0007gV-Mq
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 11:37:11 -0400
Received: from fout-b1-smtp.messagingengine.com ([202.12.124.144]:58615)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1wppIJ-0007g1-O0
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 11:37:09 -0400
Received: from phl-compute-07.internal (phl-compute-07.internal [10.202.2.47])
 by mailfout.stl.internal (Postfix) with ESMTP id 39D351D000C4;
 Fri, 31 Jul 2026 11:37:02 -0400 (EDT)
Received: from phl-frontend-04 ([10.202.2.163])
 by phl-compute-07.internal (MEProxy); Fri, 31 Jul 2026 11:37:02 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to; s=fm1; t=1785512222;
 x=1785598622; bh=DDKNXszG9PP2FZXE1cMfxVDfk72yNxaLumtgWlrbbHI=; b=
 jnp4yTvdyt3uMpKbTKQoMz5NY90DGzpVCkFGnO5otETDm7PSPK78bKkTbCFZqYvP
 5CxvNwnnL/ExTKE5+mh7Zk7448dVLBNcf8OodV/Wy3EfCchOKmU02V14dl8fhLNF
 CAJbaCjNsdUO/Ui3Xh/9SAn/gCt/BdSEUb8N/IRH9l2uz1QZS3ueGx8klfSezeUf
 7JJsD6gWOXRk3FOu/rZwcvc0hlZr/B29mEkYqrnFBnPdkZwuZBF5FN6pzA1jaSdr
 3OjoQtbQs/vz6VFULed0HCqXpFSxJG7OZe6O1uPq/RgjcG21bjFluyOT6d1x2wQn
 MuZ4M1iv/6olqwO3XeodgA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1785512222; x=
 1785598622; bh=DDKNXszG9PP2FZXE1cMfxVDfk72yNxaLumtgWlrbbHI=; b=C
 NrTIOqFUgqFeRje2CgGaWV0/+QhGM6Qqn7o/1lyhHzjDF1cuMqCURJBW9iqiIYgM
 KqgHOVjIS3L2EHeu4tgCPdSkcmMeLQF5NdbjYZ03NvHULu0CtRqIgon65yxP9KUZ
 CtnwhBeQoql4+kIa8hABc57G7h8XB76tJLJiLvwsC3MeFAso1ebul91Q53CwxnCe
 HOV1wEQnBNV9yVeGw2v1agjzhHda+22cbsUi/4Y/+twmTa/8AdMVZAVerBvDTQO7
 FSJQgecCvv+v4FkZY3+zlxFe6ooqsqr1Zy3vXcAE7pQQ6tG66l4rTCR1Fggv9gIY
 Omo2hTaEwyDu9Bh2XZJ+w==
X-ME-Sender: <xms:HcFsal1qatIqiCwTpOjpIcRvj-GWUFJdE9nltemwB5o3r414uG3bXA>
 <xme:HcFsajGYyUnfvhO7D7vKT-B8u_uLBXI4rUyg88OwX0jWRhl8k2m9uf8QVKUQeMxtM
 Np8dkhGHSUhc2tEqVmWhTDV-ZlC1rSe1qpDM0lzbwgTS1I2oTfub8s>
X-ME-Received: <xmr:HcFsaq7gp8JpTLRM05_Lar_Ti5cpJstv6TZNnFVJnlqTqpJmr9-MUjD-9HcEt8r0F2EM>
X-ME-Proxy-Cause: dmFkZTEkx1Tx6dPPRmfs0edLGBW9K5G00IB5TbPTh4Vd+vIRNX/U0r3nBuufKcgEUG8+n1
 umomGOg0/Y2vyhpf452REGcpexR8B5RBhfVuQz5GDK+wb0v1WhT0urYtpI56DAFKGQV11i
 jJSCOggsqe6ToYs0nTfZOGSJRPjI+D65rwW6eShaP6DqrMsdZcWcmOuut3pT7kkR3mb8Dg
 VDYbXvROufrTPo/kE2jbCqBtCjooJ8BhKyzBM/8gv6ILlJs2gtRL6TDIqJf0o+1f97Ch/j
 E+IW0lEs3iqY/3P315JVRCt0boY6+3MnRdto5xNB6+PrroPZgz7i2z6hw7tpkBxkhNWtUc
 sWtFJOyGnsINAYlqaPd5ATr+ZLnrBmjr4hqSSNkp/xJNSc+O6YDD1hDg+XUKQdRuEVDmRj
 FW/M78fFVGHULjiuEZNGEA2vLJBh9R4ByTPezNVxnLOqm6pw7KIbo6ipgM8E2eLXyBUVNz
 ESKcYDWc5C4L7xFHFrzdtzapwe05XfXEJ1uPniyR+vqRYkBxjhRQmuxHDckdGpVrJtV6un
 M80oPV5LklZTqTUECJK9kmKUy6WlNlR40fKA8MPqbCZ/ljjapTLb/sW36TsDAPdF5JPGL9
 hBZBYcu+9JuU10ArIV0XLWXPvc6ntE0NCUFyLeWmaaZ9045VGlDAPZfOb0Dg
X-ME-Proxy: <xmx:HcFsahsM35KVkv_enZ3IujBm5oNGTZ0JtOMLAYLlYi2JgKoOVTVOUw>
 <xmx:HcFsaj6f_S3oY8nx5ZSrzTwJeiECXznw2SAQfkULysFqRcPfsHX48A>
 <xmx:HcFsakXPzFEn61w5A-mV8xCVpaKgQbzJ3rB_LIhzfORn1eqiFodCug>
 <xmx:HcFsat9R80fIZRHnRUavQwjAq1NbyClxbBA3KhQ4R-SnIwrgT8oOGA>
 <xmx:HsFsaoeR3h7ryrNRo2B7Q5Oa-_vjKCpGo6lno2vSOhcc6kzfhmVjbBzH>
Feedback-ID: i07de48aa:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 11:37:00 -0400 (EDT)
Message-ID: <2a477d8e-973b-4c8b-9dc3-c8d8d4e8641b@HIDDEN>
Date: Fri, 31 Jul 2026 18:36:58 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
To: Eli Zaretskii <eliz@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
 <3b81fa7e-6f67-4479-b0db-fee3076ad201@HIDDEN> <86bjbnw585.fsf@HIDDEN>
Content-Language: en-US
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <86bjbnw585.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On 31/07/2026 18:26, Eli Zaretskii wrote:
>> Date: Fri, 31 Jul 2026 16:08:45 +0300
>> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
>> From: Dmitry Gutov <dmitry@HIDDEN>
>>
>> Hi Eli,
>>
>> On 31/07/2026 14:45, Eli Zaretskii wrote:
>>> My point is that when I have several commits, and then pushing them
>>> all fails because one of them, going back and redoing the one that
>>> caused the fail is a terrible nuisance with Git.  So I want the
>>> rejection happen when I commit, so I could fix it right away.
>>
>> If the pre-push hook only checks for LLM attributions, and does that
>> with decent accuracy, would your scenario above ever happen?
> 
> I don't see why not.  I explained up-thread how it could happen.

I mean... if that does happen, wouldn't you want it to be stopped at the 
"git push" stage?

If you agree, then the question might be whether both pre-push and 
pre-commit checks are needed.

>> I don't imagine you would have commits with Assisted-By header in the
>> local checkout of Emacs, with any regularity.
> 
> I think you forget that I frequently push commits of others, and also
> merge from the release branch to master, and then push.

Hopefully the release branch isn't going to receive problematic 
messages, so merging from it won't create such difficulty.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 15:27:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 11:27:18 2026
Received: from localhost ([127.0.0.1]:43535 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpp8n-00076R-Rz
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 11:27:18 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:56554)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wpp8l-00076A-AO
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 11:27:15 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wpp8g-00078F-12; Fri, 31 Jul 2026 11:27:10 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=HNzFVNv3mavSl/vQ1f+w0XQiRz5cONwtb94hOoAfdnA=; b=LqCYaAv55ycd
 hlamnsrRRsg9es99N51D6+13PjeqNiGHnctYQ6GDZ5ChvXuz+nWZrhxVc//22Te6TxzFXuozdvbev
 PfKfSICBc1+p0xOOajOonkwp4c8YeAJjBP5M6EHGU/nlbWQuhXByipl4NvE1khsuWP/BVN88YKtQE
 ME7ni76SKz/k0NACru95VSuFYI7KT++kH653JX8liYXPWmfS956SZEhnFGChM9xhOuSUe0UIk60Gj
 7divQPBYIIBo2nvlwsAMyXeqkusjuHl5Cq+W3m4Lyv/LHxhwcx18E3wMecBGXl9rIxOCLFFP7U47q
 E6hhLk4iQdBW8DuyB5yxZg==;
Date: Fri, 31 Jul 2026 18:27:07 +0300
Message-Id: <86a4r7w56c.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Sean Whitton <spwhitton@HIDDEN>
In-Reply-To: <87a4r771bk.fsf@HIDDEN> (message from Sean
 Whitton on Fri, 31 Jul 2026 14:09:35 +0100)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
 <87fr0z730v.fsf@HIDDEN> <86h5lfwc7h.fsf@HIDDEN>
 <87a4r771bk.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> From: Sean Whitton <spwhitton@HIDDEN>
> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
> Date: Fri, 31 Jul 2026 14:09:35 +0100
> 
> >> > What are the problems with rejecting individual commits when they are
> >> > done?
> >>
> >> It makes it difficult to make commits you never intend to push, e.g.
> >> for local-only checkpointing.
> >
> > On the public branches?  Why do you do that?  It's inherently
> > dangerous.
> 
> Right, I either do it on non-public branches, or on machines which don't
> have my SSH key.

But then the hooks should not be relevant, right?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 15:26:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 11:26:12 2026
Received: from localhost ([127.0.0.1]:43526 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpp7k-000749-1W
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 11:26:12 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:56712)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wpp7i-00073u-3X
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 11:26:10 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wpp7c-0006mg-Kd; Fri, 31 Jul 2026 11:26:04 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=CbY7AFKRveDI4FyDnmnr28wxHXQqNGvzh9T0Ji6jCSA=; b=Q7k0NKt0114T
 T/uagW2PCM5WFza/BBOabX/V8W2gGTn2TQl7kh3dqzw220XjD38AAMG1skjz7fKBNuMChyk295bLY
 2NaoNHBKhIes5w8ZuQpn7lzPBbhLcXx4BlRDBzs/RXBrbdDeqTOeht1s6iNiCy+LcsarjgA4jSqEg
 rUpRvHD4tCRNvGgkUJEHHDsNChcxUG6VDnqNGkGfAPWDG72F9UOPchglASRWuGWQ7thfCJzL1kyNi
 nquYUnxiYhRVD1wxKh9PT7aYxCQVE8zzA7xBP+zM1TS9xsEu4XV6LZ/ksbIHsKM18iXJwjOgWm5dR
 vC7/Ya9DYmAqBTaIU3wWvA==;
Date: Fri, 31 Jul 2026 18:26:02 +0300
Message-Id: <86bjbnw585.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <3b81fa7e-6f67-4479-b0db-fee3076ad201@HIDDEN> (message from
 Dmitry Gutov on Fri, 31 Jul 2026 16:08:45 +0300)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
 <3b81fa7e-6f67-4479-b0db-fee3076ad201@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> Date: Fri, 31 Jul 2026 16:08:45 +0300
> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
> From: Dmitry Gutov <dmitry@HIDDEN>
> 
> Hi Eli,
> 
> On 31/07/2026 14:45, Eli Zaretskii wrote:
> > My point is that when I have several commits, and then pushing them
> > all fails because one of them, going back and redoing the one that
> > caused the fail is a terrible nuisance with Git.  So I want the
> > rejection happen when I commit, so I could fix it right away.
> 
> If the pre-push hook only checks for LLM attributions, and does that 
> with decent accuracy, would your scenario above ever happen?

I don't see why not.  I explained up-thread how it could happen.

> I don't imagine you would have commits with Assisted-By header in the 
> local checkout of Emacs, with any regularity.

I think you forget that I frequently push commits of others, and also
merge from the release branch to master, and then push.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 14:31:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 10:31:41 2026
Received: from localhost ([127.0.0.1]:43138 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpoGz-0003XF-8L
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 10:31:41 -0400
Received: from mail-ua1-x930.google.com ([2607:f8b0:4864:20::930]:45362)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1wpoGx-0003Wx-JU
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 10:31:40 -0400
Received: by mail-ua1-x930.google.com with SMTP id
 a1e0cc1a2514c-9696319e14dso320743241.3
 for <81520 <at> debbugs.gnu.org>; Fri, 31 Jul 2026 07:31:39 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1785508294; cv=none;
 d=google.com; s=arc-20260327;
 b=AWDMx3H8AqLaFOLmQgKank0alehrlP646dVDFgI31uHtJum2IsN+sgctibfSkVEyZT
 2GSRhW+Nn5DmGhM2r5x4VeCN46pwrU5ejHIU4WDd2D1wGads0ID0VcvBE8EYp+tZwNGK
 /xDk0zEfVezOs45lKGD6Ee2cvP4bktbheqorePVuzDu9miKQEfG+SFAOCeXYPdKsLz5q
 oqDF4sJajfDs+DXWT+oNKBjKUSf465AreIImqG/irEGMI1FpjCPI37l3bngQmx06YxWC
 Cmi0aGcd79oo+mUYOQ+GdsjPXW9j8fy7tlGcFD2fxzUl02UBsXbXPmRojMLwINvx5AhX
 RfCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
 s=arc-20260327; 
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:dkim-signature;
 bh=tOq0KIkWPce68GLhPUFYIN1t+eELwJQ8/O7Rffy/BTA=;
 fh=IsN6B7IdbPwNDtjvAQM9ara0GsyBqvCsSEqOEeSFnAU=;
 b=COD8xHodMZJ+PH+Rw+hXV/EtOgR80iBmh8r++qXJfJ2v2t4ZHk/2dXpIg6wLxTnx3J
 53F7lIkAUfcpuBV1b4t/oTe2tuGVm0KDfrw29MiXvBkQ5zuOY+yNekg4YZY52HciOcvb
 J5L93RFBYMNDkw0FBRdQ4a6i+7KIMmeJlFYI6Hig651H3Km0tJ0so5h2QqrU6i9gbsJ3
 hyxNzEcqzV8N1FTyBwUk0tzszbgjzG97UDbGq+l9M5lUn6PEv9IOxt2LHtMRVQLZMB8z
 EjA6BzHHhk0q9yi3jyAe0m4oUDhNPhQRyZgLwxzfGfudSDmhkl4+b6HFS455jkouIbkH
 b4XA==; darn=debbugs.gnu.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785508294; x=1786113094; darn=debbugs.gnu.org;
 h=content-type:cc:to:subject:message-id:date:from:in-reply-to
 :references:mime-version:from:to:cc:subject:date:message-id:reply-to
 :content-type; bh=tOq0KIkWPce68GLhPUFYIN1t+eELwJQ8/O7Rffy/BTA=;
 b=BvVN55607IAi18625Uc6wuc9EhvvS9CXz3P8DWG852gxwK8MX1hWpw+zlMvKRy03XW
 PYnJFKXXLUct02iMEaoRVDzYNJBN/w3dN8PUQT116/tlsxfmAB1huNvx8fF2pIEndAT0
 E3aSstTjBCKM3oAX04wNPU36K/eiJNrLH82rgcdicsDMXKnlDZth+gEAeXv+O8BYNYlP
 /cPrr1lzJLLROwHOi2G2xgQTWt3RyPLy1D+3lGy3AKRdVS9rXeXA/iG53JoGstncWT5/
 Tq5w4MC7CF13VCg1/TevXMss9T9VBSyw6AdV7xN5RIPmrWMXM7lG9bwdslerzRmscZ6+
 Lugg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785508294; x=1786113094;
 h=content-type:cc:to:subject:message-id:date:from:in-reply-to
 :references:mime-version:x-gm-gg:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to:content-type;
 bh=tOq0KIkWPce68GLhPUFYIN1t+eELwJQ8/O7Rffy/BTA=;
 b=Zp0uw0hSZkbfW1svyZTeyjYUQt0bxW7bJQ2WHkRzbmLBgX8cjpiHWF6arpDgqkOQ9B
 WiRmSeZf5A0DSLx7EYcXULiVTe69JWuFlhP4b9LLdnXTLDgkjax2lA8plbK3cAzYMFqu
 3SjyFkPXMsadUfH68a32t+WOZ1dzkIYeykfKunzOiRkzRzrvpFbZGblJldVvNjBV5KNF
 f7zglpurCI0DSjenBKbFlfH49QKX0tYlo330Il2KItOImHMSE+y6Dz2wRJ8bf5lWinKC
 tEtHqtCSCF4QtELV4AT82o6H7ABZKlyvzKj4QQ++RWbMA16kkxXwn6C3VsTyKr+GoBYi
 EB6A==
X-Forwarded-Encrypted: i=1;
 AHgh+RqhFcpsjO/mRefjg27BOAdBuv0KR78XjXfLYilFQauJIiyrikStSFjPecOitsC8nYw1RcD+tA==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yz96zbSPMKyjmXyQEdIrM0I44u1Yq1h3i4VNcQlSUKAJYYwdmZC
 Dxrn7dzWLcUsA1hXhKdmwBcYPYbEwxzCuR61bHeqq+Pm8Lf+3/gQBXf8VYQweG/OLTSKobb3nYp
 MQkw551AXYzCrupFkwI0n0OETiO68uFU=
X-Gm-Gg: AR+sD13S2lBLndqkXS4GtcvNHx12I3VXRYvmDjE+cy9vUdpPI+XtVZh6lmOOz9AaJOF
 j3Z/rwfM8QB4XKr3vw4SajK0ozzu0THCilj3FnjSrVnFO6eivSj8sp+LUtmhMajrR0GRFc6leVk
 uwHP2/vjurLg+WdeTc++EV8P727TOg/pPr70CXo7sUol3ViiRuWGk3AZfVhK1+vSGkoKGzIjFEL
 D3cS+is1WnOWJ1GLqL3eQCV7rDypRljFaKmsnvdebk7Pg/4PYxzua+SaZ0XzLoAFux18zyihHWv
 CfXZivagZQ1Fkw66gS30AAyF47x+7SXklpPG5iME17BvFchZ0YNzu8aom0DaqtgQb2BHUbO18Gs
 RgLhrtC+fKcILoGL75c0sn1dwukB0qSfULZBBp3n7f1hg5prRsbJMfOcf/RT7+wr64UYU3fNjqL
 DNWL49M0PHgNSzDAzeVoAIopl3bFYKjmM6ckL/3kDeQKABoyFYsOSLHeBdvB4UfOWiKSM=
X-Received: by 2002:a05:6102:2d09:b0:738:bce9:6afc with SMTP id
 ada2fe7eead31-75b1e83c13cmr86784137.0.1785508293657; Fri, 31 Jul 2026
 07:31:33 -0700 (PDT)
MIME-Version: 1.0
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN>
 <86qzkjwqhp.fsf@HIDDEN> <87tspf8ofw.fsf@HIDDEN>
 <86o6fnwhy1.fsf@HIDDEN> <87ik5v75yt.fsf@HIDDEN>
 <CAN+1HbpX133tKQ=-naWSFkwmyD8Fn_Goeaup4Nje+GWn=ujTBA@HIDDEN>
 <6fae8ff8-0154-4e5f-8f05-08140a5e8f6a@HIDDEN>
 <CAN+1HbqhKGOH+ESBJqgQqT46N7cf=XwbvuFmuvfoLibqa_B5gQ@HIDDEN>
 <15a4cd4d-e20e-456c-afb9-24659be99ead@HIDDEN>
In-Reply-To: <15a4cd4d-e20e-456c-afb9-24659be99ead@HIDDEN>
From: =?UTF-8?Q?St=C3=A9phane_Marks?= <shipmints@HIDDEN>
Date: Fri, 31 Jul 2026 16:31:22 +0200
X-Gm-Features: AUfX_mxRUWmri0--YSEaY4jif7LxpKlbk6-H4HHorDADdvp2vACfys6Js4JTutM
Message-ID: <CAN+1HbqBQPmkpPOQbtEsKjuk-6vjcUFdyTi+gMAfvFauFPnT7g@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
To: Dmitry Gutov <dmitry@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000009648fb0657e90b26"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 81520 <at> debbugs.gnu.org,
 Sean Whitton <spwhitton@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--0000000000009648fb0657e90b26
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Jul 31, 2026 at 9:40=E2=80=AFAM Dmitry Gutov <dmitry@HIDDEN> wro=
te:

> On 31/07/2026 16:06, St=C3=A9phane Marks wrote:
> > These simplistic ideas to use string scanning to detect only the most
> > blatant LLM use would likely be seen as "legal theater" and afford no
> > real protection against a claimant, especially one with deep pockets.
>
> I don't think we can say what arguments will or will not work in such a
> proceeding yet. But with LLMs defaulting to tag their work, the absence
> of attribution at least could point to an intent to circumvent the
> project policy. Which we should document anyway, of course.
>
> > It's better to clearly state in CONTRIBUTE what the rules are, trust ou=
r
> > colleagues, and hold people accountable should an issue arise.  Text
> > scanning is superficial at best.
>
> If we can help the colleagues uphold the rules with some automation,
> that seems like a win.
>
> It could help contributors that haven't read the new policy yet, and
> briefly used a popular LLM for some minor purpose.
>

BUT it is proposed to be at push time which only a select few of us have.
It is not proposed as a pre-commit hook that I saw, though maybe the dialog
progressed toward that as a slightly better goal.

--0000000000009648fb0657e90b26
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"fon=
t-family:monospace"><span style=3D"font-family:Arial,Helvetica,sans-serif;b=
ackground-color:transparent">On Fri, Jul 31, 2026 at 9:40=E2=80=AFAM Dmitry=
 Gutov &lt;<a href=3D"mailto:dmitry@HIDDEN">dmitry@HIDDEN</a>&gt; wro=
te:</span></div></div><div class=3D"gmail_quote gmail_quote_container"><blo=
ckquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left=
:1px solid rgb(204,204,204);padding-left:1ex">On 31/07/2026 16:06, St=C3=A9=
phane Marks wrote:<br>
&gt; These simplistic ideas to use string scanning to detect only the most =
<br>
&gt; blatant LLM use would likely be seen as &quot;legal theater&quot; and =
afford no <br>
&gt; real protection against a claimant, especially one with deep pockets.<=
br>
<br>
I don&#39;t think we can say what arguments will or will not work in such a=
 <br>
proceeding yet. But with LLMs defaulting to tag their work, the absence <br=
>
of attribution at least could point to an intent to circumvent the <br>
project policy. Which we should document anyway, of course.<br>
<br>
&gt; It&#39;s better to clearly state in CONTRIBUTE what the rules are, tru=
st our <br>
&gt; colleagues, and hold people accountable should an issue arise.=C2=A0 T=
ext <br>
&gt; scanning is superficial at best.<br>
<br>
If we can help the colleagues uphold the rules with some automation, <br>
that seems like a win.<br>
<br>
It could help contributors that haven&#39;t read the new policy yet, and <b=
r>
briefly used a popular LLM for some minor purpose.<br></blockquote><div><br=
></div><div class=3D"gmail_default" style=3D"font-family:monospace">BUT it =
is proposed to be at push time which only a select few of us have.=C2=A0 It=
 is not proposed as a pre-commit hook that I saw, though maybe the dialog p=
rogressed toward that as a slightly better goal.</div></div></div>

--0000000000009648fb0657e90b26--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 13:40:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 09:40:53 2026
Received: from localhost ([127.0.0.1]:41731 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpnTp-0007ya-52
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 09:40:53 -0400
Received: from fout-b6-smtp.messagingengine.com ([202.12.124.149]:33557)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1wpnTn-0007yK-6a
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 09:40:51 -0400
Received: from phl-compute-05.internal (phl-compute-05.internal [10.202.2.45])
 by mailfout.stl.internal (Postfix) with ESMTP id 8A5C11D00123;
 Fri, 31 Jul 2026 09:40:45 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-05.internal (MEProxy); Fri, 31 Jul 2026 09:40:45 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to; s=fm1; t=1785505245;
 x=1785591645; bh=1cT08J2DCdmgq+XxZp9p/+5C92iUifr99rHTav3hz90=; b=
 JaLdp8PJyA08L1B3gKOZ4iI91vazbzjUeJ1sfpbCZndTcqQ8hmM/W9yLDOgtqaRb
 QexxfsfJWJNbZ5ODH66iaqs7wD//HEH2H+0aHsmWmxVAI67RRCExkFAQPXy3jESz
 fPWnNlt/nMlECXE+ZOKlcEPGgvrUisbjAG7S/2vT22VEQzb5SJmssCCGkrtwuhyM
 Vo9L0+Dny+jECCb56ZKBpvGJhzh5Ca/fAoPlE+HrQd46diGqSNeDNbA6B5noZ0Lc
 sNcMXt0wm2I7fWx80eJ+6ECvKNki98gu4ZPbfIMWjmpWXZ0/yup5U8lBFU3nGIJ+
 Z89ABtbU91PyS5003wyXgw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1785505245; x=
 1785591645; bh=1cT08J2DCdmgq+XxZp9p/+5C92iUifr99rHTav3hz90=; b=O
 Cwf8v0rYq88c4sFgTPndK0xMQdVglrsQvluYRE6PcyTLlmMrmlvRhKxyn0UxPnIb
 393pt7qBKeFtr76t6Ei4oVk6fKJlgpRhy88ndX/hpaUqRL6Q0oytgzXIP+SubLQh
 ulZyN26p3SnfwS2ocvs1y7xZTBrZ56F2MlzJo9+55s2LbwUjWhDKf3jty3/PptM9
 CZm+JCgx+9VzNsuW4CtUPcogVbX0xGsZ3aMbMRyR8LPWkfjTtite7QkoBOzAXYJi
 UUZCapIf3yzLV9/jNX+sj13y839Bc+neNHT7YPU+B6T4SjV6seIDw0YVBlWUgWUh
 topj7k9hJEbw8i/SHQFVA==
X-ME-Sender: <xms:3aVsasZ1l2hAmAGlsjF6-MLgbI6PWElET-ujsUxA_kswUc2oqJuMUg>
 <xme:3aVsauTvAf45SQQ9qjXurYCosZvCDASAmGc6y9DF5BesRBroOz2b7hZ1gjFxKXkVz
 dJhc0VsFxVVGX_CRFgAIe3jCCJHsPAmge2DrduRVE7JkilIMgtBeiU>
X-ME-Received: <xmr:3aVsavSOnGUXHNslEPLOMnObLrHQNvIxiGoTIL9NKooV-Ss1UGH0NqK04z53qq_91w5P>
X-ME-Proxy-Cause: dmFkZTFASMch0y7ShjwPZvWZXsc7ihueO9lXUYjEFPZgQKJNNf0iQAeStC4RhploGfHa5o
 4G7Yh+zxuGeVWIWPS/4emzQsjHKFsJT+Nz/GXni0efRow0ytgsvjcFNL3oYnBPBGgho6CE
 wlmxjGs6IXXIcp5RwN4cewW6NQ2d8jvgnROQZPS1IUz5FYhDpGgc8SXwjHdDpdQ4oCTP38
 pBcw0i5g76oCAM8MFYRfPcXSNSwKwQHRDC0bNfj6EyLD+ewnSL5ddDXHwAVy5hFSu6R4fc
 IpVsD2yRd6l4A7Y7Tqam0aWHgiC7QgN/V7uF5+MVaamypCOqvJnzb14FgDET/MjP0YxzqH
 PX8DgrbL/rXrJQpCArSv4P+liTinAh3hURPUP8ReFzhtPpifuOFZV1i885zMRFLNigrjmz
 LA8zYCkGAwgvoTx7qnpTUOgWGzEerrJsLoaPHUO5ybE1j6boKW2KY/6p6TtVMVYlaHtwxr
 RS5LywKKfjDfaO3j7DcVi91/6qxDTIMPjcWMAk93W3hxKMipqyM3ewdOYSlxfsczAY/jZy
 lZJO6wjf0kUaTmajlpyFCvbXEHUD0z3jhlgtM2tIw8HRFnaTgpOy0cCib5gcCQSr/2U6HC
 Xlh6900/tkmoKG5qCbkpQpdfdrFJXP2wE2QA8NGp8khCiK6xwPsgGG/7U+Eg
X-ME-Proxy: <xmx:3aVsaiRAqdJ1Hbkk9cwn7as7O656lW9t7O0TvqKhf1BMBICeHoz_bw>
 <xmx:3aVsak5k9k-PeXqBLmXYniLcvMjRkvGVgQoZAjGi0hhhMAEGwRAyMg>
 <xmx:3aVsau0i64n7L3uyi4bMdwKIMqnMjav_YL_Jd6YnGaFdogThupHPJA>
 <xmx:3aVsavAUNAkOUvueS2xgnHvl4AKAe9qrBA4_hhjaVJ3y4mwc64t9zQ>
 <xmx:3aVsaqZUlwmePMQvEgwTBvISP32Zgkcu76rZbOwQrmbxkMJt1djiJPsp>
Feedback-ID: i07de48aa:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 09:40:43 -0400 (EDT)
Message-ID: <15a4cd4d-e20e-456c-afb9-24659be99ead@HIDDEN>
Date: Fri, 31 Jul 2026 16:40:42 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
To: =?UTF-8?Q?St=C3=A9phane_Marks?= <shipmints@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN>
 <CAN+1HbpX133tKQ=-naWSFkwmyD8Fn_Goeaup4Nje+GWn=ujTBA@HIDDEN>
 <6fae8ff8-0154-4e5f-8f05-08140a5e8f6a@HIDDEN>
 <CAN+1HbqhKGOH+ESBJqgQqT46N7cf=XwbvuFmuvfoLibqa_B5gQ@HIDDEN>
Content-Language: en-US
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <CAN+1HbqhKGOH+ESBJqgQqT46N7cf=XwbvuFmuvfoLibqa_B5gQ@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 81520 <at> debbugs.gnu.org,
 Sean Whitton <spwhitton@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On 31/07/2026 16:06, Stéphane Marks wrote:
> These simplistic ideas to use string scanning to detect only the most 
> blatant LLM use would likely be seen as "legal theater" and afford no 
> real protection against a claimant, especially one with deep pockets.

I don't think we can say what arguments will or will not work in such a 
proceeding yet. But with LLMs defaulting to tag their work, the absence 
of attribution at least could point to an intent to circumvent the 
project policy. Which we should document anyway, of course.

> It's better to clearly state in CONTRIBUTE what the rules are, trust our 
> colleagues, and hold people accountable should an issue arise.  Text 
> scanning is superficial at best.

If we can help the colleagues uphold the rules with some automation, 
that seems like a win.

It could help contributors that haven't read the new policy yet, and 
briefly used a popular LLM for some minor purpose.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 13:09:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 09:09:44 2026
Received: from localhost ([127.0.0.1]:41415 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpmzg-0005Bg-DK
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 09:09:44 -0400
Received: from fhigh-b5-smtp.messagingengine.com ([202.12.124.156]:37075)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <spwhitton@HIDDEN>)
 id 1wpmze-0005BQ-L5
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 09:09:43 -0400
Received: from phl-compute-03.internal (phl-compute-03.internal [10.202.2.43])
 by mailfhigh.stl.internal (Postfix) with ESMTP id 31C077A013E;
 Fri, 31 Jul 2026 09:09:37 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-03.internal (MEProxy); Fri, 31 Jul 2026 09:09:37 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=spwhitton.name;
 h=cc:cc:content-type:content-type:date:date:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:subject:subject:to:to; s=fm1; t=1785503377; x=
 1785589777; bh=+W0HH5/Xj+OOshlgPshNbde/PfCfuNAOe4GiRwUuXxo=; b=P
 66qtmFCQn4LQnQb/BMaRFcRLk4+Xwjra0BE1ewh0ydZXj8jTfa9xZZYW7Y0YAHgt
 1Cwyj9eTy97m15aZPW9GeGWf/1lp7PuczkSmu/oTQn6E6ku3Z32cymhgQQWMSeFn
 3yRpfh55XyHlIgq+m0rCeaMAQKrLd3iZ26de5WBfSQEAR7HwPclEJQ2nxloH21Iw
 GKrys8tbGf9JVZfkTBs5MNcIO9zqPtEuQNJ5ifdpsksdk9rw8jTvciCenIrEmkrC
 PIiQlXa/nJvebfIOEGrBJLgowoXKxKLnCNy21ap97YvRmxk8QjgoiqlnfaXB7jeF
 O3TDfDcQG6kiDJYVx+wcQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=
 1785503377; x=1785589777; bh=+W0HH5/Xj+OOshlgPshNbde/PfCfuNAOe4G
 iRwUuXxo=; b=l8HR/qRNtBcZLn3cLNWisFIYhHX0RAxhlqyCGqUUEnYPjjQIYNg
 9nsCLdlHEbi04+NfZ44lKNbBzKV3LNwZ1XsHQfxxC6K8OGYtmprLKBQh0KCA5A+/
 QMIPgEJsDyCAJEjS8nQPFL1jpjx+u4FPOTzwytaSN5NEbVl3Kj7XfrCbSbxsj8MG
 5dPeOIevwUpqFL+tqd4U4BhJNUlwna3NSEtg1fVa0ke5lhx91L3fHP0zmOkqhmeZ
 eKqti/a8o91hMSqmyiVNuSP0+qCPgd06lfeRsFURYyVOT2xjyYJB8/8NEeZ8CmWz
 BmidkKm6TJEQqMEmokGl4gJTd1ygv12sCbw==
X-ME-Sender: <xms:kJ5sancxv_ZFxLiLc6wX1GW-YuGrSbJbnAfC2NPUDZaQnmh0Yzh_OA>
 <xme:kJ5sakrxXlNOzG5BHGzOgsiVeEL1bj0Ej2akeGcQ8nSHWHBFZL3YJ3nPaPhFf5q0F
 tAfmxjWy3StcDxtWVPokz8QVvEmd-1fEzyS_ap0kj--pRmVVW4RS6I>
X-ME-Received: <xmr:kJ5sat5A65xH-vkHYwoJc9KnNBgOvm51PB4NFzo5IFCevpo-D6i0xf1bgSlwH8Fl9TK6bWfg-KkQ>
X-ME-Proxy-Cause: dmFkZTFU7mEZnJAFrWbQK1NSyeYcArcyd9H2ZZntlrtvuCKqhOulg1hz46X/qoK079Ag2B
 u9IrWEcUp21kr/RRR7SKP2H5ueRtofpeIPk2LLRA0/mtj8IdtOIIEIjd23QpNuietrnFmt
 jhDicM1ccnkqV3DKS+gJsHAcRZbc6GHOQzLnWqkYpS+rweRHaxRg6HlG2qj2HQ+LNlZztm
 38CPjtFsIsrivaaeq/Qcq5DxEb+kezGAyVIt2KsE+B4doF6HGZQV3ZFe6TWj5r2pQ7y73w
 DAKqM1SbTFTKUbOSPEuLZfSiXHbAcvFVPwS7tJ2XaFA0JJIP7IEBpqVB3mHJuL/8xZBdks
 /Y5hUJ7b97sVn4lgZIlTQnEDsOqCZ5FKyEPf1jVstNvImh5oGQB0QEVzS4v3F0mtnPsDse
 bW8pPR0Zks8PRkAjxvU7ZnnwJ+OlmxE/kNjFdDq31dy8mtmMgl45dN3r8IFXz2o6bJVupE
 r+H19cLuMQKnmBgSu80wUFK3FWb0JeDKw+ke5C41ntkKY7Iq3o2wcJOsHxpL2V/SyNvQSB
 q/6Psm+vgt4vtuMfHabIuIdxtHqOO9fPsA3av5QLIi5+RoSie3XwaPBziQvRpofG1TUEXD
 Uj2X/PETsfee7SvqMQoqLgXorYSuuRT4QQCVWdiIVj1pDd9G6vEqCSixcO1Q
X-ME-Proxy: <xmx:kJ5saiqW5GV8yJBiWUiH1nhGqO2kMSvOvgXCliuZajJ-eBvBwXUD9w>
 <xmx:kJ5sangnVwarWMaRJgJuBBpb-TK5YByDn3ZFnbxQuZT5E6lOJOWEZQ>
 <xmx:kJ5sakIfw33qrIKRPU3NlpC-ev0NYUH-jGf8v_vD5_1Js0uerqQOjw>
 <xmx:kJ5savCk1FTRDtMsIAxukPyVWEJMdsTcaqy7EfPMJvpRtXMwo-NpOg>
 <xmx:kZ5saiXPgzLJaCHbWwLzbpI12rW3Mfu1BzjlQSVPe2LNTGJwne7WeQ-W>
Feedback-ID: i62564b17:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 09:09:36 -0400 (EDT)
Received: by melete.silentflame.com (Postfix, from userid 1000)
 id 783A07E8A54; Fri, 31 Jul 2026 14:09:35 +0100 (BST)
From: Sean Whitton <spwhitton@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
In-Reply-To: <86h5lfwc7h.fsf@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
 <87fr0z730v.fsf@HIDDEN> <86h5lfwc7h.fsf@HIDDEN>
Date: Fri, 31 Jul 2026 14:09:35 +0100
Message-ID: <87a4r771bk.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Eli Zaretskii [31/Jul  3:55pm +03] wrote:
> Sorry, I don't trust these advanced features enough not to screw up
> the Emacs Git repository, especially with my ancient version of Git.
>
> What does it do? move all the commits after the offending one to a
> branch, then back?

It does a reword-only rebase.  But fair enough, if your Git is too old,
it probably won't work.

> (Btw, what this does and when it can/cannot be used is almost
> completely undocumented.  Both the doc string and the manual are
> silent about that, and both are one-liners.  How is a user supposed to
> learn about these capabilities and their limitations?)

I agree.  I'll expand it at some point.

>> > What are the problems with rejecting individual commits when they are
>> > done?
>>
>> It makes it difficult to make commits you never intend to push, e.g.
>> for local-only checkpointing.
>
> On the public branches?  Why do you do that?  It's inherently
> dangerous.

Right, I either do it on non-public branches, or on machines which don't
have my SSH key.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 13:08:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 09:08:56 2026
Received: from localhost ([127.0.0.1]:41398 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpmyt-00059H-Ts
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 09:08:56 -0400
Received: from fout-b5-smtp.messagingengine.com ([202.12.124.148]:59045)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1wpmys-00058z-0z
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 09:08:54 -0400
Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46])
 by mailfout.stl.internal (Postfix) with ESMTP id 7BD311D00109;
 Fri, 31 Jul 2026 09:08:48 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-06.internal (MEProxy); Fri, 31 Jul 2026 09:08:48 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to; s=fm1; t=1785503328;
 x=1785589728; bh=jKglL0t4/EnGdBld17EY4rh3QyIpS+/PXWzPXAlSP48=; b=
 AfuejdEuc7BjyauTOadf/H2yXFm9aIHkvkjsR654zyk/0UTIsv8Esb7JcuDH+kF0
 FXxOW72pQxmzIoLconjRYoMSyuMuc+TLYdgxN9u1xSfArfu1qE6cwphr6it6YxV6
 9wlDyQkav3apq8yBCmLWH8F+4RYbGtxSzZBnM93BPqbGneDECACN7btzDMN78PEk
 AmbYNyeFlPik3l0mxX8MskIlSmR5i8wTH0Mi+H1C8QvDa9zU3kRj9XBCPm9R0txr
 bxgHnq6HRRvSfVGhxV29+/kvvL21Gj/pYo/GLiBY6/orCdOIAbU1NorTYjWB6KrC
 sO81cJgB/u4XE05Dk5ylXg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1785503328; x=
 1785589728; bh=jKglL0t4/EnGdBld17EY4rh3QyIpS+/PXWzPXAlSP48=; b=A
 P91MULTDVocBby6EM0ee7rxjeGmkVwWQBPAGYYSAjzLyo5UrTGhTxpqpTsnPQ//J
 ZKz2/DZE9UbJ8FfLJ/eUQrwA3/owCXEGWDUWSHe4WOBs1BM+LJi2gE22yM81/yTI
 s3BP4dmrEsqGyNKq/nVYSpR5WcsETtzvh7XQM2o+Fsk0On35+6BirK6kTbvVdha/
 3Courr9h6g67mr5d2uG5axKV2WJtB8L5UH3JdOwT5hZtm/v7BZoyVCF1lyN6T2vI
 eY1m3Zoc4Bz9DFXt+oHGJcZUEJOgW/dRR36Dwiy/oMNj5XIuDFSag2Nayn06bnd7
 IG2kt4X8s8H9hN6brlmVw==
X-ME-Sender: <xms:YJ5sam55stpDMrWNOHQP67twusBxBv8o1r2p6Mv6KSPK-RMBOm-FsQ>
 <xme:YJ5sam5IrS9nJQQ_9oswF_3UzsESoIq8vghH9wkO5OjGWvLh7pPpOjNbp9Cd3tUQe
 kPl0951nAe5buS9ifyqnsubdOv1tVpwYkJa_UiPkC_yKU76T9ym91PC>
X-ME-Received: <xmr:YJ5saqe4LJOS7jFmzcjcFIGFn_O3VtiKPvEh4WtsQ-ggONCSssE3W9zHzIQbvuXGOIwg>
X-ME-Proxy-Cause: dmFkZTFZGVy4JBp+VbNNwiRobY+1kmF9qWO+4e5gWpG1HeHFwbchGdoM01FmMCyL6/9GX7
 AmBnjQ7x9D0XfIu6szVZaqmfa6bFVpoveILJHkrItbH6AU75QATuYYL1i3GT5qoR9dY1tA
 wEe9ifeWCPsJleoMLT4VPOnE89MYSKhwheznCHrMDWSChsDqh5p/CvANphD4UJsTrVNefq
 zDDx8weBeufZP8h5eKflxjbE/nRpyyUgL3ba+7MLTkEoSlA4kyjCcIDDEOMATdHSIkg8ZI
 zQn+Mk9Og2NF1zsggV9+pfcJg1LHmFaeXn7qm0m5rw1S77QtKOKVmi7vxZYfq2Yuaa9FH6
 TXfsCae0ffBvK2XZA37UvPA3Hv9h16/HjjFkND/jyntgAXHTJUJTgonFI1vGgxxfjfyYnJ
 IqoNzfYie381bxJi3jx/usnV+HNHZazAANpmccqDtLLraEe+hIFTgaDrfhmGOBKQoeTe2e
 FsTFG6RxdDdQ92LFoDfeyMw5X0dD3WdWLgKVd7bm7ggHx9i0uJP6QTNPy/bS9pWib3db5R
 nf20+BAl9renrgJEI29jC/gvXejajJI5R/Z8L1bNkJ2GqGObfBsdcOVqacVDK5cx9ZDz6H
 9DncVeXjigDQPIyDWicwWTm/5PVmqoFBEl4wVZmqCx+duxZwSD9w/f1bYBng
X-ME-Proxy: <xmx:YJ5saiC3BL0e45SFSxpsbX-ysbe8As3cMOrK3meThoOlMJfO72A5wA>
 <xmx:YJ5sal_uSfbWPeUDHhGctveMJiFF3wmhCpPPRodQE3F2PPMDvb_3EA>
 <xmx:YJ5salImzrmx4NQ_jgPC4_dgZrW1O_6gw6Cz6QH9Kg7UidgLfenWHg>
 <xmx:YJ5samgQt0pTbKipcbBCUfbSGpM6sgA6ebwPzTwj_eyzsaUxR5B5Gg>
 <xmx:YJ5saveRXfxx9VlBn2nQpxSUotT34dtz_otm2nuaohx60TSKhVC6IJ1o>
Feedback-ID: i07de48aa:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 09:08:47 -0400 (EDT)
Message-ID: <3b81fa7e-6f67-4479-b0db-fee3076ad201@HIDDEN>
Date: Fri, 31 Jul 2026 16:08:45 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
To: Eli Zaretskii <eliz@HIDDEN>, Sean Whitton <spwhitton@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
Content-Language: en-US
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <86ik5vwff3.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Hi Eli,

On 31/07/2026 14:45, Eli Zaretskii wrote:
> My point is that when I have several commits, and then pushing them
> all fails because one of them, going back and redoing the one that
> caused the fail is a terrible nuisance with Git.  So I want the
> rejection happen when I commit, so I could fix it right away.

If the pre-push hook only checks for LLM attributions, and does that 
with decent accuracy, would your scenario above ever happen?

I don't imagine you would have commits with Assisted-By header in the 
local checkout of Emacs, with any regularity.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 13:06:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 09:06:38 2026
Received: from localhost ([127.0.0.1]:41359 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpmwg-000523-3P
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 09:06:38 -0400
Received: from mail-vk1-xa2e.google.com ([2607:f8b0:4864:20::a2e]:43337)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1wpmwd-00051d-JF
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 09:06:36 -0400
Received: by mail-vk1-xa2e.google.com with SMTP id
 71dfb90a1353d-5bfdd59df9bso1154376e0c.1
 for <81520 <at> debbugs.gnu.org>; Fri, 31 Jul 2026 06:06:35 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1785503190; cv=none;
 d=google.com; s=arc-20260327;
 b=ebtScBlirfUbR2vvXTTkThAO/QmSN2P8LA85ArJzgERq33nHrf32Iq0TDgF1TeAy1Z
 89oygbuqJnqbhEPi73mIGK+lM5gDEZ95HfaNacreoMafjlk6aWWCHQOlTSWi1KCznahw
 6PeiKKM91eKL71lCThO6B97IWQwqdChqEcYwzSvKPv7pl0HgErCu8Y15oI6UciZ7+FS+
 EtWe90hjCLdi+aqVqkR9V9v8oPcKIjOcg13vFvUqk6fPjPEgK6MrVS+dgToifjvG5RAr
 jPlmg28JpWoesWgHQOOWeDQ/BmX4J6sU7sndSMakEcyLqWch+pgrxwJlmHvgVCznE9lN
 efhA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
 s=arc-20260327; 
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:dkim-signature;
 bh=K5davlbyhY8bY6nyukvuVlzK4na9Bd+9QTWLgFijahM=;
 fh=iuYnpgLbkVnJ8ChX8Jx5dxxBwU32JYVIcEmNqefpt+Y=;
 b=nQ6DGIVXTmMygCsTIxgXYAZ+oki9QRk19skxz516v2uJuCmVW9PewXAwyVYBYxe6zw
 d4OineZ0L0UsjJ3uP83snhKNwGmoYa2b7DJfTzFJbQ12TX8OpRp2FhiJWTjqPaVsGn9T
 GAQfNu82jrMZxmZizIbRnt1gaOl8m2eKyTZcc95S0YJOiXd0BDLEmT3y2INn7KHmWm0R
 3caXsHPLnY+RTH2wzEo5EgCf1Sv/bmS8qnCTBwBu3YQ/RQmFkiW04J8TfVUjkEsIQbkV
 MuPzrhbaOug/5+1D9wSO4zyiYx+3yBic1dsvIPMRnCFZi4J0uIFrSUqBwkyPvTGQCV0b
 bBJQ==; darn=debbugs.gnu.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785503190; x=1786107990; darn=debbugs.gnu.org;
 h=content-type:cc:to:subject:message-id:date:from:in-reply-to
 :references:mime-version:from:to:cc:subject:date:message-id:reply-to
 :content-type; bh=K5davlbyhY8bY6nyukvuVlzK4na9Bd+9QTWLgFijahM=;
 b=ALaxivCEzM9aKx89RuztKhOuuf+zx7Uj7yHyGn5f59pMwksxDhraAR62RrQ/ivglbw
 n6fjpO9UbgD1gifIoNXIG4e7em+vK+dToQCyzY4skU4+m6ayUPZXms9GpPeR0GnTDk/X
 qwbKBY8yclEygPV07b+PfXH46cn7nshZz5pwSC78c0Umr5XuXZg28N6cstYVrNxMKP7r
 C+dWU7q9DJKDEgGKnDq99Byc+JEGQxPLQr/49EUf8zl31pzB6geTRaAgel/V3SuAo6oX
 zJodGDginxG1Svvns6EdmhF1afDyViTDKEKn6hQtBqH4MX3h8IN7qdOQDOrygELSqUI+
 9Kuw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785503190; x=1786107990;
 h=content-type:cc:to:subject:message-id:date:from:in-reply-to
 :references:mime-version:x-gm-gg:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to:content-type;
 bh=K5davlbyhY8bY6nyukvuVlzK4na9Bd+9QTWLgFijahM=;
 b=Lr8Od3PbH1CthKKbTdlRR2Dn88MniC3xSQK2l2LpK86EWg8H48nY/pUisTo6M9POtY
 7IgIhH6Zr/4MqElzJBvGk66FB2l+Wg1GryyaKr6zL7teF5jVFFKvXAzJXWV4TUAaWjVa
 C/TJ3/pQUen6j9XFZo7EqJLEveGWK8pDXLiVyEQwTQbjFamqHzsXATCqQMSpyto+llTU
 1dlHZQR0Qcbe0P6fuq4C5DGJ50pP7f/Sve0xxcWl9piCjU4jPIem5RHWc3N/n/1PgaP5
 dyIB3oRBjSdB75aHheeD6gQluUvL+O3KxHTm7O17SvttznJpz+Dnp+FAEclxwqjnwQqT
 nfWw==
X-Forwarded-Encrypted: i=1;
 AHgh+Rpz3B8OfS9c8K0PVwM1S1kf50OqrghP6Q4DQGxqOA8/ti0gaYyV1hq1hm1CpuiQsyP3WNAFHg==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YzWrtHpjINkFIzqXn0EXrLD6k1XGi2adR/PsSmIiV4NgqQRLTJg
 Bt/b8Bfsyaf7kAwf2+9MggY9IVukWGDccygEABAKDksp0KGWE2dUiafnUa/9ee/YaWVTHyKmn6C
 RXJBsy+wpLJ6mvEv/8nwQm9RehnOAK0c=
X-Gm-Gg: AR+sD10+MSXS03MfxU+iCIMm9ejaNL9zXN0z8+U0oAb0MOq3yL0KKNEtaiSGgonQAJY
 8IPIPRrcoa3w+SAUXy4WSoaLsHfyNVnr/X/RQtdld9GwWUalL7xEcD8/5y7dIIAfptLz7RxRyOl
 hGug4V3VL6Y/dWvEtXaZpRMKcy0hZzG8Zl3RBar67QcfhaKTNMgvpTfZX/gA2LF3Owl4BpC2mOl
 Y57OjPNZBVTSgjlWa2iqMWez8rTRCtbjGGNbWK3J6+AlhXaNMcu27XL91uwrqiQpAg79FaZihQQ
 TGfuCDTiCwpaz7cTXEY73m4IDAn3CtvDJABfolpOMQImTtPUa6taTMV0zushrcSWMLT1bIrrwqo
 WiraidDih9xGr3oindEXwpRZg3FHhEtpkO2RHdakZYurBhJGoKQDGh/LSIpR0AX2D8thPy7K7up
 mDA3at1xUUPZwjYjdNmBiorekrhMuqnKBFGz3djQBqUTkGEJ9ms5U67a0RNLgcbKTfNjc=
X-Received: by 2002:a05:6122:4d04:b0:5bd:b0a7:47e7 with SMTP id
 71dfb90a1353d-5c37ed009demr499398e0c.3.1785503189758; Fri, 31 Jul 2026
 06:06:29 -0700 (PDT)
MIME-Version: 1.0
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN>
 <86qzkjwqhp.fsf@HIDDEN> <87tspf8ofw.fsf@HIDDEN>
 <86o6fnwhy1.fsf@HIDDEN> <87ik5v75yt.fsf@HIDDEN>
 <CAN+1HbpX133tKQ=-naWSFkwmyD8Fn_Goeaup4Nje+GWn=ujTBA@HIDDEN>
 <6fae8ff8-0154-4e5f-8f05-08140a5e8f6a@HIDDEN>
In-Reply-To: <6fae8ff8-0154-4e5f-8f05-08140a5e8f6a@HIDDEN>
From: =?UTF-8?Q?St=C3=A9phane_Marks?= <shipmints@HIDDEN>
Date: Fri, 31 Jul 2026 15:06:17 +0200
X-Gm-Features: AUfX_mwuwYYsZFims_4qQ_Jj1yEnxDb6kSSVvvARPzpw0YQ7h4TH13J3wSoPzHo
Message-ID: <CAN+1HbqhKGOH+ESBJqgQqT46N7cf=XwbvuFmuvfoLibqa_B5gQ@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
To: Dmitry Gutov <dmitry@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000005ef5bb0657e7db6d"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 81520 <at> debbugs.gnu.org,
 Sean Whitton <spwhitton@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--0000000000005ef5bb0657e7db6d
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Jul 31, 2026 at 8:57=E2=80=AFAM Dmitry Gutov <dmitry@HIDDEN> wro=
te:

> On 31/07/2026 14:57, St=C3=A9phane Marks wrote:
> > I don't really have much of a horse in this race but I feel as if we're
> > trying to protect from the few people who have direct Savannah access
> > and those should be among the most trusted people who well understand
> > CONTRIBUTE.
>
> IANAL, but even an imperfect tool like this one could be of legal help
> sometime later, if we are ever in the position that FSF worries about:
> when LLM generated code is found to infringe some third party's copyright=
.
>

These simplistic ideas to use string scanning to detect only the most
blatant LLM use would likely be seen as "legal theater" and afford no real
protection against a claimant, especially one with deep pockets.  It's
better to clearly state in CONTRIBUTE what the rules are, trust our
colleagues, and hold people accountable should an issue arise.  Text
scanning is superficial at best.

--0000000000005ef5bb0657e7db6d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"fon=
t-family:monospace"><span style=3D"font-family:Arial,Helvetica,sans-serif;b=
ackground-color:transparent">On Fri, Jul 31, 2026 at 8:57=E2=80=AFAM Dmitry=
 Gutov &lt;<a href=3D"mailto:dmitry@HIDDEN">dmitry@HIDDEN</a>&gt; wro=
te:</span></div></div><div class=3D"gmail_quote gmail_quote_container"><blo=
ckquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left=
:1px solid rgb(204,204,204);padding-left:1ex">On 31/07/2026 14:57, St=C3=A9=
phane Marks wrote:<br>
&gt; I don&#39;t really have much of a horse in this race but I feel as if =
we&#39;re <br>
&gt; trying to protect from the few people who have direct Savannah access =
<br>
&gt; and those should be among the most trusted people who well understand =
<br>
&gt; CONTRIBUTE.<br>
<br>
IANAL, but even an imperfect tool like this one could be of legal help <br>
sometime later, if we are ever in the position that FSF worries about: <br>
when LLM generated code is found to infringe some third party&#39;s copyrig=
ht.<br></blockquote><div><br></div><div class=3D"gmail_default" style=3D"fo=
nt-family:monospace">These simplistic ideas to use string scanning to detec=
t only the most blatant LLM use would likely be seen as &quot;legal theater=
&quot; and afford no real protection against a claimant, especially one wit=
h deep pockets.=C2=A0 It&#39;s better to clearly state in CONTRIBUTE what t=
he rules are, trust our colleagues, and hold people accountable should an i=
ssue arise.=C2=A0 Text scanning is superficial at best.</div></div></div>

--0000000000005ef5bb0657e7db6d--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 12:58:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 08:58:06 2026
Received: from localhost ([127.0.0.1]:41260 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpmoQ-0004O5-CO
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 08:58:06 -0400
Received: from fhigh-b5-smtp.messagingengine.com ([202.12.124.156]:34785)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1wpmoO-0004N5-4N
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 08:58:04 -0400
Received: from phl-compute-04.internal (phl-compute-04.internal [10.202.2.44])
 by mailfhigh.stl.internal (Postfix) with ESMTP id 4F1B97A0116;
 Fri, 31 Jul 2026 08:57:58 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-04.internal (MEProxy); Fri, 31 Jul 2026 08:57:58 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc
 :cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to; s=fm1; t=1785502678;
 x=1785589078; bh=MBf8mdqvTmtGCkTovWzM6U4Rl5tSK2usI2sz/Kl0iWs=; b=
 pjkSKR+beLTf+f11kWPbAWtKKiSyAjKxQemNESxB2NQWN6ahAUYxsz+sEC/kIMiy
 rCDWuHgUK1Iy8FGLHq7qZtnSwy+h6qYBstCiMETECKQr4/QhGFpZP8Gku/VtB6D0
 WiQtIi+8rdKBA+rrfqvtq/rn0banHofIHCk6zkwjN+qgA8Eleezjt1NI03OKXvBT
 jmqVqi89UwSyn0Y0rZe2TjojqolVsv0GTYYI9JMRQ4ZdOX6XeCLOUpfx2NRwE+AK
 ti0GAWcFMAU8ZpZolxNac5dfNxdUVIEw2QGgyfS7udag8QQoMtMNC8BjcnhEGGbu
 YFRkz36Y5+SRVs/hqi9Z8w==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1785502678; x=
 1785589078; bh=MBf8mdqvTmtGCkTovWzM6U4Rl5tSK2usI2sz/Kl0iWs=; b=R
 KjqbH5tsZsqoG5fU/6c8c67+leBX+RKgSv9J96kwKoOmYJmaJhCWF9utlzO37rAn
 9HmzrujcWyIoomTVIZ8+l26K88ZMsL9il8g39CSCL6zS8eg5KcgFlI1tWcDtMR7z
 ilbGovSZf6cA0jItkVriDyEsGP2MZS79gI33YitOtWHeqHQWSXRXKUWXdN1CECDH
 6IZoxUBXtjfEc269SVw3mLNbvIF9DF8F9IWISfHlqhZLpbGjj63fJ/BSjSJAOMVH
 /i5S3vUViszA1nM6RljX4/01Vj75sPfoxsKR4op5w+W+kMo9Na3ve+iolSTt2R24
 BnIvJ8J/FDt6oSAJTVjxw==
X-ME-Sender: <xms:1ZtsaqhjVpJvrF_8hqjt7AM2CkE4HWR_aexkdgsc-_Ao9_WyqYG0Rg>
 <xme:1Ztsah5FXpZCO5T1Xxw9D8otUYnGjSGH19c6PQooEX-VxXiP6K61Ys3ZM4zlrqM7n
 rT-DxbyS9bQTj9tK_RqhlPEhhSV2xYsK9b6isNq0G_Qk7feFZiAkfl6>
X-ME-Received: <xmr:1Ztsaqb09hYiUJmqxm7gUtnfcYKjo6-lYvI4rDDWG86X213qrYru74B53pqX6Ox0RCyb>
X-ME-Proxy-Cause: dmFkZTFo+BnaP1aCvARuFnymEKkw4XOIUVNRmJ4PnFbUIf3raIi3BfuMaqSZNHrjsDyzZO
 AO2/vWR0DqUvJGbHkyMgROLAnEtliG5wwBiM7Xi9z0m2UtkInWCH9XmBSChdTVtOS4xMLW
 nUm8dXThGT9ObBIK+F+xK3iqDK3MrbC9H7qcka4AP1ut8zOeRWi0OOs1gG7vX1i69UHSPJ
 Ts5fq7ElmnVONQ7gqvMpg5gyU0kqtRD2g6B4VUDj9bSnzdKbQlZw6TUpKJYLxmTcvi59z6
 gLWHbpj1ggfOZlCJ0jv5891z1WCd5NncEqJCqFibhobr9nwr0WyNEWFXMCPuTYJd7JvKRw
 RuSSLsgPlnBp3Ggj1Wgc2x9DYIYY+n4aBpXvC1BtfznY5jGyhY+c/+cg970TM5bFhGmrrn
 nKQnvTuURa1gRK30Zc8zzMElEKomDEGJuwc6CUQxYgy5pF/ypEn+ySdE9o3mvT7l8qDOeg
 m0tWO3elMGy04KjPBQ1FhCVM+s2bblDI1GBbelwRLSRveFvrT1xykjyPt5CQTXVSM43frG
 gsEQgiiADWXuheFLTIrjmDO55xm5BKnx9wdK50w2im52PUV+EOZ5LzNY0iBVR/hvrYduSF
 bIYMe+sILutW2U6AkB2D/lvGT/rto7urm5d/X9v6l8wa0LFzYW1UdxBrVMhw
X-ME-Proxy: <xmx:1Ztsau54nKnXZB5yindzyyIS96xYAfGg0PQzbVSLIYYKyvp1XHDhwg>
 <xmx:1ZtsalAOw-C5brNpO2rLz2Y2dL-PozGzisK0pHtMVFRIvJz0W0PRWg>
 <xmx:1ZtsasdRpYfC0joO8blWZH_KQDL5celEPgwMmN_3mEUaDJhAQ3iXzA>
 <xmx:1ZtsasLjiZQUi45QyQ0P5EkpZcLK5q9yhv0SVNNZfstEbx1RxuZe5A>
 <xmx:1ptsapC4E8JKDAsszD3eo-Ub7bL72y18sASPKNhzhSNtRopbrHYB2euC>
Feedback-ID: i07de48aa:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 08:57:56 -0400 (EDT)
Message-ID: <6fae8ff8-0154-4e5f-8f05-08140a5e8f6a@HIDDEN>
Date: Fri, 31 Jul 2026 15:57:54 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
To: =?UTF-8?Q?St=C3=A9phane_Marks?= <shipmints@HIDDEN>,
 Sean Whitton <spwhitton@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN>
 <CAN+1HbpX133tKQ=-naWSFkwmyD8Fn_Goeaup4Nje+GWn=ujTBA@HIDDEN>
Content-Language: en-US
From: Dmitry Gutov <dmitry@HIDDEN>
In-Reply-To: <CAN+1HbpX133tKQ=-naWSFkwmyD8Fn_Goeaup4Nje+GWn=ujTBA@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On 31/07/2026 14:57, Stéphane Marks wrote:
> I don't really have much of a horse in this race but I feel as if we're 
> trying to protect from the few people who have direct Savannah access 
> and those should be among the most trusted people who well understand 
> CONTRIBUTE.

IANAL, but even an imperfect tool like this one could be of legal help 
sometime later, if we are ever in the position that FSF worries about: 
when LLM generated code is found to infringe some third party's copyright.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 12:55:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 08:55:26 2026
Received: from localhost ([127.0.0.1]:41241 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpmlq-0004Gq-7M
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 08:55:26 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:46858)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wpmln-0004ES-7U
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 08:55:23 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wpmlg-0003h5-K6; Fri, 31 Jul 2026 08:55:17 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=qLs3NVlJgKRXb+DNWtbuQdXg4bYSvnlUT96aGWjlxl4=; b=ChK5q95uTbAk
 O6+9FR3It6oI9vQh6hdjbUPfBjvbSGmMDGTM504fmPvxC09REMUmKSSTsBHIDUqoEsH/fkid/7yly
 /U3ajLNyDK10W8Fi/WmKdqeURal0Z+s8bsIA4Fu3PTJdMhL7gc9+ZJtkO5Wz5bQVTN4X+DHYYq7wV
 YJG0fTTP5xvbfxKEMjtzMRRfitBuoWUsfiZHPoHURzQl7BUPNmVKtVWwN7i7kasbSXMe74UtcZfCr
 Hb9xFc5OOz80kUQJVO0GovUx6CMa0Cuz4tQFDOnjDHFXiJsTj4pd9JE6EJmavkWnkeJXFbjL1jNfb
 ghvwx5wCLMe8YUmFmD+XZw==;
Date: Fri, 31 Jul 2026 15:55:14 +0300
Message-Id: <86h5lfwc7h.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Sean Whitton <spwhitton@HIDDEN>
In-Reply-To: <87fr0z730v.fsf@HIDDEN> (message from Sean
 Whitton on Fri, 31 Jul 2026 13:32:48 +0100)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
 <87fr0z730v.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> From: Sean Whitton <spwhitton@HIDDEN>
> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
> Date: Fri, 31 Jul 2026 13:32:48 +0100
> 
> Eli Zaretskii [31/Jul  2:45pm +03] wrote:
> > My point is that when I have several commits, and then pushing them
> > all fails because one of them, going back and redoing the one that
> > caused the fail is a terrible nuisance with Git.  So I want the
> > rejection happen when I commit, so I could fix it right away.
> >
> > I don't mind of push fails for a reason whose fix is simple.  For
> > example, if someone pushed in-between, all I need to do is "git pull"
> > followed by another push, and that's fine by me.  By contrast, fixing
> > a commit in the middle of a large number is much harder, especially
> > when they are not your commits.  Think about merging from a release
> > branch, or "git am" of someone who submitted a series of several
> > commits.
> 
> Just to note that if it's commit message related, then for Git you can
> type 'e' in 'C-x v L' to fix it, these days.

Sorry, I don't trust these advanced features enough not to screw up
the Emacs Git repository, especially with my ancient version of Git.

What does it do? move all the commits after the offending one to a
branch, then back?

(Btw, what this does and when it can/cannot be used is almost
completely undocumented.  Both the doc string and the manual are
silent about that, and both are one-liners.  How is a user supposed to
learn about these capabilities and their limitations?)

> > What are the problems with rejecting individual commits when they are
> > done?
> 
> It makes it difficult to make commits you never intend to push, e.g.
> for local-only checkpointing.

On the public branches?  Why do you do that?  It's inherently
dangerous.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 12:32:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 08:32:59 2026
Received: from localhost ([127.0.0.1]:41045 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpmQ7-0002mP-32
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 08:32:59 -0400
Received: from fhigh-b5-smtp.messagingengine.com ([202.12.124.156]:46957)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <spwhitton@HIDDEN>)
 id 1wpmQ4-0002lz-8K
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 08:32:57 -0400
Received: from phl-compute-09.internal (phl-compute-09.internal [10.202.2.49])
 by mailfhigh.stl.internal (Postfix) with ESMTP id 50B2A7A011F;
 Fri, 31 Jul 2026 08:32:50 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-09.internal (MEProxy); Fri, 31 Jul 2026 08:32:50 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=spwhitton.name;
 h=cc:cc:content-type:content-type:date:date:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:subject:subject:to:to; s=fm1; t=1785501170; x=
 1785587570; bh=QuHzx9cVjcjq8HbMOG5drQjrUwDQ/ze0b5m4UWkAah0=; b=L
 igCprpt4loMt0kA58jtnw2Om18mKypV5wm4p1fW1dXIg3CV/nnC5YudsI7uBaEPC
 QfOX5TWN0duHEn09xlmKMXHt36qe1An4JJxsHQF0fuvNDwK38RO1l4mlwsV9GSx8
 o79RgzaGa7lEq3x7keZ4UJIb8NkZWZ+kc69Jpvijl/f5AUC2Q0EqPByvxUcUBJ1O
 OmOWq98NWRZS9eeWnNkwSQF+l8PW2DCUmuj769Xl6grondgFNbXhDe6k+lJ7SKTv
 E0w8Od55peO7MX1pDS/MXk0YA164fDgcNKhmD7vawsIMxLdT39cTmvYbNVGHs29v
 M6CRgvbh6GNGKkqGq9b0g==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=
 1785501170; x=1785587570; bh=QuHzx9cVjcjq8HbMOG5drQjrUwDQ/ze0b5m
 4UWkAah0=; b=PBuRP49AiZqHw7jntUYPIUbxHpUyFUFDxXwKsRfyRArrKc7Ko+t
 huUtxbj1a4jnG+Djc8LxjWp+FhQFxDPbSsDtNlBcyCNse/vQmuvzY11qObRaJAVR
 Mb/tGoP34ivrajOXCgQmmc1pQcbAv9ZI76LCzjDP5T/D20QZwc4E7pfXRS/pc8lo
 gDdpCy+jC/Y9oAJltWjffbTO5zW7VOh5QTETCRvoaV9Ze2Qr1uRfIuN5wvpMtWDd
 Jg9sutIW5xpuj8+KAkAH4DWYxGIXZxxfuAogezIPdqkZpVzQIpDzHkPe78i+9n9F
 eQYxXLPV1vVNYM4VzVHXUPId52PIBPljw9w==
X-ME-Sender: <xms:8ZVsan9kp9VmMcXFyMXEryFVy_NhIYg350EQDuwUnvXFqsnW5hcrGA>
 <xme:8ZVsarLbddWN91iF1sqdkqo-sy_D6Br6FoFavb85ERb33rGxHp_p1itEKL6y5oF0n
 T9L234RQ0UnKeNHsaXZdGN3LFsKlv1akcCKe3H6bbLNnP6VQMfT5XKq>
X-ME-Received: <xmr:8ZVsaiZ_Jt8bPHHN9J0reXkd-y_zjTNyGDa2u4dyI-8X4U5JL35ZGrk4BLShRkEaOQVREwoDtPVU>
X-ME-Proxy-Cause: dmFkZTEbckx7SBCSEp4QLigRGtjuzrTUWAI/Ik5nk/TLCrOeA8K5D4abBii/doxmmcO05z
 khGrUn6k8B8nR820NZCQNHvYdfRXn4uVviW5YPIKdAKoAeQw98bqPOLjfO3f+QQK403gaI
 GD76occoBRyFvMI1kDoCLkwG/2OrTaSw4HL6BAyEfjxgDf+Anw7xwqyiAz4rxtl0XjzHES
 sKp3Hm2HSeg9wwRRv6/pNwj0ZsBJGxEn34LFnuBmpVgvRf99L8+wKtmKzA0+PgdfTm86hp
 xsRNjDXKD07vlqS16feFV2yxR+PZiO0EuSmdzbbq1LRW8aOxKCg1hm1yKbaldzgp75OkbD
 EPrCnx6F/eMPDWA7bD+69UgwrTr+iRfUDV7sZN4cbS8UAKQMuMzaAHI7UetvwJ14gwXaML
 ObsDqBLlK5XlnbF83RleJ6e44El0UdqBGKyQc05jAHlbBomkRqpcBpzaXkN9vpI0s9nPrU
 nvCHRw8ogI0DWL0vIR1p41O1xDx1xgAku2oEC6f7gwb5HvTs4BbFgf0HplR5aTEmr8qyTQ
 h2aGn17lRo6WoUFyOZAYb1fHPnqRPis9XQJsKOTo6yTjQTOmK7osaL4AoG5v3j7YjMgvpC
 bxiNBY40J6BUycTKtecOy+8Qn4CC7vFVDNUjwCZFS/S+f0KuanlzM3vDVpfw
X-ME-Proxy: <xmx:8ZVsatLKcq13f0EoOpl0eq6cwfxoFD8Qchhq95F7V4k23hO1sUwj7Q>
 <xmx:8ZVsagCDEnyx2MOlu8OvnQgtQkvELNOc8ewGT7f5BzA4-_AqT81uvQ>
 <xmx:8ZVsaipIJUQEOyYvLJxAXe277blcN6FN4sxe7hYswD8LFpDNBjv56g>
 <xmx:8ZVsarh_QOOljDu6ltfbkdfBRaKcM9p_HeB4WnvmF_SRuIEZXSxHnA>
 <xmx:8pVsao1GWNgWe3LgoZD5i4V0UW04S3PQ0FpNrHJiuaXE12K6AtGg68IY>
Feedback-ID: i62564b17:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 08:32:49 -0400 (EDT)
Received: by melete.silentflame.com (Postfix, from userid 1000)
 id 6450D7E8A1B; Fri, 31 Jul 2026 13:32:48 +0100 (BST)
From: Sean Whitton <spwhitton@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
In-Reply-To: <86ik5vwff3.fsf@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN> <86ik5vwff3.fsf@HIDDEN>
Date: Fri, 31 Jul 2026 13:32:48 +0100
Message-ID: <87fr0z730v.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Eli Zaretskii [31/Jul  2:45pm +03] wrote:
> My point is that when I have several commits, and then pushing them
> all fails because one of them, going back and redoing the one that
> caused the fail is a terrible nuisance with Git.  So I want the
> rejection happen when I commit, so I could fix it right away.
>
> I don't mind of push fails for a reason whose fix is simple.  For
> example, if someone pushed in-between, all I need to do is "git pull"
> followed by another push, and that's fine by me.  By contrast, fixing
> a commit in the middle of a large number is much harder, especially
> when they are not your commits.  Think about merging from a release
> branch, or "git am" of someone who submitted a series of several
> commits.

Just to note that if it's commit message related, then for Git you can
type 'e' in 'C-x v L' to fix it, these days.

> What are the problems with rejecting individual commits when they are
> done?

It makes it difficult to make commits you never intend to push, e.g.
for local-only checkpointing.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 11:57:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 07:57:53 2026
Received: from localhost ([127.0.0.1]:40801 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpls9-0000mn-HE
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 07:57:53 -0400
Received: from mail-ua1-x92c.google.com ([2607:f8b0:4864:20::92c]:43468)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1wpls7-0000mE-1f
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 07:57:51 -0400
Received: by mail-ua1-x92c.google.com with SMTP id
 a1e0cc1a2514c-9674d727c0aso1069524241.1
 for <81520 <at> debbugs.gnu.org>; Fri, 31 Jul 2026 04:57:51 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1785499065; cv=none;
 d=google.com; s=arc-20260327;
 b=mQHgb1jjjllDIa03RxnckBmNWKVphyPRPfu1bTFUwU6DNNfFpGFkxglIqjlNubYkoF
 FqZ/UGS8pEUWRODFCCyJtimNwjIAFcqkvfKaIw47JJB/PX4pzXWzegcPm96jzYIscdMo
 THlQU0pR/RLVvZOoYl7qADUBUk+Hyzl19KhZ9t/901W6zZsTFJJyCkceTsB/S4O5Aqhg
 E0iL4nJoS8GAXClq3bL7elwexIo7Dj2LEEDN0QRzOdHB5tKwA6ooxHogk4ouMB3BgQ+P
 T8BatjQL9qtNnZ6NpriYSN0lkj3mYQyQ9OGpGuHjpv/9TAyNaFT/TNL8UnTxI/breWAx
 xfgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
 s=arc-20260327; 
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:dkim-signature;
 bh=ieHi3m/R3wtmut/rizqQO30w5vHFhLsQx/bt/LVz8+o=;
 fh=+eN5m7WrMVQr+EQ6aCNvwXQsiHFUEXa8IVZEhcOq+7s=;
 b=Ft4x0SyEXAz3jWeX/nvH1XizBtQzRxL1nnN1SPdYrOkLsMBYYAa2tEXupl0ML5F/s0
 OIdvnzTBToWZAuEEhmctKPmlIHvdFvY3xVBkl+aMQCIN39s9rH8DhBRRMaMWxQNcH5OB
 Qe8loBHh0WuVj9gTvg471QzN7/KXb+YaeSMiSz+RiT2pYSTwT4zqsVjyWqkT9Jxc9QEB
 5Hu5xgihB31+T2B9FmQK+Ng+LhHAAcwhBjt23X/ToNPR46iCd8V5BwozcKf2PGYrhJQl
 GV5zpA4/wziJvl+DJmDGpNdRH4OY6jUXwMgPU5+0zKOasih09XFV693Q8VLoF1Eg7533
 88xA==; darn=debbugs.gnu.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785499065; x=1786103865; darn=debbugs.gnu.org;
 h=content-type:cc:to:subject:message-id:date:from:in-reply-to
 :references:mime-version:from:to:cc:subject:date:message-id:reply-to
 :content-type; bh=ieHi3m/R3wtmut/rizqQO30w5vHFhLsQx/bt/LVz8+o=;
 b=M5q+6eY6a50lF+IfdpgAAO2smoA55Ya4NsvCtDA09cKivfbEhW4T2G2x+w/hmUI5wV
 q3je7J2y8W2NsZWKKIn2vZUDLdoDW18YVMhd0jRB/SL3TPJ7ePJynQdNcMOHx6zOb0r1
 5/5pcH/X+J30FtnVk6es34NhrbLkjK2h4NKcuttNXFDRmJM/L2y5g1rjNNVywsAVyCyy
 WuUuYq9diAc1c1/HtwO6BBpiPZuS9qNt3bvftuDNYfuXU07d02WHrL7wWPx35UdzWLgY
 6o2BUTCq7YBwzD2xYjUYyNb092MrrfmTNmQR5iSLdTiC9Nrc3gsNe5GfRStaj3pbfT35
 owfg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785499065; x=1786103865;
 h=content-type:cc:to:subject:message-id:date:from:in-reply-to
 :references:mime-version:x-gm-gg:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to:content-type;
 bh=ieHi3m/R3wtmut/rizqQO30w5vHFhLsQx/bt/LVz8+o=;
 b=W/oE9mrYqdkMXrc73eMrEBq2sgnoZSOht07iD26oAHPwT0dFoJZHdxJcJuRIu0W+UH
 imf+vpQIIvCth83sbhOZsjaakmeZNp6uwEcbIscPyryoJF5AJxCwbw9P22L1kHP1RJsK
 YEP7EBnStiEwYVyOv+qiLjUWDALfpEP+2TnnkxHCNlETPTv6aCP+Ak4glgyUbElQDgn1
 IaUY3T63LLK/MZS3tZ1AZAWQlVQ37cOsBHtTg/kBnsIBf4zSGxC7jtvnxaNTBcwbyzBf
 7QSMJlI0YwJU4ICIa219pQNN4sO5mh7I0uxVe7F14uzJ3vAe5xZJQdptoEvKdYCa9pAu
 ux1g==
X-Forwarded-Encrypted: i=1;
 AHgh+RozSg/+xpTIPcbqz+YaL67UkAYiM3MgYtviao8esBxZV9GVKg04n7DsiHu+TTuuzROkHzyNPg==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yyt/PMh/WMolLn1wNNIF5qRAY0NOqxp7Mz2TojDBBnroGXXcuo1
 MnGAFJTw4jiB8IlCblgqJWZ67ZcEBbsF2Mk94eDK8og07kqmJEBqH1OLX0qppU/TWjGpw9OtPtx
 /dPZA0MJvOIQAOQvXe3mAwc0rnLcaxi4=
X-Gm-Gg: AR+sD10SooDZEl/Z3aK+AvjWWyJMEOUP7uTXHJOseed2ugKELjyrriz56s7ppuoPC5E
 HyoMSPM2yuNdPJZ+JYucVjeHxlRFxi+zw2q5rFlhUKXv2UiVNiym3I5NFgcTX42Zn68vqeR/1zd
 f3In0cJkMBxwEoS2jxajAJeEm3BJLUFRH3amneEho9FSKhe7KATFYFMyEWW/I5Y3lwDc6YfQ2oD
 pTBsNNXwWkgMZUINuH9etfa5WDeIw/t52KzSDiiy8FtDdQAUazfbDF5++kDeBJB8VuZE+myOuGb
 3Oenj+HRGRjiVENoAqDbFyU7FNV4wgGVeqtTBj1tI0F+3Dbe34NhT9CjY6ikQZZtmmRU5YvS3Lo
 QcPkpIeUsfLX4wCcZrPagJmOlLTBaTlbI7vOVrzklgrge2XghjnD0NY64Qjsp1kOExkfUqG1kY0
 CkK5mRiax+ovVsiP/W05uECc2M4GQMG7X5LPGuMypUiM7BoQr9Co6ePzPSQ4XWTJABGs8=
X-Received: by 2002:a05:6102:162b:b0:738:89ca:65a0 with SMTP id
 ada2fe7eead31-75902618b1fmr420997137.9.1785499065003; Fri, 31 Jul 2026
 04:57:45 -0700 (PDT)
MIME-Version: 1.0
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN>
 <86qzkjwqhp.fsf@HIDDEN> <87tspf8ofw.fsf@HIDDEN>
 <86o6fnwhy1.fsf@HIDDEN> <87ik5v75yt.fsf@HIDDEN>
In-Reply-To: <87ik5v75yt.fsf@HIDDEN>
From: =?UTF-8?Q?St=C3=A9phane_Marks?= <shipmints@HIDDEN>
Date: Fri, 31 Jul 2026 13:57:32 +0200
X-Gm-Features: AUfX_mzJZ75PLSxUKBeRrFdoc-sbEScZhCZ-5rEJl9qzrwuVGcySohsNH7onB3g
Message-ID: <CAN+1HbpX133tKQ=-naWSFkwmyD8Fn_Goeaup4Nje+GWn=ujTBA@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
To: Sean Whitton <spwhitton@HIDDEN>
Content-Type: multipart/alternative; boundary="00000000000084338c0657e6e505"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--00000000000084338c0657e6e505
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Jul 31, 2026 at 7:30=E2=80=AFAM Sean Whitton <spwhitton@HIDDEN=
ame>
wrote:

> > Sorry, I don't understand the scenario.  If the attribute is removed,
> > how could the hook that searches attributions work in the first place?
>
> The assumption is that the LLM is committing and the user is manually
> pushing, which is, I think, a common arrangement.
>
> The LLM will only decide to remove the attribution if it runs into a
> hook failure.  But it won't ever run into that if it's a pre-push hook.
> Instead the user will, and they'll learn of the problem at that point.
>

So that commit would still be in history, just as a lie?  Many harnesses
omit LLM attribution anyway these days and those won't get caught.

I don't really have much of a horse in this race but I feel as if we're
trying to protect from the few people who have direct Savannah access and
those should be among the most trusted people who well understand
CONTRIBUTE.  For the rest of the patches that appear on the mailing list,
if one smells like an LLM, it will appear so and not be pushed by a
Savannahnian, right?  This is a lot of fuss for a very low risk among a
trusted group, of which a single one made a mistake.

--00000000000084338c0657e6e505
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"fon=
t-family:monospace"><span style=3D"font-family:Arial,Helvetica,sans-serif;b=
ackground-color:transparent">On Fri, Jul 31, 2026 at 7:30=E2=80=AFAM Sean W=
hitton &lt;<a href=3D"mailto:spwhitton@HIDDEN">spwhitton@spwhitton.=
name</a>&gt; wrote:</span></div></div><div class=3D"gmail_quote gmail_quote=
_container"><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0=
.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
&gt; Sorry, I don&#39;t understand the scenario.=C2=A0 If the attribute is =
removed,<br>
&gt; how could the hook that searches attributions work in the first place?=
<br>
<br>
The assumption is that the LLM is committing and the user is manually<br>
pushing, which is, I think, a common arrangement.<br>
<br>
The LLM will only decide to remove the attribution if it runs into a<br>
hook failure.=C2=A0 But it won&#39;t ever run into that if it&#39;s a pre-p=
ush hook.<br>
Instead the user will, and they&#39;ll learn of the problem at that point.<=
br></blockquote><div><br></div><div class=3D"gmail_default" style=3D"font-f=
amily:monospace">So that commit would still be in history, just as a lie?=
=C2=A0 Many harnesses omit LLM attribution anyway these days and those won&=
#39;t get caught.</div><div class=3D"gmail_default" style=3D"font-family:mo=
nospace"><br></div><div class=3D"gmail_default" style=3D"font-family:monosp=
ace">I don&#39;t really have much of a horse in this race but I feel as if =
we&#39;re trying to protect from the few people who have direct Savannah ac=
cess and those should be among the most trusted people who well understand =
CONTRIBUTE.=C2=A0 For the rest of the patches that appear on the mailing li=
st, if one smells like an LLM, it will appear so and not be pushed by a Sav=
annahnian, right?=C2=A0 This is a lot of fuss for a very low risk among a t=
rusted group, of which a single one made a mistake.</div></div></div>

--00000000000084338c0657e6e505--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 11:46:03 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 07:46:03 2026
Received: from localhost ([127.0.0.1]:40669 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wplgh-0008R0-0K
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 07:46:03 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:57034)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wplge-0008QK-C8
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 07:46:01 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wplgY-0008L1-Ul; Fri, 31 Jul 2026 07:45:54 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=jlwHasfHBUC/+H6+6VOJgLJIdm9vDz66boqHx2ZpoJU=; b=AhdlwjfK5o2n
 RYTxssfedxglJbM28owjjNLCDvxcB1tGTIfPM62PLgZy4uju36lL96+9otXGhO1ljQZsCIT7xsV2u
 +kDqdH0Cgxhdgrv5HAal1tGX97FCSr1IDDMJTN5CYEztPWlQ9/V6/zNA2jQWaNkJ/zzaIGkTtDt34
 EWPvhMDyJcinhH2yhAuG1T/lNSPMF10/zXV/sYpS+dSWXVY5VsvtIafbGh+UhbDN4OH0AXW60tRHa
 0XfC1KibXJY9u2I5ai5yqP1j7GZwlb9uTq//gsu9Byxb6/06ZgblQDMvoIHt6sEc37ywmxeVfeUdt
 rF2YJFltUPX4IJhdG4VErQ==;
Date: Fri, 31 Jul 2026 14:45:52 +0300
Message-Id: <86ik5vwff3.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Sean Whitton <spwhitton@HIDDEN>
In-Reply-To: <87ik5v75yt.fsf@HIDDEN> (message from Sean
 Whitton on Fri, 31 Jul 2026 12:29:14 +0100)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
 <87ik5v75yt.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> From: Sean Whitton <spwhitton@HIDDEN>
> Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
> Date: Fri, 31 Jul 2026 12:29:14 +0100
> 
> Eli Zaretskii [31/Jul  1:51pm +03] wrote:
> > In any case, my point is that delaying the rejection until push time
> > is much worse than rejecting commits, for the reasons I tried to
> > explain.  If we must have a pre-push hook (which I'm not yet convinced
> > we do), then at least let's have both pre-commit and pre-push hooks.
> 
> I definitely see where you are coming from and understand why you want
> pushes to always succeed.
> 
> I have the opposite view, that I would prefer all our checks are on
> pre-push hooks, and that commits should always succeed.  At some point I
> would like to make it so that a user can choose which one they go on,
> but that's off-topic right now.

My point is that when I have several commits, and then pushing them
all fails because one of them, going back and redoing the one that
caused the fail is a terrible nuisance with Git.  So I want the
rejection happen when I commit, so I could fix it right away.

I don't mind of push fails for a reason whose fix is simple.  For
example, if someone pushed in-between, all I need to do is "git pull"
followed by another push, and that's fine by me.  By contrast, fixing
a commit in the middle of a large number is much harder, especially
when they are not your commits.  Think about merging from a release
branch, or "git am" of someone who submitted a series of several
commits.

What are the problems with rejecting individual commits when they are
done?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 11:29:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 07:29:23 2026
Received: from localhost ([127.0.0.1]:40527 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wplQZ-0004bF-C2
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 07:29:23 -0400
Received: from fhigh-a1-smtp.messagingengine.com ([103.168.172.152]:47015)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <spwhitton@HIDDEN>)
 id 1wplQX-0004az-Ia
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 07:29:21 -0400
Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46])
 by mailfhigh.phl.internal (Postfix) with ESMTP id DCBD7140014D;
 Fri, 31 Jul 2026 07:29:15 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-06.internal (MEProxy); Fri, 31 Jul 2026 07:29:15 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=spwhitton.name;
 h=cc:cc:content-type:content-type:date:date:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:subject:subject:to:to; s=fm1; t=1785497355; x=
 1785583755; bh=SfsDjfoAPEx4ixE1CQ7svDEGaX0jn1MPf8qz737TMGQ=; b=F
 Ff44VTxEHToPASygl9SVRK9DB8Q3mcQjnQipd8i2nYnvd4ato3eclD8AgMtYfIUO
 M699LWRX3ELxVDGNQTEg2PNhtbCZeRcRy3ZQZZSplB9x6gYLK98l5NPDrjqzH98U
 Wcsu+GhdoKrtduuSMdhWAtWvOtAGAbCJuJ2Oe5eB8GfoxY/V/9O0IfcolHOkeEE6
 7ov3ugLoo1cmwPZeCxvM4GYc1e5vaE0MhnBTzi+B1xGGTJNEHVD4btDemgja1NC8
 5YBUDXSRwoXllN5OKdm+AZjvgqj1+c/ogv/2oCD7fuBGXNI54N3j6X20wSlbWq8B
 ZB8CVJBYmxBUoWrBQB/TQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=
 1785497355; x=1785583755; bh=SfsDjfoAPEx4ixE1CQ7svDEGaX0jn1MPf8q
 z737TMGQ=; b=LQQztM0Q/rZW7XS+Qw7OARrmpXGIIBvOEPxg4B49I4ie9LY+6JI
 Ly454+kvauzkSRF5yiuXiAOCuAsz318+aprPCl8MBQLS/VQJ3lfZk5omagNXZGCg
 0tnF2Vx+/c/CvCXbJUQEwSuvPdCIsgqcKeQ0NHvlwksJvZVfyOx8/FsdF0Waqg5D
 wnxkegJsDwGMGqvG2sFPoDerx1nMiNu1kPxE5se+RmaUd3DCvPgG+zmvsmn4fsIy
 ECAG8hiidjbyszzfps8xhqfJEi9wkrJyjNj7miuI776MoRBs97Y3CO39wTHMw18f
 txNOQET3jG6RZDMzR4s0sWFIvGqxYPqVVgA==
X-ME-Sender: <xms:C4dsancM9le5V07BL3zqM4JUbWo3nhSZmuyHOQLyI3AI0XY1nbu69Q>
 <xme:C4dsakowfOQr9NimuRklGjPmnG6ySXmF3tKgdgM6PboB6pgODvaAUhpo5pbqE-VMp
 cyuWSEwBlgbHk21F6DrmizvVMHflo2Sc7gc-ioHeX7yPk7MLrfeqXc>
X-ME-Received: <xmr:C4dsat4T-cBxmuCAOBwHVIYfSLGngoDTY6mCTE0oVIT-ycYDqRtZ_12iFyyD5OlVt_uwga8W3LKa>
X-ME-Proxy-Cause: dmFkZTFyHwWWKovfHWPEBaBSr+b2689bbyEfrBkQqxRdmw5woPscm61YutlQPkEwn9Kqpc
 jpDwzxkkzr+xiM6B9LdkeRuh/87gqH4awnU3VRFtps8ABS+VLrsCRxlTKojlvPbiaTiArm
 I77DthZjdDoIB4d8aSrxM03nbqmlQsm3nB2VdEtFBknplPJZgLwGDAB/HiEBVP11/O1+Ro
 m/+NhJUKaR73zc7fb4aD1sY/bWR4/VjVqumUXSmD8nC58/2+jPChLvkZuhhl7YTD8U7Dx+
 R+Qi8O9Y6XftuDwM46lFogq2Ohdqepz9QXSIXwUNKrx1+WrdcG4aGs9832gAVECO7Pf+cP
 efpBd3RnlhLVaIEDnmHE/Xu7Mju4TYhxvQdzFVIvly/zZs7iJ0bN1+obU+bf7OfcuDWJJ7
 i/LxN2UpNmtZyVDLjL0KYeq/YLrMsk/5CGqzb+9jwpVOvLJ3SfOHPkbgut4nimlWKe6mkl
 5GczAicLCwffGLPBv/jcOwczND6y5I1PCglJsmNo7QuZhIN1shLgMtXiR47tRkorZRotA7
 cyIC5zdoA2ufl/B2oBXvrMd69w96e0I9urAYlW50gI0Qo9QWZSaaGAIZVo84YRwJUpWpjC
 u96sRL4ZdujqiBaOrQE4b8iSWwZ4cJApmyXsJo8kmDFOZD04mFLcIHJlPCKA
X-ME-Proxy: <xmx:C4dsaiptWa8nfCPSyYDTzUASX8FESqTBQwOtw2N7XRkgu7lw-_vGag>
 <xmx:C4dsaniyQHqWkdML3taIgigmcKKXhMTKam2JYNXDWnPxAzdbinI4ZQ>
 <xmx:C4dsakJOFc8-_kvkvpKCqOopXjaTxiOU2yWWRpY0K6jpCjQn2lZehA>
 <xmx:C4dsavCnDB_9Qj1agrC0tCY551Hlyo6Kzw5a7dO6pofyYxILNUAXKA>
 <xmx:C4dsaiXuINGAAUgEnlwvJvCwLWHwYN1Pcowa9zVAhf9opTO897tFL3WQ>
Feedback-ID: i62564b17:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 07:29:15 -0400 (EDT)
Received: by melete.silentflame.com (Postfix, from userid 1000)
 id 4DC657E8A19; Fri, 31 Jul 2026 12:29:14 +0100 (BST)
From: Sean Whitton <spwhitton@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
In-Reply-To: <86o6fnwhy1.fsf@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN> <86o6fnwhy1.fsf@HIDDEN>
Date: Fri, 31 Jul 2026 12:29:14 +0100
Message-ID: <87ik5v75yt.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Eli Zaretskii [31/Jul  1:51pm +03] wrote:
> One alternative would be to search the entire log message and
> author/committer addresses for regular expressions matching
> "Anthropic", "ChatGPT", "OpenAI" etc.  Regexps make it easier to adapt
> to changes and unanticipated issues, and can be general enough to be
> relatively insensitive to minor changes in email addresses.

Okay, cool, that sounds good to me.

> Btw, we must spell out these restrictions in CONTRIBUTE.

Probably a good idea, yes.

> Sorry, I don't understand the scenario.  If the attribute is removed,
> how could the hook that searches attributions work in the first place?

The assumption is that the LLM is committing and the user is manually
pushing, which is, I think, a common arrangement.

The LLM will only decide to remove the attribution if it runs into a
hook failure.  But it won't ever run into that if it's a pre-push hook.
Instead the user will, and they'll learn of the problem at that point.

> In any case, my point is that delaying the rejection until push time
> is much worse than rejecting commits, for the reasons I tried to
> explain.  If we must have a pre-push hook (which I'm not yet convinced
> we do), then at least let's have both pre-commit and pre-push hooks.

I definitely see where you are coming from and understand why you want
pushes to always succeed.

I have the opposite view, that I would prefer all our checks are on
pre-push hooks, and that commits should always succeed.  At some point I
would like to make it so that a user can choose which one they go on,
but that's off-topic right now.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 10:51:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 06:51:28 2026
Received: from localhost ([127.0.0.1]:40206 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpkpr-0002J5-KW
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 06:51:28 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:45688)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wpkpp-0002Is-VE
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 06:51:26 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wpkpk-0005tR-IA; Fri, 31 Jul 2026 06:51:20 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=w5JNOGYvqjzNO1CxDY/NJ3XNKEiSM5pRnJwV0jv0CqA=; b=JAlApAcRHb3d
 n+mC+jDz9v6LreLzHPga47/2qx1oHeeV8ky8tytT+OnCMxAtjK3wxWrVWTMBOZ7Tc4hK0gdbUtDlV
 2GjNqvo3h80+bpZAb62CaSd4ctm2imJPW27rq+eTo9w6QAlKnG6t+dmWyM57oYblbpYp1lKyTRCtr
 0oZZDZMQMQevwUcpYzYyMasr4tQDIVJ3jySiVoTj/bJCZJuRUv1+Z1q02DoC0uC3RujVTovTbckrf
 0ahJ++2fOcB3WSb/7NhXF5FA+J1Y3DYZ9xZbcDwhnxMuT/5mHLMYV13jSsOifZL+kAt8V1HneY9Z/
 ljj8WiHTbmcaWYaKRqhtgA==;
Date: Fri, 31 Jul 2026 13:51:18 +0300
Message-Id: <86o6fnwhy1.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Sean Whitton <spwhitton@HIDDEN>
In-Reply-To: <87tspf8ofw.fsf@HIDDEN> (message from Sean
 Whitton on Fri, 31 Jul 2026 11:04:51 +0100)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
 <87tspf8ofw.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> From: Sean Whitton <spwhitton@HIDDEN>
> Cc: 81520 <at> debbugs.gnu.org
> Date: Fri, 31 Jul 2026 11:04:51 +0100
> 
> > Pre-push hooks are an annoyance, because usually a push is supposed to
> > be a step that almost always succeeds.  Going back to commits and
> > redoing them is a terrible nuisance.  Moreover, in many cases I push
> > more than one commit, in which case rejection of one that is not the
> > last one is an even larger nuisance.
> >
> >> 2. LLM agents tend to try all possibilities - even bad ones[1] - to
> >> resolve failed commands. If we checked this in the commit-msg hook, an
> >> LLM that vibecoded a patch might well see the error from the hook and
> >> "fix" the problem by simply deleting the attribution, even without the
> >> user being aware.
> >
> > You seem to think about an LLM agent pushing commits?  How is that
> > possible if the agent doesn't have write access?
> 
> I understand your point about not wanting to encode an ever-growing list
> of e-mail addresses, Eli, so let's think about alternatives.

One alternative would be to search the entire log message and
author/committer addresses for regular expressions matching
"Anthropic", "ChatGPT", "OpenAI" etc.  Regexps make it easier to adapt
to changes and unanticipated issues, and can be general enough to be
relatively insensitive to minor changes in email addresses.

Btw, we must spell out these restrictions in CONTRIBUTE.

> I think that Jim has a good point about commit-msg vs. pre-push:
> I would be concerned about the LLM just removing the attribution in
> order to avoid the effects of the hook.  Recent models are particularly
> notable for their persistence.  It's somewhat reminiscent of the
> make-more-paperclips-by-any-means thought experiments.

Sorry, I don't understand the scenario.  If the attribute is removed,
how could the hook that searches attributions work in the first place?

In any case, my point is that delaying the rejection until push time
is much worse than rejecting commits, for the reasons I tried to
explain.  If we must have a pre-push hook (which I'm not yet convinced
we do), then at least let's have both pre-commit and pre-push hooks.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 10:05:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 06:05:01 2026
Received: from localhost ([127.0.0.1]:39771 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpk6v-00053g-6k
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 06:05:01 -0400
Received: from fhigh-a8-smtp.messagingengine.com ([103.168.172.159]:42391)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <spwhitton@HIDDEN>)
 id 1wpk6r-00053P-TB
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 06:04:59 -0400
Received: from phl-compute-03.internal (phl-compute-03.internal [10.202.2.43])
 by mailfhigh.phl.internal (Postfix) with ESMTP id 91AD01400152;
 Fri, 31 Jul 2026 06:04:52 -0400 (EDT)
Received: from phl-frontend-04 ([10.202.2.163])
 by phl-compute-03.internal (MEProxy); Fri, 31 Jul 2026 06:04:52 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=spwhitton.name;
 h=cc:cc:content-type:content-type:date:date:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:subject:subject:to:to; s=fm1; t=1785492292; x=
 1785578692; bh=4xj0IdtneKJMxkwAiJY/1CondE1ubL/gAFmMEBBVRdo=; b=w
 uwcMwpcPNWW5LiAr1FxfnBupjFbcsStrthhgWPJt+VX/WSRKm9+Ggqk3gF67az95
 f+tWZvG1xfGjXXG3y2+rSq7iMT5GKbaW8ZoBMhqZaLjzFVrZ116HKY5Da6jZRG9B
 BU4kFBcd/HEX1DT7p0+hDT2F3zaiuLRcAoksS6nKSjVM4w9DGXVxBOZzJoDGlyte
 kk3Tuf7vNxl7vHM/W0e2h5dK4EsGaYxLfvnIesor4AMWtDNVhnrTl8RqhfAluvSm
 P2iEE5iMmAWrKrpsocyRAbY6TYNXkXMmwscID/UIZKNz0cLlo0q4FSaYP9XTBS/9
 rtDWUqZR0/fXEqSvHKbZg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=
 1785492292; x=1785578692; bh=4xj0IdtneKJMxkwAiJY/1CondE1ubL/gAFm
 MEBBVRdo=; b=OJPBLgq8tgRwIDk0x1LiuqETWV/rbxlEXcpu5aL74zii2R+LOFQ
 CiGOiaa8+4eP0YkMVGi0aSjRlsUp/2yB5kMYSHq1LN0Op0nycsyyGSIu4p/OAoKb
 GGyOIeUZvD2TRAQ/Et76aatpYr3xGcNTXKZoEjFR+iy2MJJA9jZcYgovtj44NxCx
 TOwoyq8hHtiqNGiByXGeTfkHyVhlN7p6l8MByTHTkNqCQucjVxRCmfqiUc1Q7QOr
 0oDt5WNp3jYULZcx6kQKGUSodo3TIOxyJHCw3sB/ivTZ0TgQgeUpE4SfHwS9kC9x
 j+n3/BuKstYKOQNpiPbYkDRBHdmk5sl8PXA==
X-ME-Sender: <xms:RHNsap1Qd3Dk9KlOlW3kRAhq8NtjB81VBQgrT1RwIjbb3fxS58p_CQ>
 <xme:RHNsanhYyD2gSxE_bL1A2V-6ZdKepFkPHzLLHEpxY-ymxg6QJebC1P6cxtfRGC1RZ
 3HglofEAppQu35YI6yiFPQY_485WsgjMwNHVXZi-ZTY_9Ke3ky2CGs>
X-ME-Received: <xmr:RHNsanSD5yDDLx57zdzV_vtsmRLVaE_l-912nl_f8N6kPwYlneCaN31M9vhS1GXuO9clwUdFUyLk>
X-ME-Proxy-Cause: dmFkZTGBvJ3uv7KBzg8ux1xdBe72CpkkyyBYurXNyWrYjcvlYMlK6gyajINpkzyInIMOZI
 nHmKbekr+zPWpBRmkbQGz0vQGztKOtOkG8Smcu/KJoyhoHxewfDMUY0wWrFT8eLGTutrvJ
 LgaRICC5Sf7CNRCTOVzzhRuGr86ZnP9qqV5LdRXHERwDGf6MPfSYKfN5Yfc10b8y5b7NpX
 siU8x1NWwefVhirIJqENclPxbGUEEHKq7M4dINtf1XAlwKehIFT1vdNQ64lKmf95y8ATTD
 WUz9w99yZ2HF9FoSivgf9BAitwoD9tmfsBmtgVlO7ouTRtCkMouh8AFBOmOHZZ5Owjtimz
 Jm33szC75HlO8cL+EXq9/IgA+L7yg7HRACbDcnOM0yBHvuPSHB3WF8N6md0+TC++Td5UQC
 dvyTaF/ZLaR0gOmW/chef+U37EexOFJ+Qpj0wsshJLfGarSLfHm+ElPFRKtkRuUlhml3oR
 7uazmPcnAAAF23x/uTdQmoFxd4iMNd9P8b5H9xhrQ0fcOg1l+FhIJAr9ZiUeYx8oQPFpqf
 GyuZf2Gbkp3EljQZIlH195pCYXvhDo+SIcb4Ssvi83bj1Ht4VNdX5iC0EiN+lqpQ6nN6Fz
 YQL1oLZbLndNRZ+i690IS7XoPFqKlyPllbwcSuAvqXwnF5pLIoZ5AsYjLW0A
X-ME-Proxy: <xmx:RHNsagi0Z7IToZ4KCQD9rHwSBAiXkcifXwycVbcUahs-25GAQfPvcA>
 <xmx:RHNsav5SqHOCsBbB8ZZEThdfgLG0jhWCrYT1Ix7TfOXCqCaw_WWhlQ>
 <xmx:RHNsalAL9Ul7nwJo-gPX8D7JH2EAi0C3rJ3KgQLqzYwBu3PAiS-Sow>
 <xmx:RHNsaua6EuGy2sGuflgi1T5bBMPmdtXRkPB8zTMFwROm5wNqqs12sg>
 <xmx:RHNsahNMadI8D8Mdsb6F_NyOjTLjJBF8_HdY3wh2RGWb8I5owd0_tsfE>
Feedback-ID: i62564b17:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 31 Jul 2026 06:04:52 -0400 (EDT)
Received: by melete.silentflame.com (Postfix, from userid 1000)
 id 3428B7E6076; Fri, 31 Jul 2026 11:04:51 +0100 (BST)
From: Sean Whitton <spwhitton@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>, Jim Porter <jporterbugs@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
In-Reply-To: <86qzkjwqhp.fsf@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN> <86qzkjwqhp.fsf@HIDDEN>
Date: Fri, 31 Jul 2026 11:04:51 +0100
Message-ID: <87tspf8ofw.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Eli Zaretskii [31/Jul 10:46am +03] wrote:
>> Date: Thu, 30 Jul 2026 17:06:57 -0700
>> Cc: 81520 <at> debbugs.gnu.org
>> From: Jim Porter <jporterbugs@HIDDEN>
>>
>> On 7/30/2026 10:36 AM, Sean Whitton wrote:
>> > We explicitly permit it in CONTRIBUTE.
>> >
>> > So yeah, let's match on e-mail addresses.
>>
>> Ok, here's a patch series to do this locally.
>
> You rush to post a patch too quickly, sorry.  When Sean and myself
> disagree, it is better to leave time to both of us to respond.
>
> In this case, I'm against this method, so let's please find better
> alternatives.
>
>> After thinking over my options here, a pre-push hook seemed better than
>> commit-msg for two reasons:
>
> Pre-push hooks are an annoyance, because usually a push is supposed to
> be a step that almost always succeeds.  Going back to commits and
> redoing them is a terrible nuisance.  Moreover, in many cases I push
> more than one commit, in which case rejection of one that is not the
> last one is an even larger nuisance.
>
>> 2. LLM agents tend to try all possibilities - even bad ones[1] - to
>> resolve failed commands. If we checked this in the commit-msg hook, an
>> LLM that vibecoded a patch might well see the error from the hook and
>> "fix" the problem by simply deleting the attribution, even without the
>> user being aware.
>
> You seem to think about an LLM agent pushing commits?  How is that
> possible if the agent doesn't have write access?

I understand your point about not wanting to encode an ever-growing list
of e-mail addresses, Eli, so let's think about alternatives.

I think that Jim has a good point about commit-msg vs. pre-push:
I would be concerned about the LLM just removing the attribution in
order to avoid the effects of the hook.  Recent models are particularly
notable for their persistence.  It's somewhat reminiscent of the
make-more-paperclips-by-any-means thought experiments.

If we can make the pre-push hook not have annoying false positives, then
we will still be in your preferred pushes-almost-always-succeed case, so
maybe that would be okay.

But this is all moot because right now, unfortunately, we don't have a
proposal for detecting these commits.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 07:46:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 03:46:52 2026
Received: from localhost ([127.0.0.1]:38871 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wphxE-00037S-00
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 03:46:52 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:42328)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wphxC-00037A-9P
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 03:46:50 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wphx6-0002wl-Sj; Fri, 31 Jul 2026 03:46:44 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=9IDGABHGN7yD0YlYfQOI9sAwlSUv77n6pcne7Nw65HE=; b=WRphXTvHCfSv
 FgU+vdOGknE/K1XqkLlrOOxhMyjD6z2QK2kAyf16j7x12OeR1JQYqU9/eWvOkZOk6HAMR0dTEzgFD
 1UPmLs7yJE84c4YyI+OctNSOx+vqVTZZhcDhCWmwiGVf9SEdvSqYYY4dwMyqVjNVdMbv3neptytEY
 5/GxUwApX8THd9fKhmjWUY2rCLYdQPwaWciuvikwJ2BDlfpGQxu32uXCOfN4+H3MuXRATSzhJNnSG
 aYHP7TSCWqNcVvPLVFaBpag/lhdEi2S+StuZqT/u3Tlr6/vn6HbTf+CeDyvBnpY5/DA75mkrrNrCE
 1ZmiLvDgp/g9Kn+Vpnz7jg==;
Date: Fri, 31 Jul 2026 10:46:42 +0300
Message-Id: <86qzkjwqhp.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <48882f48-3619-136a-c979-81da09350917@HIDDEN> (message from
 Jim Porter on Thu, 30 Jul 2026 17:06:57 -0700)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
 <48882f48-3619-136a-c979-81da09350917@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> Date: Thu, 30 Jul 2026 17:06:57 -0700
> Cc: 81520 <at> debbugs.gnu.org
> From: Jim Porter <jporterbugs@HIDDEN>
> 
> On 7/30/2026 10:36 AM, Sean Whitton wrote:
> > We explicitly permit it in CONTRIBUTE.
> > 
> > So yeah, let's match on e-mail addresses.
> 
> Ok, here's a patch series to do this locally.

You rush to post a patch too quickly, sorry.  When Sean and myself
disagree, it is better to leave time to both of us to respond.

In this case, I'm against this method, so let's please find better
alternatives.

> After thinking over my options here, a pre-push hook seemed better than 
> commit-msg for two reasons:

Pre-push hooks are an annoyance, because usually a push is supposed to
be a step that almost always succeeds.  Going back to commits and
redoing them is a terrible nuisance.  Moreover, in many cases I push
more than one commit, in which case rejection of one that is not the
last one is an even larger nuisance.

> 2. LLM agents tend to try all possibilities - even bad ones[1] - to 
> resolve failed commands. If we checked this in the commit-msg hook, an 
> LLM that vibecoded a patch might well see the error from the hook and 
> "fix" the problem by simply deleting the attribution, even without the 
> user being aware.

You seem to think about an LLM agent pushing commits?  How is that
possible if the agent doesn't have write access?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 07:26:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 31 03:26:41 2026
Received: from localhost ([127.0.0.1]:38700 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wphdg-0001x6-S9
	for submit <at> debbugs.gnu.org; Fri, 31 Jul 2026 03:26:41 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:39798)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wphde-0001wu-O2
 for 81520 <at> debbugs.gnu.org; Fri, 31 Jul 2026 03:26:39 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wphdZ-00083H-8p; Fri, 31 Jul 2026 03:26:33 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=SbWK+S2vZ5sE19iINQcvJkRXBPMd/2hr3npMPbuHL4I=; b=KyWKfXe54sCl
 j52aZqVfm1jWS74AxPGtDbS2aetAKX2G1cOyKUhsoFV3FeX9r1EMVapIC41Dop62wTipm2AiTuD0C
 x0WjRwfpN5pZ3+Gmcx/Z+4xyxxEjTXY/KSZ56eX5HsBmHXYVDbMPKdX9DhekUvJYuYZmMOuLbklo+
 H4O4yFAKGn8lTk0tclgoB2t4JAZWUVe8R/I26E6bWJ3UojroKAiUV9c4mI5iCtL/IANFvWsCVTGc4
 YGcOOxzzJmJC4xq4dm/McjgcCRQKgF9NIXs0GQAprGFgtAK95C5eHSXDfqIvmQvK76Mv0+wDko4+t
 i+qBo+5lhe9dcD1SNJrWTQ==;
Date: Fri, 31 Jul 2026 10:26:30 +0300
Message-Id: <86tspfwrfd.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Sean Whitton <spwhitton@HIDDEN>
In-Reply-To: <8733x0crcc.fsf@HIDDEN> (message from Sean
 Whitton on Thu, 30 Jul 2026 18:36:19 +0100)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: jporterbugs@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> From: Sean Whitton <spwhitton@HIDDEN>
> Cc: 81520 <at> debbugs.gnu.org
> Date: Thu, 30 Jul 2026 18:36:19 +0100
> 
> Jim Porter [30/Jul 10:31am -07] wrote:
> > I spent a little while researching options here, and the most common
> > annotation is "Co-Authored-By: Some LLM <some_llm@HIDDEN>" followed
> > by "Assisted-By: Some LLM". (The perhaps controversially named Kompromat
> > site[1] links many examples and describes their detection criteria,
> > which I've used as the basis of my implementation.)
> >
> > Unfortunately, in the Co-Authored-By case, ordinary humans are often
> > co-authors, and there are a few commits in GNU Emacs master that already
> > use Co-Authored-By to indicate multiple people worked on the commit. I
> > think this is generally a good practice, since it makes the copyright
> > situation explicit when multiple people have done legally-significant
> > amounts of work in a single commit.
> >
> > If we want to permit using Co-Authored-By to list people, then I think
> > the only option for detecting LLMs is using their email addresses.
> > Luckily, the addresses themselves seem to be stable, though of course
> > this list only covers the most popular options. That said, the vast
> > majority of money spent on SaaSS LLMs goes to one of the listed providers.
> 
> We explicitly permit it in CONTRIBUTE.

And I never liked it, because it doesn't fit the attributions in
ChangeLog files.

> So yeah, let's match on e-mail addresses.

Sorry, I'm firmly against that, for the reasons I already explained.
I'd rather we disallowed Co-Authored-By and other similar headings.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 31 Jul 2026 00:07:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jul 30 20:07:11 2026
Received: from localhost ([127.0.0.1]:36355 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpamK-0007op-Pz
	for submit <at> debbugs.gnu.org; Thu, 30 Jul 2026 20:07:10 -0400
Received: from mail-pl1-x633.google.com ([2607:f8b0:4864:20::633]:43370)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wpamH-0007oK-8P
 for 81520 <at> debbugs.gnu.org; Thu, 30 Jul 2026 20:07:06 -0400
Received: by mail-pl1-x633.google.com with SMTP id
 d9443c01a7336-2cf452def93so10607435ad.1
 for <81520 <at> debbugs.gnu.org>; Thu, 30 Jul 2026 17:07:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785456419; x=1786061219; darn=debbugs.gnu.org;
 h=in-reply-to:from:references:cc:to:content-language:subject
 :mime-version:date:message-id:content-type:from:to:cc:subject:date
 :message-id:reply-to:content-type;
 bh=eG31IINqiAt0PC+myWr6AaA/qXErU3aSqgHNMW4AZQI=;
 b=CzAnkaAUKz903xpRjGVnbB2c+PXs0/Bs1IXUh5BF3zD+IPG9dZ68qvejuyRZJd/RXK
 UGOc9vkbqjU4JHDDfT40q0N2nils4Ug6uCByp01SLch61kXKfkvTZOpgMc/OVamJgAES
 tpwfaSfkXcDTQ4aCi/poYKgO9NgdJfWPvJ0LC670JYkwON6yZi1JvEkQ5eB/hiIzDmSN
 w0uMTTLr2PMOlg7JZ2hNTsOa0dCq9pW6ut052evEhM8Ar6dI2kv+rAP50c+2YDyy8DRe
 xCuRjZB45MydpWEP3bBINBalLK4H3diR+WNZYVf8Zt/asX35LokL9inlB0BQMDXQd+W0
 1ztA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785456419; x=1786061219;
 h=in-reply-to:from:references:cc:to:content-language:subject
 :mime-version:date:message-id:content-type:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=eG31IINqiAt0PC+myWr6AaA/qXErU3aSqgHNMW4AZQI=;
 b=BkcDJ9VQXRFtQkOqtXJ5vKrccd2uPGLZWF2rMoSn9GmQwd86j3HE/vQbNJeyBBqmEo
 dO/SuU6yru/8PJZ91SsdDIx/BwolhwJTYiR8pSI7PoNX4IjqC3N7R1POVZWgQRH9ZZec
 KAoH6bN11EZotdJay9JLj6sOO4IZA8woDCSvvIN4hczdUFMgz7DhPBc7FrsVR9pDhQvx
 wdp8VhjVEIMEjS6Y+NTN7ue7y5VV2445VbZtsk3XpcFnkp6jWL2bnXJZdvznc42fQReW
 VA3rsT0trR1LSBxdQrIyetEbuKp4IRYzU+ASIvVMI8Z1MGy71xMLzNwZmniEaDXSLVYj
 cp7g==
X-Gm-Message-State: AOJu0YwwgS15yBTl8Fxa8uagjsJmxWlZuTZcLJWwycCyZWgz19jVk6cq
 a67DejBnoSiF0SsZnSc2CScr3rWjaIeiMAs2eZvn3U1rf3raklSPma4y
X-Gm-Gg: AR+sD13P+j9Qtg4+s6BRuJ/wlnPFtPN8o2xSdmR+Nag+C8bGw+SCZD7ToNUgeyEdsye
 xY/lhVdZ/Vddfq65BGFtWcV3ozbWqbwg0Gi/6Ufod6ytOZA+Lh/moMmFmpGdqIrwSf/Sjkt2CWj
 QU7GheHjl22cmzNiW/VXVuDoAYyiupJ7PLpWzpxVJSfW3R/1o680ow4GgLuagvyvrpcezBrEsIv
 7YKp8YM6sNL/748PXTCChku6+mkoY3CgpEITQBzQAtC0Ir6IEKE1vRf5mj59QuoLJn92VcP9gvu
 Gu+7dkv4Xvd9RXiNSijT+I3s+ZORadx5fVAYQutc04kv6tYShU5HQAJvuQAeIZc8zHbKNaZXCVH
 vY0i196ixjyaVYm+W62iOwRTMBvQ/MYs7BCNL1VTJob2MXDVTLbRlEMfkhPTkWwmTyEVnuX5Zw3
 kkwoMnoqCP/hUlThcFz7h1SR39TWxpngjB5TEoqoGYiqsnF4AqJajL0Q3BB0Ws7JbHFbZxUkApC
 Oc=
X-Received: by 2002:a17:90b:2f06:b0:36b:b903:994 with SMTP id
 98e67ed59e1d1-38fa68500b7mr2051630a91.4.1785456418881; 
 Thu, 30 Jul 2026 17:06:58 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 5a478bee46e88-31504d37368sm47678737eec.22.2026.07.30.17.06.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 30 Jul 2026 17:06:57 -0700 (PDT)
Content-Type: multipart/mixed; boundary="------------EFUFrRFv3LZNJ5LY5zWSkfH6"
Message-ID: <48882f48-3619-136a-c979-81da09350917@HIDDEN>
Date: Thu, 30 Jul 2026 17:06:57 -0700
MIME-Version: 1.0
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
Content-Language: en-US
To: Sean Whitton <spwhitton@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
 <8733x0crcc.fsf@HIDDEN>
From: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <8733x0crcc.fsf@HIDDEN>
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

This is a multi-part message in MIME format.
--------------EFUFrRFv3LZNJ5LY5zWSkfH6
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 7/30/2026 10:36 AM, Sean Whitton wrote:
> We explicitly permit it in CONTRIBUTE.
> 
> So yeah, let's match on e-mail addresses.

Ok, here's a patch series to do this locally. The first patch is just 
cleaning up the existing pre-push hook to make it easier to work with, 
plus using some better-suited Git commands to get the SHAs that are 
about to be pushed.

After thinking over my options here, a pre-push hook seemed better than 
commit-msg for two reasons:

1. We're only trying to prevent LLM-assisted commits from ending up on 
Savannah. Any such patches that the user keeps locally won't affect us. 
(Technically, this hook prevents pushing LLM-assisted commits anywhere, 
but I don't think it's worth trying to account for the case where 
someone wants to push such patches to another remote we don't control.)

2. LLM agents tend to try all possibilities - even bad ones[1] - to 
resolve failed commands. If we checked this in the commit-msg hook, an 
LLM that vibecoded a patch might well see the error from the hook and 
"fix" the problem by simply deleting the attribution, even without the 
user being aware.

[1] I've heard tales of LLMs using Docker to copy files to 
root-controlled directories without having been granted root permissions.
--------------EFUFrRFv3LZNJ5LY5zWSkfH6
Content-Type: text/plain; charset=UTF-8;
 name="0001-Simplify-commit-msg-file-hook.patch"
Content-Disposition: attachment;
 filename="0001-Simplify-commit-msg-file-hook.patch"
Content-Transfer-Encoding: base64

RnJvbSA0MGUyZjliYmY2MGQzNDg0ODRkYzEyNTFhOTdiZmQ4OGNmZTFjY2M0IE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j
b20+CkRhdGU6IFRodSwgMzAgSnVsIDIwMjYgMTQ6MzE6NDUgLTA3MDAKU3ViamVjdDogW1BB
VENIIDEvMl0gU2ltcGxpZnkgY29tbWl0IG1zZyBmaWxlIGhvb2sKCiogYnVpbGQtYXV4L2dp
dC1ob29rcy9jb21taXQtbXNnLWZpbGVzLmF3ayAoZ2V0X2NvbW1pdF9jaGFuZ2VzKTogVXNl
CiJnaXQgZGlmZi10cmVlIiB0byBzaW1wbGlmeSBwYXJzaW5nIG9mIHRvdWNoZWQgZmlsZXMu
CgoqIGJ1aWxkLWF1eC9naXQtaG9va3MvcHJlLXB1c2g6IFVzZSBhIHNpbXBsZXIgaW52b2Nh
dGlvbiBvZiAiZ2l0CnJldi1saXN0IiB0byBnZXQgYWxsIGNvbW1pdHMgdG8gYmUgcHVzaGVk
LgotLS0KIGJ1aWxkLWF1eC9naXQtaG9va3MvY29tbWl0LW1zZy1maWxlcy5hd2sgfCAyMCAr
KysrLS0tLQogYnVpbGQtYXV4L2dpdC1ob29rcy9wcmUtcHVzaCAgICAgICAgICAgICB8IDYw
ICsrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRp
b25zKCspLCA1NyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9idWlsZC1hdXgvZ2l0LWhv
b2tzL2NvbW1pdC1tc2ctZmlsZXMuYXdrIGIvYnVpbGQtYXV4L2dpdC1ob29rcy9jb21taXQt
bXNnLWZpbGVzLmF3awppbmRleCA4NTI0ODhiNTUxZS4uNTJkZjdiNzQ2Y2UgMTAwNjQ0Ci0t
LSBhL2J1aWxkLWF1eC9naXQtaG9va3MvY29tbWl0LW1zZy1maWxlcy5hd2sKKysrIGIvYnVp
bGQtYXV4L2dpdC1ob29rcy9jb21taXQtbXNnLWZpbGVzLmF3awpAQCAtMzAsMjAgKzMwLDE2
IEBACiAKICMjIyBDb2RlOgogCi1mdW5jdGlvbiBnZXRfY29tbWl0X2NoYW5nZXMoY29tbWl0
X3NoYSwgY2hhbmdlcywgICAgY21kLCBpLCBqLCBsZW4sIFwKK2Z1bmN0aW9uIGdldF9jb21t
aXRfY2hhbmdlcyhjb21taXRfc2hhLCBjaGFuZ2VzLCAgICBjbWQsIGksIGxlbiwgXAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJpdHMsIGZpbGVuYW1lKSB7Ci0gICMgQ29sbGVj
dCBhbGwgdGhlIGZpbGVzIHRvdWNoZWQgaW4gdGhlIHNwZWNpZmllZCBjb21taXQuCi0gIGNt
ZCA9ICgiZ2l0IHNob3cgLS1uYW1lLXN0YXR1cyAtLWZpcnN0LXBhcmVudCAtLWZvcm1hdD0g
IiBjb21taXRfc2hhKQorICAjIENvbGxlY3QgYWxsIHRoZSBmaWxlcyBhbmQgdGhlaXIgcGFy
ZW50IGRpcmVjdG9yaWVzIHRvdWNoZWQgaW4gdGhlCisgICMgc3BlY2lmaWVkIGNvbW1pdC4K
KyAgY21kID0gKCJnaXQgZGlmZi10cmVlIC0tbm8tY29tbWl0LWlkIC0tbmFtZS1vbmx5IC1y
ICIgY29tbWl0X3NoYSkKICAgd2hpbGUgKChjbWQgfCBnZXRsaW5lKSA+IDApIHsKLSAgICBm
b3IgKGkgPSAyOyBpIDw9IE5GOyBpKyspIHsKLSAgICAgIGxlbiA9IHNwbGl0KCRpLCBiaXRz
LCAiLyIpCi0gICAgICBmb3IgKGogPSAxOyBqIDw9IGxlbjsgaisrKSB7Ci0gICAgICAgIGlm
IChqID09IDEpCi0gICAgICAgICAgZmlsZW5hbWUgPSBiaXRzW2pdCi0gICAgICAgIGVsc2UK
LSAgICAgICAgICBmaWxlbmFtZSA9IGZpbGVuYW1lICIvIiBiaXRzW2pdCi0gICAgICAgIGNo
YW5nZXNbZmlsZW5hbWVdID0gMQotICAgICAgfQorICAgIGxlbiA9IHNwbGl0KCQwLCBiaXRz
LCAiLyIpCisgICAgZm9yIChpID0gMTsgaSA8PSBsZW47IGkrKykgeworICAgICAgZmlsZW5h
bWUgPSBpID09IDEgPyBiaXRzW2ldIDogZmlsZW5hbWUgIi8iIGJpdHNbaV0KKyAgICAgIGNo
YW5nZXNbZmlsZW5hbWVdID0gMQogICAgIH0KICAgfQogICBjbG9zZShjbWQpCmRpZmYgLS1n
aXQgYS9idWlsZC1hdXgvZ2l0LWhvb2tzL3ByZS1wdXNoIGIvYnVpbGQtYXV4L2dpdC1ob29r
cy9wcmUtcHVzaAppbmRleCA4MWJhODU2OTdjMy4uMDA5Y2FiNzMxNTcgMTAwNzU1Ci0tLSBh
L2J1aWxkLWF1eC9naXQtaG9va3MvcHJlLXB1c2gKKysrIGIvYnVpbGQtYXV4L2dpdC1ob29r
cy9wcmUtcHVzaApAQCAtMzIsNiArMzIsOCBAQAogIyMjIENvZGU6CiAKIEhPT0tTX0RJUj1g
ZGlybmFtZSAiJDAiYAorUkVNT1RFX05BTUU9IiQxIgorTlVMTF9TSEE9IjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAiCiAKICMgUHJlZmVyIGdhd2sgaWYgYXZh
aWxhYmxlLCBhcyBpdCBoYW5kbGVzIE5VTCBieXRlcyBwcm9wZXJseS4KIGlmIHR5cGUgZ2F3
ayA+L2Rldi9udWxsIDI+JjE7IHRoZW4KQEAgLTQwLDQ5ICs0MiwxNyBAQCBlbHNlCiAgIGF3
az0iYXdrIgogZmkKIAotIyBTdGFuZGFyZCBpbnB1dCByZWNlaXZlcyBsaW5lcyBvZiB0aGUg
Zm9ybToKLSMgICA8bG9jYWwgcmVmPiBTUCA8bG9jYWwgc2hhPiBTUCA8cmVtb3RlIHJlZj4g
U1AgPHJlbW90ZSBzaGE+IExGCi0kYXdrIC12IG9yaWdpbl9uYW1lPSIkMSIgJwotICAjIElm
IHRoZSBsb2NhbCBTSEEgaXMgYWxsIHplcm9lcywgaWdub3JlIGl0LgotICAkMiB+IC9eMHs0
MH0kLyB7Ci0gICAgbmV4dAotICB9Cit3aGlsZSByZWFkIGxvY2FsX3JlZiBsb2NhbF9zaGEg
cmVtb3RlX3JlZiByZW1vdGVfc2hhOyBkbworICBpZiBbICIkbG9jYWxfc2hhIiA9ICROVUxM
X1NIQSBdOyB0aGVuICMgRGVsZXRlZCB0aGUgcmVmLgorICAgIGNvbnRpbnVlCisgIGZpCiAK
LSAgIyBDaGVjayBhbnkgbGluZXMgd2l0aCBhIHZhbGlkIGxvY2FsIFNIQSBhbmQgd2hvc2Ug
cmVtb3RlIHJlZiBpcwotICAjIG1hc3RlciBvciBhbiBlbWFjcy1OTiByZWxlYXNlIGJyYW5j
aC4gIChXZSB3YW50IHRvIGF2b2lkIGNoZWNraW5nCi0gICMgZmVhdHVyZSBvciBzY3JhdGNo
IGJyYW5jaGVzIGhlcmUuKQotICAkMiB+IC9eW2EtejAtOV17NDB9JC8gJiYgJDMgfiAvXnJl
ZnNcL2hlYWRzXC8obWFzdGVyfGVtYWNzLVswLTldKykkLyB7Ci0gICAgbmV3cmVmID0gJDIK
LSAgICAjIElmIHRoZSByZW1vdGUgU0hBIGlzIGFsbCB6ZXJvZXMsIHRoaXMgaXMgYSBuZXcg
b2JqZWN0IHRvIGJlCi0gICAgIyBwdXNoZWQgKGxpa2VseSBhIGJyYW5jaCkuLi4KLSAgICBp
ZiAoJDQgfiAvXjB7NDB9JC8pIHsKLSAgICAgIGJhY2sgPSAwCi0gICAgICAjIC4uLiBHbyBi
YWNrd2FyZHMgdW50aWwgd2UgZmluZCBhIFNIQSBvbiBhbiBvcmlnaW4gYnJhbmNoLgotICAg
ICAgIyBTdG9wIHRyeWluZyBhZnRlciAxMDAwIGNvbW1pdHMsIGp1c3QgaW4gY2FzZS4uLgot
ICAgICAgZm9yIChiYWNrID0gMDsgYmFjayA8IDEwMDA7IGJhY2srKykgewotICAgICAgICBj
bWQgPSAoImdpdCBicmFuY2ggLXIgLWwgJ1wnJyIgb3JpZ2luX25hbWUgIi8qJ1wnJyIgXAot
ICAgICAgICAgICAgICAgIiAtLWNvbnRhaW5zICIgbmV3cmVmICJ+IiBiYWNrKQotICAgICAg
ICBydiA9IChjbWQgfCBnZXRsaW5lKQotICAgICAgICBjbG9zZShjbWQpCi0gICAgICAgIGlm
IChydiA+IDApCi0gICAgICAgICAgYnJlYWs7Ci0gICAgICB9Ci0KLSAgICAgIGNtZCA9ICgi
Z2l0IHJldi1wYXJzZSAiIG5ld3JlZiAifiIgYmFjaykKLSAgICAgIGNtZCB8IGdldGxpbmUg
b2xkcmVmCi0gICAgICBpZiAoIShvbGRyZWYgfiAvXlthLXowLTldezQwfSQvKSkgewotICAg
ICAgICAjIFRoZSBTSEEgaXMgbWlzZm9ybWF0dGVkISAgU2tpcCB0aGlzIGxpbmUuCi0gICAg
ICAgIG5leHQKLSAgICAgIH0KLSAgICAgIGNsb3NlKGNtZCkKLSAgICB9IGVsc2UgaWYgKCQ0
IH4gL15bYS16MC05XXs0MH0kLykgIHsKLSAgICAgIG9sZHJlZiA9ICQ0Ci0gICAgfSBlbHNl
IHsKLSAgICAgICMgVGhlIFNIQSBpcyBtaXNmb3JtYXR0ZWQhICBTa2lwIHRoaXMgbGluZS4K
LSAgICAgIG5leHQKLSAgICB9Ci0KLSAgICAjIFByaW50IGV2ZXJ5IFNIQSBhZnRlciBvbGRy
ZWYsIHVwIHRvIChhbmQgaW5jbHVkaW5nKSBuZXdyZWYuCi0gICAgc3lzdGVtKCJnaXQgcmV2
LWxpc3QgLS1maXJzdC1wYXJlbnQgLS1yZXZlcnNlICIgb2xkcmVmICIuLiIgbmV3cmVmKQot
ICB9Ci0nIHwgJGF3ayAtdiByZWFzb249cHJlLXB1c2ggLWYgIiRIT09LU19ESVIiL2NvbW1p
dC1tc2ctZmlsZXMuYXdrCisgICMgQ2hlY2sgYW55IGxpbmVzIHdob3NlIHJlbW90ZSByZWYg
aXMgbWFzdGVyIG9yIGFuIGVtYWNzLU5OIHJlbGVhc2UKKyAgIyBicmFuY2guICAoV2Ugd2Fu
dCB0byBhdm9pZCBjaGVja2luZyBmZWF0dXJlIG9yIHNjcmF0Y2ggYnJhbmNoZXMKKyAgIyBo
ZXJlLikKKyAgaWYgZWNobyAiJHJlbW90ZV9yZWYiIHwgZ3JlcCAtRXEgIl5yZWZzL2hlYWRz
LyhtYXN0ZXJ8ZW1hY3MtWzAtOV0rKSQiOyB0aGVuCisgICAgIyBMaXN0IHRoZSBTSEFzIG9m
IGFsbCBjb21taXRzIHRvIGJlIHB1c2hlZCB0byB0aGUgcmVtb3RlIGZvciB0aGUKKyAgICAj
IGN1cnJlbnQgbG9jYWwgU0hBLgorICAgIGdpdCByZXYtbGlzdCAiJGxvY2FsX3NoYSIgLS1u
b3QgLS1yZW1vdGVzPSIkUkVNT1RFX05BTUUiIC0tcmV2ZXJzZQorICBmaQorZG9uZSB8ICRh
d2sgLXYgcmVhc29uPXByZS1wdXNoIC1mICIkSE9PS1NfRElSIi9jb21taXQtbXNnLWZpbGVz
LmF3awotLSAKMi4yNS4xCgo=
--------------EFUFrRFv3LZNJ5LY5zWSkfH6
Content-Type: text/plain; charset=UTF-8;
 name="0002-Check-commits-for-LLM-attributions-as-a-pre-push-hoo.patch"
Content-Disposition: attachment;
 filename*0="0002-Check-commits-for-LLM-attributions-as-a-pre-push-hoo.pa";
 filename*1="tch"
Content-Transfer-Encoding: base64

RnJvbSA3MTMwZTgwMGFlZjNiZTczZjU4MjRiNDE2OTE0Mzk4YmY5ZTdlMjQ1IE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j
b20+CkRhdGU6IFRodSwgMzAgSnVsIDIwMjYgMTY6MjM6NDEgLTA3MDAKU3ViamVjdDogW1BB
VENIIDIvMl0gQ2hlY2sgY29tbWl0cyBmb3IgTExNIGF0dHJpYnV0aW9ucyBhcyBhIHByZS1w
dXNoIGhvb2sKCiogYnVpbGQtYXV4L2dpdC1ob29rcy9jb21taXQtbXNnLWZpbGVzLmF3azog
QWNjZXB0ICd2ZXJib3NlJyB2YXJpYWJsZQpkaXJlY3RseSBmcm9tIHRoZSBjb21tYW5kIGxp
bmUsIGFuZCB1cGRhdGUgY2FsbGVycyB0byBwcmludCBmaW5hbApzdW1tYXJ5IG1lc3NhZ2Vz
LgoKKiBidWlsZC1hdXgvZ2l0LWhvb2tzL3ByZS1wdXNoOiBBZGQgY2FsbCB0byBjaGVjayBM
TE0gYXR0cmlidXRpb25zLgooZ2V0X291dGdvaW5nX3NoYXMpOiBOZXcgZnVuY3Rpb24uCgoq
IGJ1aWxkLWF1eC9naXQtaG9va3MvbGxtLWF0dHJpYnV0aW9uLmF3azogTmV3IGZpbGUuCi0t
LQogYXV0b2dlbi5zaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBi
dWlsZC1hdXgvZ2l0LWhvb2tzL2NvbW1pdC1tc2ctZmlsZXMuYXdrIHwgMTUgKy0tLS0KIGJ1
aWxkLWF1eC9naXQtaG9va3MvbGxtLWF0dHJpYnV0aW9uLmF3ayAgfCA4MiArKysrKysrKysr
KysrKysrKysrKysrKysKIGJ1aWxkLWF1eC9naXQtaG9va3MvcG9zdC1jb21taXQgICAgICAg
ICAgfCAgNiArLQogYnVpbGQtYXV4L2dpdC1ob29rcy9wcmUtcHVzaCAgICAgICAgICAgICB8
IDMyICsrKysrKystLQogNSBmaWxlcyBjaGFuZ2VkLCAxMTMgaW5zZXJ0aW9ucygrKSwgMjQg
ZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgYnVpbGQtYXV4L2dpdC1ob29rcy9s
bG0tYXR0cmlidXRpb24uYXdrCgpkaWZmIC0tZ2l0IGEvYXV0b2dlbi5zaCBiL2F1dG9nZW4u
c2gKaW5kZXggYTYxZDc0Yjk4MWQuLjI1MzdlZDFhOGU4IDEwMDc1NQotLS0gYS9hdXRvZ2Vu
LnNoCisrKyBiL2F1dG9nZW4uc2gKQEAgLTM3MCw3ICszNzAsNyBAQCB0YWlsb3JlZF9ob29r
cz0KIHNhbXBsZV9ob29rcz0KIAogZm9yIGhvb2sgaW4gY29tbWl0LW1zZyBwcmUtY29tbWl0
IHByZXBhcmUtY29tbWl0LW1zZyBwb3N0LWNvbW1pdCBcCi0gICAgICAgICAgICBwcmUtcHVz
aCBjb21taXQtbXNnLWZpbGVzLmF3azsgZG8KKyAgICAgICAgICAgIHByZS1wdXNoIGNvbW1p
dC1tc2ctZmlsZXMuYXdrIGxsbS1hdHRyaWJ1dGlvbi5hd2s7IGRvCiAgICAgY21wIC0tIGJ1
aWxkLWF1eC9naXQtaG9va3MvJGhvb2sgIiRob29rcy8kaG9vayIgPi9kZXYvbnVsbCAyPiYx
IHx8CiAJdGFpbG9yZWRfaG9va3M9IiR0YWlsb3JlZF9ob29rcyAkaG9vayIKIGRvbmUKZGlm
ZiAtLWdpdCBhL2J1aWxkLWF1eC9naXQtaG9va3MvY29tbWl0LW1zZy1maWxlcy5hd2sgYi9i
dWlsZC1hdXgvZ2l0LWhvb2tzL2NvbW1pdC1tc2ctZmlsZXMuYXdrCmluZGV4IDUyZGY3Yjc0
NmNlLi5lNGZjODNjNjkyMCAxMDA2NDQKLS0tIGEvYnVpbGQtYXV4L2dpdC1ob29rcy9jb21t
aXQtbXNnLWZpbGVzLmF3aworKysgYi9idWlsZC1hdXgvZ2l0LWhvb2tzL2NvbW1pdC1tc2ct
ZmlsZXMuYXdrCkBAIC0xMDEsMjQgKzEwMSwxMSBAQCBmdW5jdGlvbiBjaGVja19jb21taXRf
bXNnX2ZpbGVzKGNvbW1pdF9zaGEsIHZlcmJvc2UsICAgIGNoYW5nZXMsIGdvb2QsIFwKICAg
cmV0dXJuIGdvb2QKIH0KIAotQkVHSU4gewotICBpZiAocmVhc29uID09ICJwcmUtcHVzaCIp
Ci0gICAgdmVyYm9zZSA9IDEKLX0KLQogL15bYS16MC05XXs0MH0kLyB7Ci0gIGlmICghIGNo
ZWNrX2NvbW1pdF9tc2dfZmlsZXMoJDAsIHZlcmJvc2UpKSB7CisgIGlmICghIGNoZWNrX2Nv
bW1pdF9tc2dfZmlsZXMoJDAsIHZlcmJvc2UpKQogICAgIHN0YXR1cyA9IDEKLSAgfQogfQog
CiBFTkQgewotICBpZiAoc3RhdHVzICE9IDApIHsKLSAgICBpZiAocmVhc29uID09ICJwcmUt
cHVzaCIpCi0gICAgICBlcnJvcl9tc2cgPSAiUHVzaCBhYm9ydGVkIgotICAgIGVsc2UKLSAg
ICAgIGVycm9yX21zZyA9ICJCYWQgY29tbWl0IG1lc3NhZ2UiCi0gICAgcHJpbnRmKCIlczsg
cGxlYXNlIHNlZSB0aGUgZmlsZSAnQ09OVFJJQlVURSdcbiIsIGVycm9yX21zZykKLSAgfQog
ICBleGl0IHN0YXR1cwogfQpkaWZmIC0tZ2l0IGEvYnVpbGQtYXV4L2dpdC1ob29rcy9sbG0t
YXR0cmlidXRpb24uYXdrIGIvYnVpbGQtYXV4L2dpdC1ob29rcy9sbG0tYXR0cmlidXRpb24u
YXdrCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4zZTk2ZTUzNmVj
MgotLS0gL2Rldi9udWxsCisrKyBiL2J1aWxkLWF1eC9naXQtaG9va3MvbGxtLWF0dHJpYnV0
aW9uLmF3awpAQCAtMCwwICsxLDgyIEBACisjIENoZWNrIHRoZSBjb21taXQgbWVzc2FnZXMg
Zm9yIGVhY2ggU0hBIHRvIHJlamVjdCBMTE0tYXR0cmlidXRlZCBjaGFuZ2VzLgorCisjIENv
cHlyaWdodCAyMDI2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisjIFRoaXMg
ZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KKworIyBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0
d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRl
ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp
c2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lv
biAzIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2
ZXJzaW9uLgorCisjIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0
IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv
dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3Ig
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5l
cmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyMgWW91IHNob3VsZCBo
YXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UK
KyMgYWxvbmcgd2l0aCBHTlUgRW1hY3MuICBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251
Lm9yZy9saWNlbnNlcy8+LgorCisjIyMgQ29tbWVudGFyeToKKworIyBUaGlzIHNjcmlwdCBh
Y2NlcHRzIGEgbGlzdCBvZiAodW5hYmJyZXZpYXRlZCkgR2l0IGNvbW1pdCBTSEFzLCBhbmQK
KyMgd2lsbCB0aGVuIGl0ZXJhdGUgb3ZlciB0aGVtIHRvIGNoZWNrIHRoYXQgdGhlIGNvbW1p
dCBtZXNzYWdlcyBkb24ndAorIyBjb250YWluIGFueSBMTE0gYXR0cmlidXRpb25zLiAgSWYg
dGhleSBkbywgaXQgd2lsbCBwcmludCBvdXQgdGhlCisjIGludmFsaWQgY29tbWl0cyBhcyB3
ZWxsIGFzIHRoZSBMTE0gYXR0cmlidXRpb24gd2UgZm91bmQuCisKKyMgU3BlY2lmaWNhbGx5
LCB0aGlzIGNoZWNrcyB0aGF0IG5vbmUgb2YgdGhlIGF1dGhvciwgY29tbWl0dGVyLCBvciB0
aGUKKyMgQ28tQXV0aG9yZWQtQnkgb3IgQ28tRGV2ZWxvcGVkLUJ5IGZpZWxkcyBjb250YWlu
IGFuIGVtYWlsIGFkZHJlc3MKKyMgYXNzb2NpYXRlZCB3aXRoIGFuIExMTS4gIEFkZGl0aW9u
YWxseSwgaXQgcmVqZWN0cyBhbGwgY29tbWl0cyB3aXRoCisjIEFzc2lzdGVkLUJ5IG9yIEFJ
LUFzc2lzdGVkIGZpZWxkcy4KKworIyMjIENvZGU6CisKK0JFR0lOIHsKKyAgTExNX0VNQUlM
U1sxXSA9ICJub3JlcGx5QGFudGhyb3BpYy5jb20iCisgIExMTV9FTUFJTFNbMl0gPSAiY29k
ZXhAb3BlbmFpLmNvbSIKKyAgTExNX0VNQUlMU1szXSA9ICJjb3BpbG90QHVzZXJzLm5vcmVw
bHkuZ2l0aHViLmNvbSIKK30KKworZnVuY3Rpb24gY2hlY2tfZW1haWwoZW1haWwpIHsKKyAg
IyBSZXR1cm5zIG5vbi16ZXJvIGlmIHRoZSBzcGVjaWZpZWQgZW1haWwgaXMgYW4gTExNLWFz
c29jaWF0ZWQKKyAgIyBhZGRyZXNzLiAgVGhpcyBtYXRjaGVzIGVpdGhlciB0aGUgZXhhY3Qg
ZW1haWwgYWRkcmVzcyBvciB0aGUgYWRkcmVzcworICAjIGNvbnRhaW5lZCBzb21ld2hlcmUg
aW4gdGhlIHN0cmluZyBiZXR3ZWVuIGFuZ2xlIGJyYWNrZXRzLgorICBmb3IgKGkgaW4gTExN
X0VNQUlMUykgeworICAgIGlmIChlbWFpbCA9PSBMTE1fRU1BSUxTW2ldIHx8CisgICAgICAg
IGluZGV4KGVtYWlsLCAoIjwiIExMTV9FTUFJTFNbaV0gIj4iKSkpCisgICAgICByZXR1cm4g
MQorICB9CisgIHJldHVybiAwCit9CisKK2Z1bmN0aW9uIGNoZWNrX2NvbW1pdChjb21taXRf
c2hhLCAgICBsb3dlcmVkKSB7CisgICMgUmV0dXJucyBub24temVybyBpZiB0aGUgY29tbWl0
IGNvbnRhaW5zIGFueSBMTE0gYXR0cmlidXRpb25zLgorICBiYWQgPSAwCisgIGNtZCA9ICgi
Z2l0IHNob3cgLXMgLS1mb3JtYXQ9J0F1dGhvcjogJWFlJW5Db21taXR0ZXI6ICVjZSVuJUIn
ICIgXAorICAgICAgICAgY29tbWl0X3NoYSkKKyAgd2hpbGUgKChjbWQgfCBnZXRsaW5lKSA+
IDApIHsKKyAgICBsb3dlcmVkID0gdG9sb3dlcigkMCkKKyAgICBpZiAoKG1hdGNoKGxvd2Vy
ZWQsIC9eKGF1dGhvcnxjb21taXR0ZXJ8Y28tKGF1dGhvcmVkfGRldmVsb3BlZCktYnkpOltb
OnNwYWNlOl1dKi8pICYmCisgICAgICAgIGNoZWNrX2VtYWlsKHN1YnN0cigkMCwgUkxFTkdU
SCsxKSkpIHx8CisgICAgICAgIGxvd2VyZWQgfiAvXihhc3Npc3RlZC1ieXxhaS1hc3Npc3Rl
ZCk6JC8pIHsKKyAgICAgIGlmICghIGJhZCkgeworICAgICAgICAoImdpdCBzaG93IC1zIC0t
Zm9ybWF0PSclcycgIiBjb21taXRfc2hhKSB8IGdldGxpbmUgbXNnCisgICAgICAgIHByaW50
ZigiSW4gY29tbWl0ICVzIFwiJXNcIi4uLlxuIiwgc3Vic3RyKGNvbW1pdF9zaGEsIDEsIDEw
KSwgbXNnKQorICAgICAgICBwcmludGYoIkxMTSBhdHRyaWJ1dGlvbnMgZGV0ZWN0ZWQ6XG4i
KQorICAgICAgfQorICAgICAgcHJpbnRmKCIgICVzXG4iLCAkMCkKKyAgICAgIGJhZCA9IDEK
KyAgICB9CisgIH0KKyAgY2xvc2UoY21kKQorICByZXR1cm4gYmFkCit9CisKKy9eW2EtejAt
OV17NDB9JC8geworICBpZiAoY2hlY2tfY29tbWl0KCQwKSkKKyAgICBzdGF0dXMgPSAxCit9
CisKK0VORCB7CisgIGV4aXQgc3RhdHVzCit9CmRpZmYgLS1naXQgYS9idWlsZC1hdXgvZ2l0
LWhvb2tzL3Bvc3QtY29tbWl0IGIvYnVpbGQtYXV4L2dpdC1ob29rcy9wb3N0LWNvbW1pdApp
bmRleCA3M2ZkNWIyODc4MC4uY2MwMmQ0ZGY3MTkgMTAwNzU1Ci0tLSBhL2J1aWxkLWF1eC9n
aXQtaG9va3MvcG9zdC1jb21taXQKKysrIGIvYnVpbGQtYXV4L2dpdC1ob29rcy9wb3N0LWNv
bW1pdApAQCAtNDMsNSArNDMsNyBAQCBlbHNlCiAgIGF3az0iYXdrIgogZmkKIAotZ2l0IHJl
di1wYXJzZSBIRUFEIHwgJGF3ayAtdiByZWFzb249cG9zdC1jb21taXQgXAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAtZiAiJEhPT0tTX0RJUiIvY29tbWl0LW1zZy1maWxlcy5hd2sK
K2lmICEgZ2l0IHJldi1wYXJzZSBIRUFEIHwgJGF3ayAtZiAiJEhPT0tTX0RJUiIvY29tbWl0
LW1zZy1maWxlcy5hd2s7IHRoZW4KKyAgIyBJdCdzIHRvbyBsYXRlIHRvIGFib3J0IHRoZSBj
b21taXQsIHNvIGp1c3QgcHJpbnQgYSB3YXJuaW5nLgorICBlY2hvICJCYWQgY29tbWl0IG1l
c3NhZ2U7IHBsZWFzZSBzZWUgdGhlIGZpbGUgJ0NPTlRSSUJVVEUnIgorZmkKZGlmZiAtLWdp
dCBhL2J1aWxkLWF1eC9naXQtaG9va3MvcHJlLXB1c2ggYi9idWlsZC1hdXgvZ2l0LWhvb2tz
L3ByZS1wdXNoCmluZGV4IDAwOWNhYjczMTU3Li5lOTQ0NGNiYzk0MyAxMDA3NTUKLS0tIGEv
YnVpbGQtYXV4L2dpdC1ob29rcy9wcmUtcHVzaAorKysgYi9idWlsZC1hdXgvZ2l0LWhvb2tz
L3ByZS1wdXNoCkBAIC0zNSw2ICszNSwxMiBAQCBIT09LU19ESVI9YGRpcm5hbWUgIiQwImAK
IFJFTU9URV9OQU1FPSIkMSIKIE5VTExfU0hBPSIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwIgogCisjIExpc3QgdGhlIFNIQXMgb2YgYWxsIGNvbW1pdHMgdG8g
YmUgcHVzaGVkIHRvIHRoZSByZW1vdGUgZm9yIHRoZQorIyBzcGVjaWZpZWQgU0hBLgorZ2V0
X291dGdvaW5nX3NoYXMoKSB7CisgIGdpdCByZXYtbGlzdCAiJDEiIC0tbm90IC0tcmVtb3Rl
cz0iJFJFTU9URV9OQU1FIiAtLXJldmVyc2UKK30KKwogIyBQcmVmZXIgZ2F3ayBpZiBhdmFp
bGFibGUsIGFzIGl0IGhhbmRsZXMgTlVMIGJ5dGVzIHByb3Blcmx5LgogaWYgdHlwZSBnYXdr
ID4vZGV2L251bGwgMj4mMTsgdGhlbgogICBhd2s9Imdhd2siCkBAIC00MiwxNyArNDgsMjkg
QEAgZWxzZQogICBhd2s9ImF3ayIKIGZpCiAKK3Jlc3VsdD0wCiB3aGlsZSByZWFkIGxvY2Fs
X3JlZiBsb2NhbF9zaGEgcmVtb3RlX3JlZiByZW1vdGVfc2hhOyBkbwogICBpZiBbICIkbG9j
YWxfc2hhIiA9ICROVUxMX1NIQSBdOyB0aGVuICMgRGVsZXRlZCB0aGUgcmVmLgogICAgIGNv
bnRpbnVlCiAgIGZpCiAKLSAgIyBDaGVjayBhbnkgbGluZXMgd2hvc2UgcmVtb3RlIHJlZiBp
cyBtYXN0ZXIgb3IgYW4gZW1hY3MtTk4gcmVsZWFzZQotICAjIGJyYW5jaC4gIChXZSB3YW50
IHRvIGF2b2lkIGNoZWNraW5nIGZlYXR1cmUgb3Igc2NyYXRjaCBicmFuY2hlcwotICAjIGhl
cmUuKQorICAjIENoZWNrIHRoZSBmaWxlIG5hbWVzIGluIHRoZSBjb21taXQgbWVzc2FnZXMg
YmVpbmcgcHVzaGVkIHRvIG1hc3RlcgorICAjIG9yIGFuIGVtYWNzLU5OIHJlbGVhc2UgYnJh
bmNoLiAgKFdlIHdhbnQgdG8gYXZvaWQgY2hlY2tpbmcgZmVhdHVyZQorICAjIG9yIHNjcmF0
Y2ggYnJhbmNoZXMgaGVyZS4pCiAgIGlmIGVjaG8gIiRyZW1vdGVfcmVmIiB8IGdyZXAgLUVx
ICJecmVmcy9oZWFkcy8obWFzdGVyfGVtYWNzLVswLTldKykkIjsgdGhlbgotICAgICMgTGlz
dCB0aGUgU0hBcyBvZiBhbGwgY29tbWl0cyB0byBiZSBwdXNoZWQgdG8gdGhlIHJlbW90ZSBm
b3IgdGhlCi0gICAgIyBjdXJyZW50IGxvY2FsIFNIQS4KLSAgICBnaXQgcmV2LWxpc3QgIiRs
b2NhbF9zaGEiIC0tbm90IC0tcmVtb3Rlcz0iJFJFTU9URV9OQU1FIiAtLXJldmVyc2UKKyAg
ICBnZXRfb3V0Z29pbmdfc2hhcyAiJGxvY2FsX3NoYSIgfCBcCisgICAgICAkYXdrIC12IHZl
cmJvc2U9MSAtZiAiJEhPT0tTX0RJUiIvY29tbWl0LW1zZy1maWxlcy5hd2sKKyAgICByZXN1
bHQ9JChleHByICRyZXN1bHQgInwiICQ/KQogICBmaQotZG9uZSB8ICRhd2sgLXYgcmVhc29u
PXByZS1wdXNoIC1mICIkSE9PS1NfRElSIi9jb21taXQtbXNnLWZpbGVzLmF3aworCisgICMg
Q2hlY2sgZm9yIExMTSBhdHRyaWJ1dGlvbnMgaW4gYWxsIG91dGdvaW5nIGNvbW1pdHMuICBX
ZSBkbyB0aGlzIGluIGEKKyAgIyBzZXBhcmF0ZSBwYXNzIGZyb20gYWJvdmUgc28gdGhhdCB0
aGUgb3V0cHV0IGlzIGtlcHQgc2VwYXJhdGUuCisgIGdldF9vdXRnb2luZ19zaGFzICIkbG9j
YWxfc2hhIiB8IFwKKyAgICAkYXdrIC1mICIkSE9PS1NfRElSIi9sbG0tYXR0cmlidXRpb24u
YXdrCisgIHJlc3VsdD0kKGV4cHIgJHJlc3VsdCAifCIgJD8pCitkb25lCisKK2lmIFsgJHJl
c3VsdCAtbmUgMCBdOyB0aGVuCisgIGVjaG8gIlB1c2ggYWJvcnRlZDsgcGxlYXNlIHNlZSB0
aGUgZmlsZSAnQ09OVFJJQlVURSdcbiIKK2ZpCitleGl0ICRyZXN1bHQKLS0gCjIuMjUuMQoK


--------------EFUFrRFv3LZNJ5LY5zWSkfH6--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 30 Jul 2026 17:36:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jul 30 13:36:30 2026
Received: from localhost ([127.0.0.1]:33970 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpUgH-0000gk-VM
	for submit <at> debbugs.gnu.org; Thu, 30 Jul 2026 13:36:30 -0400
Received: from fout-a2-smtp.messagingengine.com ([103.168.172.145]:40351)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <spwhitton@HIDDEN>)
 id 1wpUgE-0000gQ-I7
 for 81520 <at> debbugs.gnu.org; Thu, 30 Jul 2026 13:36:28 -0400
Received: from phl-compute-04.internal (phl-compute-04.internal [10.202.2.44])
 by mailfout.phl.internal (Postfix) with ESMTP id 46F58EC0121;
 Thu, 30 Jul 2026 13:36:21 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-04.internal (MEProxy); Thu, 30 Jul 2026 13:36:21 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=spwhitton.name;
 h=cc:cc:content-type:content-type:date:date:from:from
 :in-reply-to:in-reply-to:message-id:mime-version:references
 :reply-to:subject:subject:to:to; s=fm1; t=1785432981; x=
 1785519381; bh=pXokwcuj4lCSyY8537lpe3seTCuXmxoHZP1HiYNwArQ=; b=Y
 zHdj5sFyXtuZOdhlD/uab0ch3N7Eou06YmgvG+JYyM+u/SqQC/P344YShTj0QChy
 s4DqCeu/e4D0On3Z3JUWupKgt4G1c1mQB0a+InY3FTbAXaCEeGNrZI/2bOoKgH2p
 VVPI1R7Ft9qC+GK5FW/mT7fuUv7dhX6Zj/XxHrJgWJkxRmP9UWPprmVuGvUvSzlr
 prBXXGduORTBSy+RF3u8aHFldN+WqgFgCdA2vgjx0YSN/zJ3QXC/OCRtr9oK/IRm
 AhAMUS5r2L6F5Wepk1XG1W/8pvWxGXrt2SvRBNScgTLU9yCDgzPuoBR3a6VfHblT
 hEmTJg08gWwCBB4Bexddw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=
 1785432981; x=1785519381; bh=pXokwcuj4lCSyY8537lpe3seTCuXmxoHZP1
 HiYNwArQ=; b=JLZ7VZQvrou2ghKOX0LwHX2t6bnka8yiMwkLCGLM4xGWwTFxKSQ
 EF+b/ICBPU39yHeuHEMy3oTddaX5aJkFqqEx3ZsUzJt0POQb0xn4OTozDJOvLzZ/
 Jt3vARsRP8vcCSK2WqkiEc9eeBWjEAM9Cen0HegjWNJ7glc4z1LUlOCr6AQVQfaq
 LGS31TN3r8qOIb6/D72EsfrY0YTdcoB277fuRI3qlamzek6sWHeqKxNbPI24vFJ4
 FlM2GFpZDj3WACY1YpDSOCJOEEog9X18jKvAKkBHx2jtyUXq4jHJeoam3YOr/cl6
 48huCLIwLH4GkmvWGZ8qNyXYjSJDB4W50DQ==
X-ME-Sender: <xms:lYtratqshqtfJ-_e_6_wbl9YBhkHmmaR-_E5hxh7k6rFVam_jfP9Ew>
 <xme:lYtranFsbR7I0nPAQPoDlZ5GheKCv0cGzhS_7UjAdJOH4UpMOAgRB5V2VcuYsqwDr
 oJpB1v9su2dRflB7oWBbq8mrD9WZuYQsWR_wG0cE28y8CWtw3G6hMIG>
X-ME-Received: <xmr:lYtranm6rm5U_ClhnTo17xzRqWNMDyZp1YK_Nae6Ub0RHGPqpb-wEe1mpiXivkfnH-cz4RoyO95YY8WC53XgPOEA8bPmZw>
X-ME-Proxy-Cause: dmFkZTELRclqzuYtAavGjAEi35MZSDbRx7mogSX0GmaZyVe2dprXxwgJgW74/gTjYVNHGY
 uXwCH9xicud/Ea/83S5FtAAfjjJ1vo1HD2bBAA4pYJPddo+HZv/7OGd3kPwUdxnymrmj8J
 yAZ8ztE9fmFZQJAs4LTICBhJXmW9aNKSCsRLGcQMnq1oi1Rp84e0PwJqOeYLHgybwcPZpb
 yV/ODKWCKIDXh0HBHGhqPjeN02jmBJibwJ1kfoDcIxxOskgvTTAsEMdvcQrI9+AQ5APD/I
 s3ZPJxbMRbf+GQSUiZfM0r3nqpwY/yRuICHP9Bu3gun6TAuyxiJ+zWIRcW8YJF2CA4iRgC
 oz8AAFPoh2UHsMBezsw+5W9Ume6a5vl0XDH6mSOaB/VEx2KtkVbM4RLsYlDysOf0iimNiC
 O6oIoT9oMRcWoDsonhj936wOm9Y/dTpf72YS78cdEVQn/b4PEU+MHyYYSPiTbIGuCk5SO1
 y7Bdfuo12b51KWugbBE6F+nlf9wMEJQ9NI6uFgFzbe+AuU8UuZ6WAtGLDBsq6X3Z2NjUPX
 liAd0F4VwzCnQhPvJMbXxYGqekyjrBlGnmplmmI6XT461cvMFyTQelyqIynIxiGMYTLnmP
 Rk8TzjiJcSu1VFNC3KWS0fso039gPaf0fyu+RtXXKnADyEXs3DWs8WFDYzww
X-ME-Proxy: <xmx:lYtraimfRNrPxsft1tYz6P3-rcWjb3PVAJ60fo_xut33fuVgT0kWaA>
 <xmx:lYtragsWZEhyMFyfWgY6ZOvLVfEbeAyH20NwT7OIia89dz9MxmVo1w>
 <xmx:lYtratnFIKU9qs-jip4xGNSEXw1TzGXVSu-BzVNMpEECae2zfgYpRw>
 <xmx:lYtrajs9lMABGMmzjKGFZVexIPFr1XLv638HiM5chpIqK5udKfGVOA>
 <xmx:lYtraizHN8HWRio8QFNXPqdnX8oQdJdN9GrB5g8KtZvKohF_KuLPCMbZ>
Feedback-ID: i62564b17:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 30 Jul 2026 13:36:20 -0400 (EDT)
Received: by zephyr.silentflame.com (Postfix, from userid 1000)
 id B14BD94659F; Thu, 30 Jul 2026 18:36:19 +0100 (BST)
From: Sean Whitton <spwhitton@HIDDEN>
To: Jim Porter <jporterbugs@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
In-Reply-To: <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN> <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
Date: Thu, 30 Jul 2026 18:36:19 +0100
Message-ID: <8733x0crcc.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Jim Porter [30/Jul 10:31am -07] wrote:
> I spent a little while researching options here, and the most common
> annotation is "Co-Authored-By: Some LLM <some_llm@HIDDEN>" followed
> by "Assisted-By: Some LLM". (The perhaps controversially named Kompromat
> site[1] links many examples and describes their detection criteria,
> which I've used as the basis of my implementation.)
>
> Unfortunately, in the Co-Authored-By case, ordinary humans are often
> co-authors, and there are a few commits in GNU Emacs master that already
> use Co-Authored-By to indicate multiple people worked on the commit. I
> think this is generally a good practice, since it makes the copyright
> situation explicit when multiple people have done legally-significant
> amounts of work in a single commit.
>
> If we want to permit using Co-Authored-By to list people, then I think
> the only option for detecting LLMs is using their email addresses.
> Luckily, the addresses themselves seem to be stable, though of course
> this list only covers the most popular options. That said, the vast
> majority of money spent on SaaSS LLMs goes to one of the listed providers.

We explicitly permit it in CONTRIBUTE.

So yeah, let's match on e-mail addresses.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 30 Jul 2026 17:32:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jul 30 13:32:01 2026
Received: from localhost ([127.0.0.1]:33903 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpUbw-0000PC-J7
	for submit <at> debbugs.gnu.org; Thu, 30 Jul 2026 13:32:01 -0400
Received: from mail-pl1-x62c.google.com ([2607:f8b0:4864:20::62c]:47612)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wpUbt-0000OP-SW
 for 81520 <at> debbugs.gnu.org; Thu, 30 Jul 2026 13:31:58 -0400
Received: by mail-pl1-x62c.google.com with SMTP id
 d9443c01a7336-2d02b4c3601so425555ad.3
 for <81520 <at> debbugs.gnu.org>; Thu, 30 Jul 2026 10:31:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785432712; x=1786037512; darn=debbugs.gnu.org;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:from:to
 :cc:subject:date:message-id:reply-to:content-type;
 bh=QjGGpt960+5/ip1EHH2NNepicbTWcYrVQQZQYoMVY6o=;
 b=SjGrTLN5VQkEOgsLl56m/CfCB9pOwfE1SVGGAURw000YkUJnAQlEwQG6skt5MPHSk3
 PRTYHsHm0j/N514oVbkZp2P8/4O8iDZZVMO06mjwrhqtXLQ1PJq0y36qk1ly3zOnI2Eq
 lmvGYbFTW7S8lkJvui1KRecfOK292IDJySJrgEb0i2zouWvoYGpDHu0fPG9NYAUm6jDC
 A0cXuIX+Uj0t1SW4avgYopOSGdTgpRMeel3XoQ0UriJAyGS9h5MarrBVJvuvUvyjaWXm
 OwFjbMPng4QyvENb5ZorAATwfNwcaHxg4RNteIZr/cIxCKzAPr0WIyOGofYLxflyr4oG
 49Uw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785432712; x=1786037512;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :cc:to:content-language:subject:mime-version:date:message-id:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=QjGGpt960+5/ip1EHH2NNepicbTWcYrVQQZQYoMVY6o=;
 b=sgfEAHjxabJXtE30ms0TGRyQVO/a3uGbXtbbdz4iLJEQ15wn8dAhoWXqFbRoN6hQFe
 Fu0qn0doGk4SDSnSyvuwcC3LAEmpR9402STToYwan0HBF46r0bgAypNk/VGR1R+8xe/v
 F3GVI3IuA5ZCAbROye0BVXsCuX8FDk+rSX3vqU4C/+nfGO5hBeKuw7pXBEtvOT6mx6zF
 V3CcsPZgvrAZIj+lN+yMha5DtaQvZTY0Kpq73SkEJtHKhv2rf8zLK5KpvnbDkTPy/yvE
 DASuHSH7V4Gr3BY2Ig0RW63z7EvfKZgfZudtL+8WSCnLuWr39rJc0Cu3S1HiakqQgLKW
 ZCrA==
X-Forwarded-Encrypted: i=1;
 AHgh+RpKzkey3nbBay9rC0wPMg914bPAFrkzQRWozG6LW63kqDzk4ojAn4N8XxeN1DntWl8xTFEcDg==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YyjHQKtkFYtTEwpy66BYGozE2RV0i2ZpRy+LOg+ZoPx86CbJLWY
 CmcfOs5ktM2RpogIDlWFAKxo3ilcciCgg/N3ua/j6YyrKqBf4OwekfBP
X-Gm-Gg: AR+sD10F1bKmaN08Xld4eyh5rQwGbMlRo8et5hfbNjMBLeVFRTEraC8853LNUFKj05v
 /1lzDsMhvMf8pSSpX9EinPC9eIOOPY4ISuR9vC8OT7exrzrtFcipHnaAujXtms636zyrDU6Dy8t
 ExXSRYFDdwVtefq6hrQagnmj+zkLGB89oaeitx/I+Z1LAN45mR1Ime3NAXFz3VY+6Nm8OjbC4rx
 MjddcrreuTpz49JyM8v6y5opieUl8bKXSVN9Dxcxo3/2BgTGFX+sZoKKxyLYE63jM6xrPQD34dw
 UO7z7J6yjoxYCBNMRRibAR/KmExYz1gRHqJ3eGxiJn09EHO1cyXCudAkcVidLXTt3QEMHrpgNdf
 7SScc2zFT4HHePxKz1+fUtJJnGA7q06qTfBDTCsZXnQH4iRXTYbMKSR808y5xtzDb9nrQtZj05H
 GGcimFAZfmBxez3paZCLfCOTq/Y5v4GvI6HTfDnnIFcPvlnVAfd5wNCu3ynAYJycqBJXY/f93uq
 2k=
X-Received: by 2002:a17:903:185:b0:2c9:e261:95ce with SMTP id
 d9443c01a7336-2d035cb4bd5mr28516215ad.30.1785432711668; 
 Thu, 30 Jul 2026 10:31:51 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 d9443c01a7336-2d022bf39b5sm29845445ad.57.2026.07.30.10.31.49
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 30 Jul 2026 10:31:50 -0700 (PDT)
Message-ID: <c79a1edc-f825-22e3-79d7-b979f8674c0d@HIDDEN>
Date: Thu, 30 Jul 2026 10:31:51 -0700
MIME-Version: 1.0
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
Content-Language: en-US
To: Eli Zaretskii <eliz@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
 <86fr11xasp.fsf@HIDDEN>
From: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <86fr11xasp.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81520
Cc: 81520 <at> debbugs.gnu.org, spwhitton@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 7/29/2026 11:15 PM, Eli Zaretskii wrote:
>> Cc: spwhitton@HIDDEN
>> Date: Wed, 29 Jul 2026 18:54:13 -0700
>> From: Jim Porter <jporterbugs@HIDDEN>
>>
>> # A list of LLM-associated email addresses to reject.
>> BAD_EMAILS="\
>> noreply@HIDDEN
>> codex@HIDDEN
>> copilot@HIDDEN"
> 
> IMNSHO, this is not the best way of doing this, far from it.  We don't
> want to start an "arms race" of having all the LLM-based agents in our
> hooks, definitely not based on their email addresses, which can change
> without notice.
I spent a little while researching options here, and the most common 
annotation is "Co-Authored-By: Some LLM <some_llm@HIDDEN>" followed 
by "Assisted-By: Some LLM". (The perhaps controversially named Kompromat 
site[1] links many examples and describes their detection criteria, 
which I've used as the basis of my implementation.)

Unfortunately, in the Co-Authored-By case, ordinary humans are often 
co-authors, and there are a few commits in GNU Emacs master that already 
use Co-Authored-By to indicate multiple people worked on the commit. I 
think this is generally a good practice, since it makes the copyright 
situation explicit when multiple people have done legally-significant 
amounts of work in a single commit.

If we want to permit using Co-Authored-By to list people, then I think 
the only option for detecting LLMs is using their email addresses. 
Luckily, the addresses themselves seem to be stable, though of course 
this list only covers the most popular options. That said, the vast 
majority of money spent on SaaSS LLMs goes to one of the listed providers.

> Using 'index' can easily cause false positives, as it only matches the
> prefix of a string.  If we are going to look for specific addresses
> (which I hope we won't), we will need as more accurate method of
> matching.

Sounds good to me. I can make the logic here more precise, assuming we 
agree that checking email addresses is the least-bad option.

>>            if (status == 0) {
>>              print("LLM-encumbered commits found in \'" ref "\'")
>>              print("Please remove the following commits and try again:")
> 
> This should be worded differently, something like
> 
>    Commits found in $REF seem to be LLM-assisted
> 
> It should also show the specific lines that caused this conclusion,
> since the user doesn't (and shouldn't) know what are the patterns we
> look for, and there seems to be no simple way to identify the parts of
> the commit that trigger the rejection.  Bonus points for having some
> way of asking for the phrases or strings which should not appear in
> the log message.

Will do. Thanks for taking a look at this.

[1] https://asta.boserup.eu/forest/kompromat




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 30 Jul 2026 10:40:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jul 30 06:40:57 2026
Received: from localhost ([127.0.0.1]:58384 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpOC9-0001EM-3S
	for submit <at> debbugs.gnu.org; Thu, 30 Jul 2026 06:40:57 -0400
Received: from flow-b3-smtp.messagingengine.com ([202.12.124.138]:57017)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <spwhitton@HIDDEN>)
 id 1wpOC5-0001D2-Pa
 for 81520 <at> debbugs.gnu.org; Thu, 30 Jul 2026 06:40:55 -0400
Received: from phl-compute-02.internal (phl-compute-02.internal [10.202.2.42])
 by mailflow.stl.internal (Postfix) with ESMTP id A374A1300616;
 Thu, 30 Jul 2026 06:40:47 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
 by phl-compute-02.internal (MEProxy); Thu, 30 Jul 2026 06:40:47 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=spwhitton.name;
 h=cc:content-type:content-type:date:date:from:from:in-reply-to
 :in-reply-to:message-id:mime-version:references:reply-to:subject
 :subject:to:to; s=fm1; t=1785408047; x=1785415247; bh=bnkf+j/H8p
 8EXPYYFhw+ADOklsg/+cz1xrG9mGKnbF8=; b=q+RDQ/pOlsVznneM5pGM/MZdbi
 c60YmhAvrnaoMEn9t6MWg/HbQrnwkxaX12XojyB6Fv2gR7qrXKQBYnw2ia4/2lfS
 p/lETFb+pdiebfYyb2OdJIX0qK9140OqFYo7FIQ38svCrW802IIwY7jHw4RVqr74
 OJXeiEB5KGqYbIDSDfvRKcgmn327n1BvA/PYlusA4YuIsVMYWc3gPpQNTnDJYyVZ
 5sBb1z4ggkdQmmN0aGt0Kb5Y10Xcin9AQFYpOC0SDUolLhDCMWib8o3NH1RgZSr2
 qvv23j9qECkZN3RGIc+YTEYJ6To3Gjf8j21+Osy42bYbgyGbbnjNcJidGT0w==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=
 1785408047; x=1785415247; bh=bnkf+j/H8p8EXPYYFhw+ADOklsg/+cz1xrG
 9mGKnbF8=; b=Docawyx4uRjLa+pS9wUlpUrebUgd4guXcETYkZSuYGGmZTtOsw+
 3JuV4gHajD+Cln8vY2yEx7C7AUBDpQTiYfo9F4QbsjvoQ5JqMKcCdpoF/k2Ge4/O
 2ZeUSFKgVzg59zpxpN0+IHjQyVANn1GJMGaDI86VlXTwqxnquSkqXLO3+FHxGswD
 ha+vcKrNA+TvB8lNsePjQsTSdcZN3/fOahKVOlnTgGYUgMMzi9hqeoJTupNe5UMe
 umqxIQiFejVenfYyf8ZgED6N4c9Ocf7P7ifk3w4WSbuYJKMa/xcaBQvg5yuf79dq
 ciVZHD2NTXnk4X2TxKl6survKwSj+z8ZQHA==
X-ME-Sender: <xms:LyprasnB6FSZyIAD7X6jHmx3PZbWiXBAsGRrQRLqIJhJISxNsZp0IA>
 <xme:Lyprah24FBFlXnAMLcl-Ci1kBQW4J7unWFDTrfcneoAo9onP145fl67_s-ZrewvG-
 kKihBx2k9yNQgphcIgTCOC8rF6Ep5QrmZIwoF-de-pxrQimhZXVy9M>
X-ME-Received: <xmr:LypraoRoQfjQhXJt0H_3WIVINU_Ku3PDKJy1KYptidstI2JMFxAfyinSTRyfbYM341FmbHt4atXs>
X-ME-Proxy-Cause: dmFkZTFYzQa9jiKoxE22uy/EFyD9Ggw+Z1OQtxmak40iqLzZhoPHbHUHa011IK0ysr5xCc
 fdeGcuMdtahAyflQcQKu10MMIxptheKlAyluunWG9Kh7cLLRtwE3I5U7mFkI1b8diE3GUa
 dVo6MfDjD1KDqn9z34fFbDwquDzMiTCimECk/snFhBFxWnNIeV5olysCRVXqMqAxIAcQX2
 hupRJ47al0bz/RzdTyxbarqpBIF6xPie/N0RcdY9NIKK6XEDO/lxJMlNmQKBoExJ1QPpHt
 FWM5Ng31QKW/wVPN1UmpMRVt+8FDzNyv387wMrV/amFAwccrMD6wWP2qdO6AWixuXdZIM1
 AZJ5Wm0YWCE04P9+/x2r3OfsJT5diXUN7VTTjLlguwDnRC+KajxVsJ1Euwqt5KsPxiiAYK
 OEXJWxnKyKKUGl7Z+ZbjOF5rNMboiGq+uJuTNBiHIeeplAIBugPjBYplywC+WTLofrA4f3
 WV8UVASr4WNiVGd4EOaswL+4awfbrydX+9KybhxZMtFVgk2GiFg9+gPMeuHN2KfFPmiDZS
 lmwdIWma61+rxpxOKZ93055ZiydSo+DPH5Q6toomOgCl3N38Afo91HTo3ern5kY9gV3ACx
 1gN05d2XoovRplNbsQ3U6aScbLQwS0JfawscVF/MXHiqNudW61MJJqIF6xTg
X-ME-Proxy: <xmx:LyprajthSnGRwbawasTdPC67W_tKDlXMCRKLXge6Wp0vI7rd4qiKTw>
 <xmx:LypratblMMZh1m8_Vzekzn9I97Z1Nf0DIjEcbCtx0vxvu0qU18fEpw>
 <xmx:LypraosLMGQxo41ph0qb6ynKyESLFn7MKvCi3KyHGK1mZpXTxj3WiQ>
 <xmx:LypravF-jNyLNJ_rbSExwFgN2iVj17hUoVpLMhgvCZwGcGP9eji49Q>
 <xmx:LypraqtRpDc7AnzJScHSnp0LIzePLlUFAeRNbXm-7bMPFeKpZjLsgSjA>
Feedback-ID: i62564b17:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 30 Jul 2026 06:40:47 -0400 (EDT)
Received: by melete.silentflame.com (Postfix, from userid 1000)
 id 5BB147E7BB4; Thu, 30 Jul 2026 11:40:46 +0100 (BST)
From: Sean Whitton <spwhitton@HIDDEN>
To: Jim Porter <jporterbugs@HIDDEN>, 81520 <at> debbugs.gnu.org
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
In-Reply-To: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
Date: Thu, 30 Jul 2026 11:40:46 +0100
Message-ID: <87bjbodakx.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81520
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Jim Porter [29/Jul  6:54pm -07] wrote:
> X-Debbugs-CC: spwhitton@HIDDEN
>
> As discussed on emacs-devel, here's a small Git hook that we can install
> on Savannah to reject commits with LLM attributions. This will hopefully
> let us avoid force-pushes in the future to remove any such commits (or
> less-drastic measures like reverting them).
>
> After some thought, I opted to do this as a pre-receive hook on Savannah
> instead of a commit-msg or pre-push hook in people's local clones. This
> way, only people with commit access will see the error. I think we can
> and should trust those with commit rights, but others may take the error
> as impetus to hide their LLM usage. (Since this is simply a best-effort
> script to make life easier for maintainers, I'm not too worried about
> this being "security through obscurity".)

We already have a simple pre-receive hook that rejects commits that
we've previously force-pushed to get rid of (currently it only lists the
most recent case).  So your pre-receive hook would need to be integrated
with that code.  But I think keeping a very simple pre-receive hook is
desirable when we can't edit it without going through the Savannah
admins each time.

So, I think this should be a local hook.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at 81520 <at> debbugs.gnu.org:


Received: (at 81520) by debbugs.gnu.org; 30 Jul 2026 06:16:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jul 30 02:16:06 2026
Received: from localhost ([127.0.0.1]:57832 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpK3p-0005VZ-IY
	for submit <at> debbugs.gnu.org; Thu, 30 Jul 2026 02:16:06 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:43820)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wpK3k-0005U0-OG
 for 81520 <at> debbugs.gnu.org; Thu, 30 Jul 2026 02:16:03 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wpK3f-0007Q6-9b; Thu, 30 Jul 2026 02:15:55 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=Wl3QjoyheE8ycKIn2zGA5MI+iMgnUaYvjtdrZR3fXrA=; b=X9V/DE6lY8bq
 NgesXD3fbqLQaJqi0AMBboYZxIIWbNff+UEGIDXvm9EcK0baIpoP+nxsogeFIrX564frT7yhem3yV
 57CJHWnuV2/Eg010w5dYZelVMDm6IdcBispyRvhCErhX9QDbmmHYwDON7yFBREZ3+41c7M7gQ+cJR
 8jrEmmSHnBeCunq81Rv2h/67oufa1oVpV53krgaAWZJvNOMKRAFu/78rxGw0La3kOdHcmqbRAzrp0
 xNIX01pbxTARpyshQHdMyIxyzkuFJ1JMSHuH2Hd6rpfhQjHsb1iAOQZ7JpnPDB4yPcu4GeWqnOzru
 QdjtDGmIjcFgtmF3YDkG0Q==;
Date: Thu, 30 Jul 2026 09:15:50 +0300
Message-Id: <86fr11xasp.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN> (message from
 Jim Porter on Wed, 29 Jul 2026 18:54:13 -0700)
Subject: Re: bug#81520: Add pre-receive hook to Savannah to reject
 LLM-encumbered commits
References: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 81520
Cc: spwhitton@HIDDEN, 81520 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> Cc: spwhitton@HIDDEN
> Date: Wed, 29 Jul 2026 18:54:13 -0700
> From: Jim Porter <jporterbugs@HIDDEN>
> 
> # This hook runs before receiving commits from a client and checks that
> # none of the commits contain any LLM attributions. Specifically, this
> # checks that none of the author, committer, or the Co-Authored-By or
> # Co-Developed-By fields contain an email address associated with an
> # LLM. Additionally, it rejects all commits with Assisted-By or
> # AI-Assisted fields.
> 
> ### Code:
> 
> # A list of LLM-associated email addresses to reject.
> BAD_EMAILS="\
> noreply@HIDDEN
> codex@HIDDEN
> copilot@HIDDEN"

IMNSHO, this is not the best way of doing this, far from it.  We don't
want to start an "arms race" of having all the LLM-based agents in our
hooks, definitely not based on their email addresses, which can change
without notice.

>   # Get a list of all the SHAs not reachable from some already-present
>   # commit and validate them.
>   git rev-list $new_oid --not --all | \
>     awk -v bad_emails="$BAD_EMAILS" -v ref="$ref_name" $'
>       function check_email(email_line) {
>         # Returns non-zero if the line contains a bad email address.
>         for (i in BAD_EMAILS) {
>           if (index(email_line, BAD_EMAILS[i]))

Using 'index' can easily cause false positives, as it only matches the
prefix of a string.  If we are going to look for specific addresses
(which I hope we won't), we will need as more accurate method of
matching.

>           if (status == 0) {
>             print("LLM-encumbered commits found in \'" ref "\'")
>             print("Please remove the following commits and try again:")

This should be worded differently, something like

  Commits found in $REF seem to be LLM-assisted

It should also show the specific lines that caused this conclusion,
since the user doesn't (and shouldn't) know what are the patterns we
look for, and there seems to be no simple way to identify the parts of
the commit that trigger the rejection.  Bonus points for having some
way of asking for the phrases or strings which should not appear in
the log message.

Thanks.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 30 Jul 2026 01:54:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 29 21:54:28 2026
Received: from localhost ([127.0.0.1]:56634 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wpFyd-0003D4-QV
	for submit <at> debbugs.gnu.org; Wed, 29 Jul 2026 21:54:28 -0400
Received: from lists1p.gnu.org ([2001:470:142::17]:60120)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wpFya-0003Cl-2z
 for submit <at> debbugs.gnu.org; Wed, 29 Jul 2026 21:54:25 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <jporterbugs@HIDDEN>)
 id 1wpFyU-0007sa-J6
 for bug-gnu-emacs@HIDDEN; Wed, 29 Jul 2026 21:54:18 -0400
Received: from mail-pg1-x533.google.com ([2607:f8b0:4864:20::533])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <jporterbugs@HIDDEN>)
 id 1wpFyS-00011C-MJ
 for bug-gnu-emacs@HIDDEN; Wed, 29 Jul 2026 21:54:18 -0400
Received: by mail-pg1-x533.google.com with SMTP id
 41be03b00d2f7-c9b373d5af0so1261102a12.2
 for <bug-gnu-emacs@HIDDEN>; Wed, 29 Jul 2026 18:54:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1785376454; x=1785981254; darn=gnu.org;
 h=subject:from:to:content-language:mime-version:date:message-id
 :content-type:from:to:cc:subject:date:message-id:reply-to
 :content-type; bh=FQ9RwbNDrvxijX6m8ODQW2zL3IfiyPti7fPlK9evmOU=;
 b=R/cM6zRoX9UFYgrwlM9b1m3+Nk0D//Lpa5w4RzjItwt1mkSCx3ji3zvYV7pTVTiDxj
 JsRncbUd60yiue9LBBydLlb5KYIkf60eQ+LyIS/9hU4UZvuQYbmXruDqguw3mNGOm6dR
 JsqQwS+gx/t8bvZMo57ug9ZDfpoMn5w3ka7wAVSWURB/htTiwXw0aWnuf9jCfZe5aGUQ
 oG4IXmFNnLMqqy89CT6qqpTGCAZ5QfBOXcpYEG6dk5zupG1k0SpZLpr1Ft5NtkQSDUAk
 OhCTBjINcb1TUWxqSLSgVzNHAHUnOVOc2jz6fuqlXZIedHoKwla8jJndvII1fbPTkNai
 buKA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1785376454; x=1785981254;
 h=subject:from:to:content-language:mime-version:date:message-id
 :content-type:x-gm-gg:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to:content-type;
 bh=FQ9RwbNDrvxijX6m8ODQW2zL3IfiyPti7fPlK9evmOU=;
 b=agbbF7B5a6ofCJUbgKhhEvN7yLzKS4+/mHZ+uNULB69nXNpHKtWtYEKf53pf8XO4HQ
 JHxYzNW9BKQdnfOALWPvb/seqd0EV0akvV8mzJTL43Flx0ElTmYmYFZoQSPH2VKa9HdL
 6TGucKj92oAtwRhdXJ0EFpVPkgf4vZ6GTpYVoK58uX81/o0ilmibFXJLyA2NdcyU22n8
 /5QPRv8e3nis93V7CJLT29I5V8dR7kghKMw6gu0bzcruEGj0QKqACF560cSInkhLHVwf
 FlkSIgEsHmtvJMNedsqwG0W45LZRDV8H57gSsPPxVflXWqv+dEXdKRy/q0OZU89+ePkk
 DPqg==
X-Gm-Message-State: AOJu0YwlwVMXk0puvkOG0wvlw9SR+ovr+S1Oxnl09jMhBe0XIsX3d9Dd
 dtghLnJRiz3r/SQB1UuMLRKXUf+/Vxu6r5VLsJGMPntrfXnflEzIethdcm/fHA==
X-Gm-Gg: AR+sD12ugqjriN77gRsXsOlQudqgVOeh9jXc0bPKvaRgRIoEZFIHj2fgPss9bShcZ6g
 ZAtRpaSsPuElRoWsT9pGAndVXhs69h0GpwhCIJkca1YQ/hfXKMCnf54TpSNfwVo+i+ZO52yKO+5
 xxvZ7ztwo8hssekfzSNjfHzOZ1V/H338xy2cp+1wHu9y7eu4L2fJbYEyesV0bktydLbjudK2ghq
 2KGft+VyPxvyU68kWjNX/r9Ee7U8Xd7cREMPNAKtQb8M+hm9hL3goDctfKeZSeFuGlyB5/qUfQe
 59tl8Y1eDW3qJzLNGNkotRTykcZhNJRAKKZj3vzW5cSvx0ochRVIZd8zqJiLmxQE2vlfYhH8Lwx
 CppySUy/8vmajah+jKsOpSrq8U3G6CXZzrumFi6m5xDK3z+O9MkdodaJW2DcUkwAqLVSUQ+oIm4
 jRe3aJQ6mF2PLTweGAKfFN+yadm4edhYUpfL5RXZg9hRFvSuFAzdaAv/58PPwq5W9UlnR/1vkED
 +U=
X-Received: by 2002:a05:6a20:72a2:b0:3c3:96a8:6878 with SMTP id
 adf61e73a8af0-3c9008d256dmr528510637.47.1785376454372; 
 Wed, 29 Jul 2026 18:54:14 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 a92af1059eb24-13e7262bc27sm18791897c88.2.2026.07.29.18.54.13
 for <bug-gnu-emacs@HIDDEN>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 29 Jul 2026 18:54:13 -0700 (PDT)
Content-Type: multipart/mixed; boundary="------------oYZg8UsPHqhrUH6j0pJ3mk7Y"
Message-ID: <3b2b1472-3f71-8710-9996-80d26a104b27@HIDDEN>
Date: Wed, 29 Jul 2026 18:54:13 -0700
MIME-Version: 1.0
X-Mozilla-News-Host: news://news.gmane.io:119
Content-Language: en-US
To: bug-gnu-emacs@HIDDEN
From: Jim Porter <jporterbugs@HIDDEN>
Subject: Add pre-receive hook to Savannah to reject LLM-encumbered commits
Received-SPF: pass client-ip=2607:f8b0:4864:20::533;
 envelope-from=jporterbugs@HIDDEN; helo=mail-pg1-x533.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

This is a multi-part message in MIME format.
--------------oYZg8UsPHqhrUH6j0pJ3mk7Y
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

X-Debbugs-CC: spwhitton@HIDDEN

As discussed on emacs-devel, here's a small Git hook that we can install 
on Savannah to reject commits with LLM attributions. This will hopefully 
let us avoid force-pushes in the future to remove any such commits (or 
less-drastic measures like reverting them).

After some thought, I opted to do this as a pre-receive hook on Savannah 
instead of a commit-msg or pre-push hook in people's local clones. This 
way, only people with commit access will see the error. I think we can 
and should trust those with commit rights, but others may take the error 
as impetus to hide their LLM usage. (Since this is simply a best-effort 
script to make life easier for maintainers, I'm not too worried about 
this being "security through obscurity".)

If this hook fails, the user will see something like the following message:

> remote: LLM-encumbered commits found in 'refs/heads/some-branch'
> remote: Please remove the following commits and try again:
> remote:   01ac47fe Some commit message
> remote:   ca40f33f Another commit message
> To username@HIDDEN:/srv/git/emacs.git
>  ! [remote rejected] some-branch -> some-branch (pre-receive hook declined)
> error: failed to push some refs to 'username@HIDDEN:/srv/git/emacs.git'

I've lightly tested this with some local repositories pointing to each 
other, and everything seems to work. However, a bit more testing/review 
from the resident Git experts would probably be wise before we install this.
--------------oYZg8UsPHqhrUH6j0pJ3mk7Y
Content-Type: text/plain; charset=UTF-8; name="pre-receive"
Content-Disposition: attachment; filename="pre-receive"
Content-Transfer-Encoding: base64

IyEvYmluL2Jhc2gKIyBDaGVjayB0aGUgaW5jb21pbmcgY29tbWl0cyB0byByZWplY3QgTExN
LWVuY3VtYmVyZWQgY2hhbmdlcy4KCiMgQ29weXJpZ2h0IDIwMjYgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuCgojIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KCiMg
R05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu
ZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1
YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KCiMgR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVk
IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5Z
IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUg
dGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KCiMg
WW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIEdOVSBFbWFjcy4gIElmIG5vdCwgc2VlIDxodHRw
czovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCgojIyMgQ29tbWVudGFyeToKCiMgVGhpcyBo
b29rIHJ1bnMgYmVmb3JlIHJlY2VpdmluZyBjb21taXRzIGZyb20gYSBjbGllbnQgYW5kIGNo
ZWNrcyB0aGF0CiMgbm9uZSBvZiB0aGUgY29tbWl0cyBjb250YWluIGFueSBMTE0gYXR0cmli
dXRpb25zLiBTcGVjaWZpY2FsbHksIHRoaXMKIyBjaGVja3MgdGhhdCBub25lIG9mIHRoZSBh
dXRob3IsIGNvbW1pdHRlciwgb3IgdGhlIENvLUF1dGhvcmVkLUJ5IG9yCiMgQ28tRGV2ZWxv
cGVkLUJ5IGZpZWxkcyBjb250YWluIGFuIGVtYWlsIGFkZHJlc3MgYXNzb2NpYXRlZCB3aXRo
IGFuCiMgTExNLiBBZGRpdGlvbmFsbHksIGl0IHJlamVjdHMgYWxsIGNvbW1pdHMgd2l0aCBB
c3Npc3RlZC1CeSBvcgojIEFJLUFzc2lzdGVkIGZpZWxkcy4KCiMjIyBDb2RlOgoKIyBBIGxp
c3Qgb2YgTExNLWFzc29jaWF0ZWQgZW1haWwgYWRkcmVzc2VzIHRvIHJlamVjdC4KQkFEX0VN
QUlMUz0iXApub3JlcGx5QGFudGhyb3BpYy5jb20KY29kZXhAb3BlbmFpLmNvbQpjb3BpbG90
QHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNvbSIKCk5VTExfUkVGPSIwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIgoKc2V0IC1lCgojIFByZWZlciBnYXdrIGlmIGF2
YWlsYWJsZSwgYXMgaXQgaGFuZGxlcyBOVUwgYnl0ZXMgcHJvcGVybHkuCmlmIHR5cGUgZ2F3
ayA+L2Rldi9udWxsIDI+JjE7IHRoZW4KICBhd2s9Imdhd2siCmVsc2UKICBhd2s9ImF3ayIK
ZmkKCndoaWxlIHJlYWQgb2xkX29pZCBuZXdfb2lkIHJlZl9uYW1lOyBkbwogIGlmIFsgIiRu
ZXdfb2lkIiA9ICIkTlVMTF9SRUYiIF07IHRoZW4gIyBEZWxldGVkIHRoZSByZWYuCiAgICBj
b250aW51ZQogIGZpCgogICMgR2V0IGEgbGlzdCBvZiBhbGwgdGhlIFNIQXMgbm90IHJlYWNo
YWJsZSBmcm9tIHNvbWUgYWxyZWFkeS1wcmVzZW50CiAgIyBjb21taXQgYW5kIHZhbGlkYXRl
IHRoZW0uCiAgZ2l0IHJldi1saXN0ICRuZXdfb2lkIC0tbm90IC0tYWxsIHwgXAogICAgYXdr
IC12IGJhZF9lbWFpbHM9IiRCQURfRU1BSUxTIiAtdiByZWY9IiRyZWZfbmFtZSIgJCcKICAg
ICAgZnVuY3Rpb24gY2hlY2tfZW1haWwoZW1haWxfbGluZSkgewogICAgICAgICMgUmV0dXJu
cyBub24temVybyBpZiB0aGUgbGluZSBjb250YWlucyBhIGJhZCBlbWFpbCBhZGRyZXNzLgog
ICAgICAgIGZvciAoaSBpbiBCQURfRU1BSUxTKSB7CiAgICAgICAgICBpZiAoaW5kZXgoZW1h
aWxfbGluZSwgQkFEX0VNQUlMU1tpXSkpCiAgICAgICAgICAgIHJldHVybiAxCiAgICAgICAg
fQogICAgICAgIHJldHVybiAwCiAgICAgIH0KCiAgICAgIGZ1bmN0aW9uIGNoZWNrX2NvbW1p
dChjb21taXRfc2hhLCAgICBoZWFkZXIpIHsKICAgICAgICAjIFJldHVybnMgbm9uLXplcm8g
aWYgdGhlIGNvbW1pdCBjb250YWlucyBhbnkgTExNIGF0dHJpYnV0aW9ucy4KICAgICAgICBj
bWQgPSAoImdpdCBzaG93IC1zIC0tZm9ybWF0PVwnQXV0aG9yOiAlYWUlbkNvbW1pdHRlcjog
JWNlJW4lQlwnICIgXAogICAgICAgICAgICAgICBjb21taXRfc2hhKQogICAgICAgIHdoaWxl
ICgoY21kIHwgZ2V0bGluZSkgPiAwKSB7CiAgICAgICAgICBoZWFkZXIgPSB0b2xvd2VyKCQx
KQogICAgICAgICAgaWYgKGhlYWRlciB+IC9eKGF1dGhvcnxjb21taXR0ZXJ8Y28tKGF1dGhv
cmVkfGRldmVsb3BlZCktYnkpOiQvICYmCiAgICAgICAgICAgICAgY2hlY2tfZW1haWwoJDAp
KSB7CiAgICAgICAgICAgIHJldHVybiAxCiAgICAgICAgICB9CiAgICAgICAgICBlbHNlIGlm
KGhlYWRlciB+IC9eKGFzc2lzdGVkLWJ5fGFpLWFzc2lzdGVkKTokLykgewogICAgICAgICAg
ICByZXR1cm4gMQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjbG9zZShjbWQpCiAg
ICAgICAgcmV0dXJuIDAKICAgICAgfQoKICAgICAgQkVHSU4gewogICAgICAgIHN0YXR1cyA9
IDAKICAgICAgICBzcGxpdChiYWRfZW1haWxzLCBCQURfRU1BSUxTLCAiXFxuIikKICAgICAg
fQoKICAgICAgL15bYS16MC05XXs0MH0kLyB7CiAgICAgICAgY29tbWl0ID0gJDAKICAgICAg
ICBpZiAoY2hlY2tfY29tbWl0KGNvbW1pdCkpIHsKICAgICAgICAgIGlmIChzdGF0dXMgPT0g
MCkgewogICAgICAgICAgICBwcmludCgiTExNLWVuY3VtYmVyZWQgY29tbWl0cyBmb3VuZCBp
biBcJyIgcmVmICJcJyIpCiAgICAgICAgICAgIHByaW50KCJQbGVhc2UgcmVtb3ZlIHRoZSBm
b2xsb3dpbmcgY29tbWl0cyBhbmQgdHJ5IGFnYWluOiIpCiAgICAgICAgICB9CiAgICAgICAg
ICBzeXN0ZW0oImdpdCBzaG93IC1zIC0tZm9ybWF0PVwnICAlQyh5ZWxsb3cpJWglQ3Jlc2V0
ICVzXCcgIiBjb21taXQpCiAgICAgICAgICBzdGF0dXMgPSAxCiAgICAgICAgfQogICAgICB9
CgogICAgICBFTkQgewogICAgICAgIGV4aXQgc3RhdHVzCiAgICAgIH0nCmRvbmUK

--------------oYZg8UsPHqhrUH6j0pJ3mk7Y--




Acknowledgement sent to Jim Porter <jporterbugs@HIDDEN>:
New bug report received and forwarded. Copy sent to spwhitton@HIDDEN, bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to spwhitton@HIDDEN, bug-gnu-emacs@HIDDEN:
bug#81520; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Tue, 4 Aug 2026 11:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.