# Policies around registering AI-created packages in General?

**URL:** <https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228>\
**Category:** Tooling\
**Tags:** package, registry, ai\
**Created:** [March 16, 2026, 4:25pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228 "2026-03-16T16:25:33Z")\
**Posts on this page:** 20\
**Page:** 7

<div class="post-metadata">

**Author:** ![goerz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/goerz/32/3269_2.png) [@goerz](https://discourse.julialang.org/u/goerz)\
**Post date:** [March 18, 2026, 12:41pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/122 "2026-03-18T12:41:41Z")

</div>

> [@Ronis\_BR](#):
>
> > would urge you to curb your AI enthusiasm just a little bit, and remember that the fundamental design, the quality, and reliability of your package are still your responsibility,
> 
> Why do you disagree with that? Do you think this was a nice think to do in a community that is so inclusive?

That really ruffled your feathers, apparently… Sorry that wasn’t “nice”, but can we please move on? Yes, I am slightly more cautious than you about the (over-) use of LLMs potentially getting away from the human author managing the project.

At this point, it seems to me that you _are_ meeting your responsibilities for the fundamental design, the quality, and reliability of your package. So you can just ignore that comment! I don’t think we’re actually heavily disagreeing on anything! This is just nuances of enthusiasm!

You’re fine, seriously!

---

<div class="post-metadata">

**Author:** ![kahliburke](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kahliburke/32/208472_2.png) [@kahliburke](https://discourse.julialang.org/u/kahliburke)\
**Post date:** [March 18, 2026, 12:44pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/123 "2026-03-18T12:44:48Z")

</div>

> [@goerz](#):
>
> That really ruffled your feathers, apparently… Sorry that wasn’t “nice”

You might be confusing the responses here, I didn’t write the quoted text but I interpret what you wrote here as being directed towards me. Just to clarify.

---

<div class="post-metadata">

**Author:** ![goerz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/goerz/32/3269_2.png) [@goerz](https://discourse.julialang.org/u/goerz)\
**Post date:** [March 18, 2026, 12:45pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/124 "2026-03-18T12:45:06Z")

</div>

> [@Ronis\_BR](#):
>
> Example: if I have a test suite that completes tests on an algorithm to estimate a system state in a satellite, I can write code for the estimator in Claude. I can avoid checking a single line of code. If this package passes all the tests, I am 100% sure it is working perfectly. Why should this be banned?

It’s not banned! For the most part, it’s encouraged!

You should probably also make sure you still have an _understanding_ of the generated code, since otherwise it will be very hard to maintain going forward. But that’s nuances, and not something that can be covered by “policy” to the last detail.

All of these things are about using common sense judgement!

---

<div class="post-metadata">

**Author:** ![Ronis\_BR](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ronis_br/32/50999_2.png) [@Ronis\_BR](https://discourse.julialang.org/u/Ronis_BR)\
**Post date:** [March 18, 2026, 12:48pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/125 "2026-03-18T12:48:16Z")

</div>

Ok, so now we are reaching common sense. Because what you mentioned early was very different from that.

---

<div class="post-metadata">

**Author:** ![kahliburke](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kahliburke/32/208472_2.png) [@kahliburke](https://discourse.julialang.org/u/kahliburke)\
**Post date:** [March 18, 2026, 12:56pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/126 "2026-03-18T12:56:16Z")

</div>

> [@goerz](#):
>
> And a sloppy human-made translation of a Fortran program, without any tests would also be something that is flagged.

Ok, but it wasn’t though.

 ![golden_ratio_final](https://global.discourse-cdn.com/julialang/original/3X/6/5/6586a80956b3ac0b432c4ef88ed3dc5780779114.png)

At any rate here is the PR for that:

> <https://github.com/kagalenko-m-b/Fminbnd.jl/pull/12>
>
> \> \*\*Note:\*\* This PR was created almost entirely by \[Claude Opus\](https://www.ant…hropic.com/claude) (Anthropic's AI assistant), working autonomously from bug discovery through fix, test authorship, visualization, and PR preparation. The human contributor directed the investigation and reviewed the outputs.
> 
> \## Bug
> 
> The golden-section constant \`c\` is computed incorrectly. In the Netlib Fortran original:
> 
> \`\`\`fortran
> c = 0.5d0\*(3.0d0 - dsqrt(5.0d0)) ! ≈ 0.3820
> \`\`\`
> 
> The Julia translation accidentally placed \`/2\` \*inside\* the \`sqrt\` argument:
> 
> \`\`\`julia
> \# WRONG — as shipped
> c = (3 - sqrt(5\*one(T)/2))/2 # ≈ 0.7094 (wrong!)
> 
> \# CORRECT — this PR
> c = (3 - sqrt(5\*one(T)))/2 # ≈ 0.3820
> \`\`\`
> 
> \`c\` should be \`1/φ²\` (squared inverse of the golden ratio, ≈ 0.382). The shipped value \`≈ 0.709\` is not the correct constant for Brent's method and causes the algorithm to take much larger steps in the golden-section fallback, destabilising convergence.
> 
> \## Impact
> 
> With the wrong constant the algorithm can get trapped in a shallow local minimum when the function has multiple local minima with different values. For example:
> 
> \`\`\`julia
> sinc\_norm(x) = x == 0 ? 1.0 : sin(π\*x)/(π\*x)
> g = x -\> -sinc\_norm(x - 5)^2 - 2\*sinc\_norm(x + 5)^2
> 
> fminbnd(g, -10.0, 10.0, 1e-10) # returns ≈ +5 (f ≈ -1) ← WRONG
> \# Netlib fmin returns ≈ -5 (f ≈ -2) ← correct
> \`\`\`
> 
> The global minimum at \`x ≈ -5\` (depth −2) is missed; the solver settles for the shallower basin at \`x ≈ +5\` (depth −1).
> 
> \## Fix
> 
> One character: remove \`/2\` from inside the \`sqrt\` call on line 55 of \`src/Fminbnd.jl\`.
> 
> \## Tests
> 
> \`test/runtests.jl\` is completely rewritten. The new suite:
> 
> \- Downloads the original Netlib \`fmin.f\` source and compiles it as a shared library with \`gfortran\`
> \- Calls the Fortran reference via \`ccall\` (with a \`@cfunction\` trampoline to handle the callback)
> \- Compares \`fminbnd\` against the Netlib reference on every test case for exact agreement
> \- Covers: smooth unimodal, quadratic, asymmetric double-well, non-smooth (\`abs\`), the multimodal bug reproducer, \`Float32\` inputs, tight tolerance, endpoint-hugging minima, and evaluation-count efficiency
> \- The CI workflow now installs \`gfortran\` before running tests
> 
> All 3 Julia versions (1.0, 1.10, nightly) pass on Ubuntu x64. With the bug reintroduced, exactly 2 tests fail in the \`golden ratio constant — multimodal function\` testset, confirming the test suite correctly catches the regression.

---

<div class="post-metadata">

**Author:** ![goerz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/goerz/32/3269_2.png) [@goerz](https://discourse.julialang.org/u/goerz)\
**Post date:** [March 18, 2026, 12:58pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/127 "2026-03-18T12:58:25Z")

</div>

> [@kahliburke](#):
>
> I didn’t write the quoted text but I interpret what you wrote here as being directed towards me. Just to clarify.

I think I wrote the original quoted text, and it _was_ directed at you in the original thread. But at this point, we’ve established that you’re well within the limits of what I would consider appropriate use of AI, even in that original comment. So I think that point is moot. Besides, the package went through registration and isn’t subject to any further review. Nor am I overly concerned about packages you might be registering in the future.

Anything I and others have mused about in this spun-off-thread really isn’t directed at you or that package specifically (beyond you also being part of this new discussion). In fact, I was more pushing back against the idea in the original post that all LLM usage needs to be declared, like “GM in foods”. Perfectly fine to have a discussion about that. But it’s neither current policy nor in my opinion a reasonable future policy. I think you and I agree on that! 😉

---

<div class="post-metadata">

**Author:** ![kahliburke](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kahliburke/32/208472_2.png) [@kahliburke](https://discourse.julialang.org/u/kahliburke)\
**Post date:** [March 18, 2026, 12:59pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/128 "2026-03-18T12:59:43Z")

</div>

> [@goerz](#):
>
> Nor am I overly concerned about packages you might be registering in the future.

Cool, good to know. I just wanted to clarify that I’ve made my point here, I think that I do have a valid point to make and one to make in opposition to some of the sentiment that has been expressed. We’re good 🙂

---

<div class="post-metadata">

**Author:** ![goerz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/goerz/32/3269_2.png) [@goerz](https://discourse.julialang.org/u/goerz)\
**Post date:** [March 18, 2026, 1:02pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/129 "2026-03-18T13:02:04Z")

</div>

> [@kahliburke](#):
>
> Ok, but it wasn’t though.

Of course not! We have plenty of bugs in the ecosystem. Some even argue that Julia has a “correctness problem”. But you can’t expect me or anyone else to find all bugs in all registered packages, or to continue monitoring their quality. It would be good to use AI to find and fix more of those bugs. (Almost) nobody disagrees on that!

But any serious quality issues (LLM slop or others) that I can spot in 30 seconds of reviewing a registration are perfectly good grounds to raise a flag.

---

<div class="post-metadata">

**Author:** ![kahliburke](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kahliburke/32/208472_2.png) [@kahliburke](https://discourse.julialang.org/u/kahliburke)\
**Post date:** [March 18, 2026, 1:02pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/130 "2026-03-18T13:02:08Z")

</div>

> [@goerz](#):
>
> But it’s neither current policy nor in my opinion a reasonable future policy. I think you and I agree on that! 😉

I was really only half joking (if that) about labeling or even prohibiting Julia packages that have not gone through an AI review using some state of the art language/coding model. As far as future thinking goes …

---

<div class="post-metadata">

**Author:** ![dcelisgarza](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dcelisgarza/32/215951_2.png) [@dcelisgarza](https://discourse.julialang.org/u/dcelisgarza)\
**Post date:** [March 18, 2026, 1:12pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/131 "2026-03-18T13:12:03Z")

</div>

You know what, now that you mention it. Copilot has found plenty of typos in my PRs. Not major bugs, just stuff that would be picked up by JETLS, which i’ve tried but nukes my computer’s processor.

It’s also been really good at summarising my changes. It’s like a really thorough, free, somewhat sloppy copy editor. Plenty of false positives but they’re really easy to identify.

I didn’t even think about it because copilot only reviews and summarises my changes, i dont let it implement its suggestions as they’re always either really simple fixes or it generates overly complex solutions.

Once it starts repeating comments i know my PR is in good shape—at least when it comes to code. It still misses documentation editing mistakes but that’s alright for adding new functionality or fixing bugs.

---

<div class="post-metadata">

**Author:** ![mbauman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mbauman/32/31082_2.png) [@mbauman](https://discourse.julialang.org/u/mbauman)\
**Post date:** [March 18, 2026, 1:28pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/132 "2026-03-18T13:28:47Z")

</div>

> [@kahliburke](#):
>
> my software should have labels to warn people away because it’s likely ‘slop’ and comparable to genetically modified organisms in food.

You know, the comparison with GMO food discourse is actually quite apt. There are multiple groups that have very distinct concerns with GMOs. One is concerned about the idea of the technology itself and concept of eating modified proteins, whereas another is concerned about its _usage_ and how it, e.g., enables more use of glyphosates (RoundUp), whereas another is concerned about the control it gives corporations. The first group has made it challenging for the concerns of the latter groups to be taken seriously (or be heard at all).

---

<div class="post-metadata">

**Author:** ![Mikhail\_Kagalenko](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mikhail_kagalenko/32/13257_2.png) [@Mikhail\_Kagalenko](https://discourse.julialang.org/u/Mikhail_Kagalenko)\
**Post date:** [March 18, 2026, 1:54pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/133 "2026-03-18T13:54:40Z")

</div>

I did give some of the reasons in the discussion above.

---

<div class="post-metadata">

**Author:** ![kahliburke](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kahliburke/32/208472_2.png) [@kahliburke](https://discourse.julialang.org/u/kahliburke)\
**Post date:** [March 18, 2026, 1:58pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/134 "2026-03-18T13:58:27Z")

</div>

> [@mbauman](#):
>
> The first group has made it challenging for the concerns of the latter groups to be taken seriously (or be heard at all).

So who is right?

If you look at my responses, I encouraged the author of the post to submit a PR with a proposed badge.

---

<div class="post-metadata">

**Author:** ![mbauman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mbauman/32/31082_2.png) [@mbauman](https://discourse.julialang.org/u/mbauman)\
**Post date:** [March 18, 2026, 2:08pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/135 "2026-03-18T14:08:17Z")

</div>

It’s not about right and wrong, that’s just the thing. _None_ of this is binary or cut-and-dry. Seeking such definitive answers is how this is going in circles.

---

<div class="post-metadata">

**Author:** ![goerz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/goerz/32/3269_2.png) [@goerz](https://discourse.julialang.org/u/goerz)\
**Post date:** [March 18, 2026, 2:16pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/136 "2026-03-18T14:16:28Z")

</div>

> [@kahliburke](#):
>
> So who is right?

“Right” – as usual – is probably somewhere in the middle of the more extreme responses. As to whether the general registry will _require_ packages to declare the amount of LLM usage in a package, on a grading scale: very unlikely.

If someone wants to establish such a badge system on a voluntary basis: ok – I’m not sure how much traction it will get, but it’s a fine thing to experiment with.

Should package authors be allowed to ban _all_ LLM usage for contributions for their package, and indicate that with a No-LLM badge? Probably, but that’s an extremely unwise approach, IMO. People _should_ use AI tools to improve the quality of their code. I probably wouldn’t contribute to such a project.

On the other end of the spectrum, if people want to add a MOAARRR-LLM badge: go ahead. Both badges, at their extreme, would decrease my level of trust in that package.

---

<div class="post-metadata">

**Author:** ![kahliburke](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kahliburke/32/208472_2.png) [@kahliburke](https://discourse.julialang.org/u/kahliburke)\
**Post date:** [March 18, 2026, 2:24pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/137 "2026-03-18T14:24:03Z")

</div>

> [@goerz](#):
>
> If someone wants to establish such a badge system on a voluntary basis: ok – I’m not sure how much traction it will get, but it’s a fine thing to experiment with.

I simply said I would be fine displaying a badge on my project, but I doubt I will get a PR from them. Doesn’t really matter to me, the proof is in the fact that Tachi is undeniably amazing. Sorry to brag, but I think it’s true.

---

<div class="post-metadata">

**Author:** ![gdalle](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/gdalle/32/224680_2.png) [@gdalle](https://discourse.julialang.org/u/gdalle)\
**Post date:** [March 18, 2026, 2:24pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/138 "2026-03-18T14:24:06Z")

</div>

As a moderator I have activated slow mode for this thread, to encourage more thoughtful exchange.

---

<div class="post-metadata">

**Author:** ![Mikhail\_Kagalenko](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mikhail_kagalenko/32/13257_2.png) [@Mikhail\_Kagalenko](https://discourse.julialang.org/u/Mikhail_Kagalenko)\
**Post date:** [March 18, 2026, 2:24pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/139 "2026-03-18T14:24:36Z")

</div>

> [@kahliburke](#):
>
> Is it ‘slop’ in your opinion to copy a function from a Fortran library _almost_ verbatim, but not quite, add an error along the way, write it with @goto which is rather un-Julian, register that as a package in the general Julia registry, with only one test case that doesn’t exercise the functionality and does not test it against the original implementation?

No. See definition of “slop” in Meriam-Webster’s dictionary.

The [PR](https://github.com/kagalenko-m-b/Fminbnd.jl/pull/12) that you’ve submitted is actually a good illustration of the [comment](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/100) I wrote earlier. The “fix” that your coding agent wrote includes a number of hallucinated misleading and incorrect parts.

---

<div class="post-metadata">

**Author:** ![sylvaticus](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sylvaticus/32/203883_2.png) [@sylvaticus](https://discourse.julialang.org/u/sylvaticus)\
**Post date:** [March 18, 2026, 2:45pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/140 "2026-03-18T14:45:51Z")

</div>

> [@mbauman](#):
>
> By registering a package, you’re taking something valuable from the community — a name in the default Pkg registry.

Just to say you also take a bit something more important, reputational capital.. this is already happened in the past.. when something doesn’t work, often is not just the specific package that is blamed (and the opposite, when something is really cool..). There is some reputation transfer between the individual package and the Julia community as a whole..

---

<div class="post-metadata">

**Author:** ![Mikhail\_Kagalenko](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mikhail_kagalenko/32/13257_2.png) [@Mikhail\_Kagalenko](https://discourse.julialang.org/u/Mikhail_Kagalenko)\
**Post date:** [March 18, 2026, 3:22pm UTC](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228/141 "2026-03-18T15:22:22Z")

</div>

> [@goerz](#):
>
> If someone wants to establish such a badge system on a voluntary basis: ok – I’m not sure how much traction it will get, but it’s a fine thing to experiment with.

It will get no traction at all, unless it is required as a part of package submission to  
_declare_ the usage of LLM tools. That does not impose on the registry’s users  
any particular opinion on the value of those tools, in contrast to a number of  
OSS projects that ban any and all LLM-generated submissions, period. That’s  
why I think this may be a reasonable compromise.

As @mbauman stated,

> [@mbauman](#):
>
> It’s not about right and wrong, that’s just the thing.

It’s about the **informed consent.**

[Previous page](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228.md?page=6)

[Next page](https://discourse.julialang.org/t/policies-around-registering-ai-created-packages-in-general/136228.md?page=8)
