Personally, without any legal aspect:
If you did a deep review and are happy with the changes in your cosebase:
go for it

Werner Punz <[email protected]> schrieb am Sa., 2. Mai 2026, 09:00:

> Hi guys, I spent the last two days working over the Ajax codebase,
> however, I used AI tooling starting from the typescript 5 to 6
> transition and ending up with about 100 testcases added
> and fixed one smaller bug after ai analysis in the XHR Response processing
> and several severe lifecycle bugs in the Websocket area!
>
> According to the ASL, AI tooling is allowed as long as there are
> disclosure markers and a disclosure file and as long as the changes stem
> from human prompts
> (Then it is seen as software tooling
> https://www.apache.org/legal/generative-tooling.html) I additionally
> despite having the code reviewed manually also ran two different AIs for
> GPL.. etc... breaches, but they came to the same conclusion, as I did this
> is original code based
> on what I already did before and based on my prompts. So from an ASF legal
> perspective this code would be clean.
>
> The added disclosure file would be (note substantial changes mostly are
> code cleanup after having the test coverage in place) and newly generated
> files have an ai marker
>
> # AI Contributions Disclosure
>
> In accordance with the [Apache Software Foundation policy on generative AI 
> tooling](https://www.apache.org/legal/generative-tooling.html), this file 
> discloses that portions of this project were created or substantially 
> modified with assistance from generative AI tools.
>
> ## Tool used
>
> **Claude** (Anthropic) — conversational AI coding assistant
>
> ## Scope
>
> All new source files and substantial modifications introduced from the 
> TypeScript 6 migration onwards (starting with commit `d609321`) were produced 
> with AI assistance. This covers both production source code and test code.
>
> ### Newly created files (AI-generated)
>
> - `src/main/typescript/@types/definitions/modules.d.ts`
> - `src/main/typescript/test/api/JsfPushShimTest.spec.ts`
> - `src/main/typescript/test/api/PushTypeCompatibility.ts`
> - `src/main/typescript/test/impl/AssertionsTest.spec.ts`
> - `src/main/typescript/test/impl/FileUtilsTest.spec.ts`
> - `src/main/typescript/test/impl/ResponseDataResolverTest.spec.ts`
> - `src/main/typescript/test/impl/util/ExtLangTest.spec.ts`
> - `src/main/typescript/test/impl/util/HiddenInputBuilderTest.spec.ts`
> - `src/main/typescript/test/xhrCore/WebsocketTest.spec.ts`
>
> ### Substantially modified files (AI-assisted)
>
> - `src/main/typescript/api/_api.ts`
> - `src/main/typescript/api/faces.ts`
> - `src/main/typescript/api/jsf.ts`
> - `src/main/typescript/impl/AjaxImpl.ts`
> - `src/main/typescript/impl/PushImpl.ts`
> - `src/main/typescript/impl/util/Assertions.ts`
> - `src/main/typescript/impl/util/AsyncRunnable.ts`
> - `src/main/typescript/impl/util/ExtDomQuery.ts`
> - `src/main/typescript/impl/util/FileUtils.ts`
> - `src/main/typescript/impl/util/HiddenInputBuilder.ts`
> - `src/main/typescript/impl/util/Lang.ts`
> - `src/main/typescript/impl/util/XhrQueueController.ts`
> - `src/main/typescript/impl/xhrCore/ErrorData.ts`
> - `src/main/typescript/impl/xhrCore/EventData.ts`
> - `src/main/typescript/impl/xhrCore/IResponseProcessor.ts`
> - `src/main/typescript/impl/xhrCore/RequestDataResolver.ts`
> - `src/main/typescript/impl/xhrCore/Response.ts`
> - `src/main/typescript/impl/xhrCore/ResponseDataResolver.ts`
> - `src/main/typescript/impl/xhrCore/ResponseProcessor.ts`
> - `src/main/typescript/impl/xhrCore/XhrFormData.ts`
> - `src/main/typescript/impl/xhrCore/XhrRequest.ts`
> - `src/main/typescript/myfaces/OamSubmit.ts`
> - `src/main/typescript/test/frameworkBase/_ext/monadish/DomQueryTest.spec.ts`
> - `src/main/typescript/test/frameworkBase/_ext/shared/StandardInits.ts`
> - `src/main/typescript/test/impl/util/ExtDomQueryTest.spec.ts`
> - `src/main/typescript/test/myfaces/OamSubmit.spec.ts`
> - `src/main/typescript/test/queue/AsynchronousQueueTest.spec.ts`
> - `src/main/typescript/test/xhrCore/ErrorChainTest.spec.ts`
> - `src/main/typescript/test/xhrCore/FakeWebsocket.ts`
> - `src/main/typescript/test/xhrCore/RequestTest.spec.ts`
> - `src/main/typescript/test/xhrCore/ResponseTest.spec.ts`
> - `src/main/typescript/test/xhrCore/TobagoFileUploadTest.spec.ts`
> - `src/main/typescript/test/xhrCore/XhrFormDataTest.spec.ts`
> - `src/main/typescript/@types/definitions/index.d.ts`
>
> ## Nature of AI assistanc
>
> The AI assistant was used interactively: the human author directed the work, 
> reviewed all output, made corrections, and approved each change before it was 
> applied. The AI did not commit code autonomously. All contributions remain 
> under the Apache License 2.0.
>
>
> The problem is now jus,t how is the projects point of view regarding such
> a commit, given we have companies using it, is such a commit
> allowed or not!
> If not then I will start from fresh manually with the transition to ts6, I
> know where the pitfalls are and also I now know the bugs, but this will
> take some time.
>
>
> Werner
>
>

Reply via email to