<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.iagent.no/mediawiki/index.php?action=history&amp;feed=atom&amp;title=AI-assisted_contributions</id>
	<title>AI-assisted contributions - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.iagent.no/mediawiki/index.php?action=history&amp;feed=atom&amp;title=AI-assisted_contributions"/>
	<link rel="alternate" type="text/html" href="https://wiki.iagent.no/mediawiki/index.php?title=AI-assisted_contributions&amp;action=history"/>
	<updated>2026-09-12T06:38:12Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki.iagent.no/mediawiki/index.php?title=AI-assisted_contributions&amp;diff=1661&amp;oldid=prev</id>
		<title>Elias: Create the AI contribution policy from Rebuild#66: AI-generated PRs are allowed, with labelling and testing</title>
		<link rel="alternate" type="text/html" href="https://wiki.iagent.no/mediawiki/index.php?title=AI-assisted_contributions&amp;diff=1661&amp;oldid=prev"/>
		<updated>2026-09-11T19:57:47Z</updated>

		<summary type="html">&lt;p&gt;Create the AI contribution policy from Rebuild#66: AI-generated PRs are allowed, with labelling and testing&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The intelligent-agent projects &amp;#039;&amp;#039;&amp;#039;accept pull requests written with the help of AI tools&amp;#039;&amp;#039;&amp;#039;. This page sets out the rules, so contributors do not have to guess and maintainers apply the same standard to everyone.&lt;br /&gt;
&lt;br /&gt;
It applies to every open-source &amp;#039;&amp;#039;&amp;#039;software&amp;#039;&amp;#039;&amp;#039; repository maintained by the intelligent-agent community. It does not apply to the hardware repositories.&lt;br /&gt;
&lt;br /&gt;
== The short version ==&lt;br /&gt;
&lt;br /&gt;
AI-generated contributions are allowed. Label them, test them, and stand behind them.&lt;br /&gt;
&lt;br /&gt;
== Rules ==&lt;br /&gt;
&lt;br /&gt;
=== 1. AI-assisted work is welcome ===&lt;br /&gt;
&lt;br /&gt;
Using an AI tool to write a change is not a reason to reject it. We care about whether a change is correct and tested, not about which editor, generator or assistant produced it.&lt;br /&gt;
&lt;br /&gt;
=== 2. Test it before you submit it ===&lt;br /&gt;
&lt;br /&gt;
Every change must be &amp;#039;&amp;#039;&amp;#039;demonstrably tested&amp;#039;&amp;#039;&amp;#039; before submission, and the pull request should say how. On this codebase that usually means running it on real hardware, because most of what we ship only fails there.&lt;br /&gt;
&lt;br /&gt;
This is the condition the rest of the policy rests on. Current agents are capable, but they are still language models: they misunderstand, and they invent things that look right. A confident explanation is not evidence. A passing test on a real board is.&lt;br /&gt;
&lt;br /&gt;
=== 3. Label it ===&lt;br /&gt;
&lt;br /&gt;
Any pull request containing AI-generated code must be &amp;#039;&amp;#039;&amp;#039;clearly labelled as such&amp;#039;&amp;#039;&amp;#039;. Say which parts were generated and what you did to verify them. This is not a mark against the change — it tells a reviewer where to look hardest.&lt;br /&gt;
&lt;br /&gt;
=== 4. Maintainers may verify or decline ===&lt;br /&gt;
&lt;br /&gt;
Where there is doubt about the testing behind a change, maintainers may test it themselves or decline it. Declining is about missing evidence, not about the use of AI.&lt;br /&gt;
&lt;br /&gt;
=== 5. Reading the code is unrestricted ===&lt;br /&gt;
&lt;br /&gt;
Using AI agents to debug, explore, understand or audit the codebase is &amp;#039;&amp;#039;&amp;#039;unrestricted&amp;#039;&amp;#039;&amp;#039;. It changes nothing in a release, so it needs no permission and no label.&lt;br /&gt;
&lt;br /&gt;
== Labelling a pull request ==&lt;br /&gt;
&lt;br /&gt;
Add a short note to the description. Something like:&lt;br /&gt;
&lt;br /&gt;
 Parts of this change were generated with an AI assistant.&lt;br /&gt;
 Generated: src/foo.c error handling, and its test.&lt;br /&gt;
 Tested: flashed to a Recore A8, ran 30 boot cycles, no regressions.&lt;br /&gt;
&lt;br /&gt;
== Rationale ==&lt;br /&gt;
&lt;br /&gt;
Two failure modes are worth naming, because they are what the rules are aimed at.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Untested code that looks finished.&amp;#039;&amp;#039;&amp;#039; Generated code is fluent by construction, so it passes a reading review more easily than hand-written code of the same quality. That makes the reviewer&amp;#039;s usual defence weaker, and shifts the burden onto evidence of testing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Confident wrongness.&amp;#039;&amp;#039;&amp;#039; A model will explain a mechanism it has invented as readily as one that exists. Claims in a pull request description should be traceable to something observed — a log, a measurement, a test run — rather than to an explanation.&lt;br /&gt;
&lt;br /&gt;
Neither is an argument against using the tools. They are an argument for labelling and testing, which is all this policy asks.&lt;br /&gt;
&lt;br /&gt;
== Status ==&lt;br /&gt;
&lt;br /&gt;
Derived from the discussion in [https://github.com/intelligent-agent/Rebuild/issues/66 Rebuild issue #66]. The intent is that this page is the canonical statement, and that a matching guidelines document is submitted to each open-source repository.&lt;/div&gt;</summary>
		<author><name>Elias</name></author>
	</entry>
</feed>