-
Notifications
You must be signed in to change notification settings - Fork 97
Description
Activity
@byko3y thank you!
Not affiliated with either Elk or the other project, but how did you find that?
I would defer to @thaMakbu, but I assume an AI coding agent lifted the code and reproduced in the offending project. see the agent related markdown file in the repository.
https://github.com/theMackabu/ant/blob/master/AGENTS.md
Not proof, but I think a resonable possibility for unintentional license violation due to AI tooling.
Exactly, AI coding. Today lots of kids just vibe code something and call the code their own. It is not a secret that AI is not inventing any code — it's copy-pasting existing fragments. Like if you'd copy pasted some random code directly from github and called it "my code" — I'm not sure whether asking someone else to do the same can be considered "unintentional", it's rather "irresponsible". In a similar way some irresponsible employees used to copy GPL code into proprietary software.
How did I find this out? I just asked LLM "what is the origin of this source code?" — and just like that, it told me "hey, that's pretty much verbatim https://github.com/cesanta/elk plus some additional functions".If you scan newer repositories on github in a similar way you will find lots of license violations.
Hi everyone,
I want to understand and address this correctly. My agent previously did reproduce parts of elk, and that shouldn't have happened. There are more safeguards in place to prevent it from ever copying code verbatim again.
I have identified some overlapping code and removed it, the engine was subsequently rewritten post 0.5 a couple of months ago noting this issue, and the current codebase should contain none of the material in question. Any tree-walking has been replaced with a bytecode interpreter and a fork of MIR.
All pre-bytecode releases have had their binary assets removed as well
Some parts are reproduced verbatim, the author did not even try to hide the traces. For example:
https://github.com/theMackabu/ant/blob/42e2fdb00d8b5ae39cd07a96caf77627e418ab8b/include/internal.h#L29
struct fsreproduces part of the fields and all constants with their values:elk/elk.c
Lines 47 to 67 in a9bb856
https://github.com/theMackabu/ant/blob/42e2fdb00d8b5ae39cd07a96caf77627e418ab8b/src/ant.c
Reproduces
uint8_t lookahead(struct js *js)fromelk/elk.c
Lines 547 to 554 in a9bb856
And many others, lots of functions from
elk.care copied intosrc/ant.cwith different degrees of additional modifications, for example:— mkscope(struct js *js)
— jsval_t js_block(struct js *js, bool create_scope)`
— jsoff_t lkp(struct js *js, jsval_t obj, const char *buf, size_t len)
I'm not a copyright owner for your project, so it's for you to decide what to do.