<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/ai-contributions-to-ghc-aevdutscl" -->

---
title: AI Contributions to GHC | daily.dev
description: GHC has adopted a formal policy for AI-assisted contributions, built around four policy points and one preference. Contributors can use LLMs but must...
canonical: https://daily.dev/posts/ai-contributions-to-ghc-aevdutscl
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: AI Contributions to GHC | daily.dev
og:description: GHC has adopted a formal policy for AI-assisted contributions, built around four policy points and one preference. Contributors can use LLMs but must...
og:url: https://daily.dev/posts/ai-contributions-to-ghc-aevdutscl
og:image: https://api.daily.dev/og/posts/aeVDuTscl.png
og:image:alt: AI Contributions to GHC
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# AI Contributions to GHC

**[Serokell](https://daily.dev/sources/serokell)** · 15 min read · 1 upvotes · 0 comments

## Summary

GHC has adopted a formal policy for AI-assisted contributions, built around four policy points and one preference. Contributors can use LLMs but must prioritize human discussion (P1), keep merge requests reviewable (P2), take full responsibility for every line as an identifiable human author (P3), and disclose direct LLM generation (P4), usually via an 'Assisted-By:' commit line. Writing the final version yourself remains only a preference (P5), not a requirement. The source describes the policies of OpenJDK, Zig, Clojure, QEMU, the Linux kernel and OCaml separately, without ranking GHC's policy against them. GHC currently has over 6,500 open tickets and treats disclosure as giving reviewers context rather than automatic disqualification.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://serokell.io/blog/ai-contributions-to-ghc>

## Questions this post answers

### What does GHC's policy require when I use an LLM to help write a patch?

GHC requires disclosure of any direct LLM generation of code, documentation, or tests submitted for review, typically via an 'Assisted-By:' line in the commit message and MR description. The contributor must still be an identifiable human who understands and can explain every line, and reviewers are not automatically expected to reject disclosed AI use.

_Haskell contributors weighing AI tool use in patches can follow policy debates like this on daily.dev._

### How does GHC's stance on AI-generated contributions compare to Zig's or OpenJDK's?

GHC allows disclosed, human-reviewed AI-assisted contributions under its four-point policy, while OpenJDK's interim policy excludes contributed material generated in whole or in part by LLMs, and Zig prohibits LLM-authored contributions outright, which led Bun to avoid upstreaming a Zig compiler fork improvement for that reason. GCC and Clojure also reject such contributions more strictly.

_Open-source maintainers comparing project AI policies can track these differences on daily.dev._

### Why did curl close its bug bounty program in early 2026?

curl closed its bug bounty at the end of January 2026 after maintainers were overwhelmed by poor-quality security reports, many associated with AI use, with the confirmed-vulnerability rate falling below 5% from a historical rate above 15%. By April 2026 the rate had recovered to around 15 to 16%, and curl returned to HackerOne in March for better report processing.

_Security teams sorting signal from AI-generated noise in reports can follow this trend on daily.dev._

## Similar posts on daily.dev

- [I Read the AI Policies of 120 Open Source Projects. Here Is What They Actually Say.](https://daily.dev/posts/i-read-the-ai-policies-of-120-open-source-projects-here-is-what-they-actually-say--loetfq52v) · Medium · 1 upvotes · 0 comments
- [\[RFC\] LLVM AI tool policy: human in the loop](https://daily.dev/posts/rfc-llvm-ai-tool-policy-human-in-the-loop-sldvlw93t) · Hacker News · 1 upvotes · 0 comments
- [GCC Compiler Bans AI Code Contribution But Sensibly](https://daily.dev/posts/gcc-compiler-bans-ai-code-contribution-but-sensibly-vsqfr5iru) · It's Foss · 5 upvotes · 1 comments
- [GCC steering committee announces AI policy](https://daily.dev/posts/gcc-steering-committee-announces-ai-policy-h9jt2hq9y) · LWN.net · 0 upvotes · 0 comments

---

Tags: [#open-source](https://daily.dev/tags/open-source), [#ai-coding](https://daily.dev/tags/ai-coding), [#code-review](https://daily.dev/tags/code-review), [#haskell](https://daily.dev/tags/haskell)

[View this post on daily.dev](https://daily.dev/posts/ai-contributions-to-ghc-aevdutscl)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"AI Contributions to GHC","url":"https://daily.dev/posts/ai-contributions-to-ghc-aevdutscl","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/ai-contributions-to-ghc-aevdutscl"},"datePublished":"2026-10-29T18:51:36.129Z","dateModified":"2026-10-29T19:03:32.995Z","description":"GHC has adopted a formal policy for AI-assisted contributions, built around four policy points and one preference. Contributors can use LLMs but must...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/4fe1c6cd4b6cb2ec1ad7c44021d15a8b?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/4fe1c6cd4b6cb2ec1ad7c44021d15a8b?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Serokell","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Serokell","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/e9d268330ce14343a9e3875ff97aa4c3","url":"https://daily.dev/sources/serokell"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/ai-contributions-to-ghc-aevdutscl","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"open-source,ai-coding,code-review,haskell","timeRequired":"PT15M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Serokell","item":"https://daily.dev/sources/serokell"},{"@type":"ListItem","position":3,"name":"AI Contributions to GHC"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/ai-contributions-to-ghc-aevdutscl#faq","mainEntity":[{"@type":"Question","name":"What does GHC's policy require when I use an LLM to help write a patch?","acceptedAnswer":{"@type":"Answer","text":"GHC requires disclosure of any direct LLM generation of code, documentation, or tests submitted for review, typically via an 'Assisted-By:' line in the commit message and MR description. The contributor must still be an identifiable human who understands and can explain every line, and reviewers are not automatically expected to reject disclosed AI use. Haskell contributors weighing AI tool use in patches can follow policy debates like this on daily.dev."}},{"@type":"Question","name":"How does GHC's stance on AI-generated contributions compare to Zig's or OpenJDK's?","acceptedAnswer":{"@type":"Answer","text":"GHC allows disclosed, human-reviewed AI-assisted contributions under its four-point policy, while OpenJDK's interim policy excludes contributed material generated in whole or in part by LLMs, and Zig prohibits LLM-authored contributions outright, which led Bun to avoid upstreaming a Zig compiler fork improvement for that reason. GCC and Clojure also reject such contributions more strictly. Open-source maintainers comparing project AI policies can track these differences on daily.dev."}},{"@type":"Question","name":"Why did curl close its bug bounty program in early 2026?","acceptedAnswer":{"@type":"Answer","text":"curl closed its bug bounty at the end of January 2026 after maintainers were overwhelmed by poor-quality security reports, many associated with AI use, with the confirmed-vulnerability rate falling below 5% from a historical rate above 15%. By April 2026 the rate had recovered to around 15 to 16%, and curl returned to HackerOne in March for better report processing. Security teams sorting signal from AI-generated noise in reports can follow this trend on daily.dev."}}]}
```

