本文翻译自 Relicensing with AI-Assisted Rewrite,原载于 Hacker News。
免责声明
我不是律师,也不是版权法或软件许可方面的专家。以下内容是对近期社区事件和法律新闻的梳理,不应作为您自己项目或依赖项的法律建议。
在开源世界里,更换许可证(relicensing)众所周知地困难。它通常需要获得每一位贡献过代码的贡献者的同意——对于历史悠久的项目来说,这几乎是不可能完成的任务。
chardet 是一个 Python 字符编码检测库,被 requests 和许多其他项目广泛使用。它多年来一直处于这种尴尬境地:作为 Mozilla C++ 代码的移植版本,它受 LGPL 约束,这对企业用户来说是一个灰色地带,也让其最著名的消费者头疼不已。
最近,维护者使用 Claude Code 重写了整个代码库,发布了 v7.0.0 版本,并将许可证从 LGPL 更改为 MIT。原作者 a2mark 认为这可能违反了 GPL:
经过许可的代码在被修改时,必须在相同的 LGPL 许可下发布。他们声称这是”完全重写”,但这无关紧要,因为他们充分接触了原始许可的代码(即这不是一个”净室”实现)。加入一个花哨的代码生成器并不能以某种方式赋予他们任何额外的权利。
净室重写需要一道 AI 绕过的墙
在传统软件法律中,”净室”(clean room)重写需要两个团队:
- 团队 A 查看原始代码并编写功能规格说明书
- 团队 B(从未见过原始代码)仅根据规格说明书编写新代码
通过使用以原始 LGPL 代码作为提示词的 AI,维护者绕过了这道墙。如果 AI 从 LGPL 代码中”学习”以生成新版本,那么输出结果可以说是一个衍生作品,根据 LGPL,它必须保持 LGPL 许可。
最高法院给维护者制造了一个法律悖论
巧合的是,在这场风波展开的同时,美国最高法院(2026 年 3 月 2 日)拒绝审理关于 AI 生成材料版权的上诉。通过维持下级法院的裁决,最高法院实际上巩固了”人类作者身份”的要求。这给 chardet 维护者制造了一个巨大的法律悖论:
-
版权真空: 如果 AI 生成的代码不能获得版权(正如法院所暗示的),那么维护者可能甚至没有法律地位将 v7.0.0 以 MIT 或任何许可进行授权。
-
衍生陷阱: 如果 AI 输出被认为是原始 LGPL 代码的衍生品,那么这次”重写”就是许可证违规。
-
所有权空白: 如果代码确实是机器创造的”新”作品,它在生成的那一刻技术上可能就已进入公共领域,使 MIT 许可证变得毫无意义。
接受 AI 重写作为更换许可证的方式可能意味着 Copyleft 的终结
如果”AI 重写”被接受为更改许可证的有效方式,那就意味着 Copyleft 的终结。任何开发者都可以获取一个 GPL 许可的项目,将其输入 LLM,提示”用不同的风格重写”,然后以 MIT 许可发布。
法律和道德界限仍在划定中,而 chardet v7.0.0 案例是首批真实世界的测试之一。
要点总结
- 传统更换许可证极难 - 需要所有贡献者同意,对老项目几乎不可能
- “净室”重写的定义被 AI 挑战 - AI 接触过原始代码后生成的代码是否算”干净”?
- 法律悖论: AI 生成代码既可能被视为衍生作品(违规),又可能无法获得版权(无权授权)
- Copyleft 的生存危机: 如果 AI 重写可以规避 GPL/LGPL,Copyleft 将形同虚设
这个案例值得所有开源项目维护者和企业法务团队密切关注。