bug#81520: Add pre-receive hook to Savannah to reject LLM-encumbered commits
Jim Porter <[email protected]>
| Newsgroups | gmane.emacs.bugs |
|---|---|
| Message-ID | <[email protected]> |
On 8/4/2026 4:17 AM, Sean Whitton wrote: >>> 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/Eli: Before I go too far changing things, I wanted to check your thoughts on how to structure this. We already have both a commit-msg hook (which does some style checks on the commit message) and a pre-push hook (which checks that the files listed in the commit message are correct[1]). While I could do the LLM-attribution checks in the middle of these existing checks, I think it would be clearer to do it in a separate pass. That way, we're not mixing messages about long commit message lines or misspelled file names with messages that we detected possible LLM usage. Does that sound ok? (If not, it would be harder to share the code for the LLM checks in both the commit-msg and pre-push hooks.) [1] We do this during pre-push because commit-msg is too early to check this, and post-commit doesn't let you abort the commit. So we issue a warning during post-commit but error out during pre-push.