开源地理信息软件 QGIS 终于向汹涌的 AI 代码关上了大门。核心开发者 Nyall Dawson 提交的 PR #387 在 2026 年 10 月 7 日被正式合并,将提案 QEP 408 更新至 2.0 版,条文生效时间追溯至 2026 年 9 月 24 日。新规明确写道:严禁任何大语言模型、AI 或智能体辅助的代码贡献。凡事后被发现违规提交的代码将遭撤回,提交者也将面临项目权限制裁。

这不仅是一纸技术规范的修订,更是一场关于开源生存权的防御战。大模型把代码编写的边际成本压到了零,却把验证和纠错的重担毫无节制地推给了维护者。QGIS 的一刀切禁令表明,在开源公地被机器生成的平庸代码淹没之前,核心团队宁可牺牲潜在的生产力红利,也要守住人类审查者的心理防线。

零成本提交撞上审查雪崩:维护者的生存危机

QGIS 是全球应用最广的专业开源地理信息系统,采用 GPL v2+ 协议,底层承载着庞大而复杂的地理空间算法架构。此前项目执行的是 1.0 版政策,允许开发者在人工审查并主动披露的前提下使用 AI 工具。然而现实很快击碎了这种理想状态。大模型降低了写代码的门槛,却无法保证逻辑契合深层架构,大量看似可行实则千疮百孔的 Pull Request 潮水般涌入主代码仓库。

几秒钟生成的代码,需要耗费老手几个小时去排查架构漏洞(示意图)
几秒钟生成的代码,需要耗费老手几个小时去排查架构漏洞(示意图)

讨论期间,核心团队积压了约 100 个 PR 的审查队列。维护者 Dawson 指出,去逐行甄别一段代码究竟经过深思熟虑,还是仅仅依靠大模型生成的表面修补,给团队带来了荒谬且巨大的负担。2026 年 4 月 11 日,Dawson 在开发者邮件列表中写下了一句沉重的警告:照顾好那些把多年生命奉献给开源的人,否则你将失去他们。面对无休止的机器产物,资深开发者消耗殆尽乃至彻底退出,正在演变成不可逆的现实危机。

PR 生产与审查的成本不对称机制 AI 贡献者端 提示词生成代码 边际成本趋近于零 生产成本:极低 核心维护者端(瓶颈) 甄别深层架构缺陷与逻辑幻觉 承担法律、版权与回归漏洞风险 审查负担:无穷大(精力透支)
生成代码只需几秒钟,排查一段隐蔽的架构逻辑漏洞却要耗尽老手几个小时。

一位名为 Amalvir 的贡献者在 PR 讨论区坦言,自己曾提交过两个借助 AI 修复回归缺陷的请求,原本以为通过大模型提示词快速搞定了问题,后来才意识到这打破了贡献者与审查者之间的信任契约。在复杂软件工程中,大语言模型容易制造出人人皆可修 Bug 的幻觉,却把最沉重的检验成本转嫁给了原本就人手匮乏的维护团队。

从特权争议到无差别封禁:开源平等的艰难妥协

这场禁令并非一蹴而就,它经历了一场漫长且激烈的社区治理博弈。议题最早始于 2026 年 3 月 31 日 Dawson 在邮件列表发起的讨论。最初他的提议相对温和,试图建立双轨制:仅禁止非核心开发者的 AI 贡献,允许对代码库有深度了解的核心成员继续酌情使用辅助工具。

社区最终放弃了核心成员特权,选择对所有AI代码实施一刀切封禁(示意图)
社区最终放弃了核心成员特权,选择对所有AI代码实施一刀切封禁(示意图)

然而,这套区分身份的设想遭到了 Even Rouault 和 Julien Cabieces 等开发者的强烈质疑。反对者认为,给核心圈子开设 AI 特权不仅违背了开源项目基本的平等原则,还会人为切断新手通过贡献逐步成长为骨干的路径。更关键的现实在于,技术上根本无法百分之百可靠地检测未经披露的 AI 代码。如果核心成员可以用、新手不能用,既无法落实技术鉴别,又在社区内部制造了身份特权。

2026 年 9 月 15 日,面对辨伪难题,Dawson 甚至一度激进地提议新贡献者必须提供生命迹象证明,例如通过小额捐赠或线下会面来证明自己是真实的人类参与者。这一提议因门槛过高未被写入最终文本。但社区达成的共识非常明确:要么全放开,要么全封杀。最终,公平诉求倒逼政策滑向最严厉的终点——不论资历深浅,主仓库一律封杀 AI 代码。

QGIS AI 政策演进轨迹(2026 年) 3 月 31 日 初探双轨制 拟仅限非核心成员 4 月至 9 月 社区激辩 特权质疑与生命证明争议 10 月 7 日合并 QEP 428 定稿 全员一刀切绝对禁止

撕裂的开源阵营:防线还是闭门羹?

在对待 AI 工具的态度上,开源世界正在迅速分化出截然不同的阵营。QGIS 的邻近项目各执一词,展现了软件工程对代码信赖机制的不同理解。

不同开源项目对待AI代码的态度分化为全封、限缩与设限三道门禁(示意图)
不同开源项目对待AI代码的态度分化为全封、限缩与设限三道门禁(示意图)
项目名核心政策口径典型限制措施
QGIS全面禁止(QEP 408 v2.0)违规撤回代码,限制贡献权限
GDAL有限度允许严禁氛围编程(vibe-coding),强制声明
Blender允许辅助但设限禁止用于 Good First Issues,维护者一票否决

同处地理空间数据领域的底层依赖库 GDAL 选择了精细化限缩,只允许自动补全等机械重构,且严厉禁止未经深入理解的氛围编程,要求一切 AI 介入必须明确披露。三维创作开源项目 Blender 则采取实用主义取向,允许开发者借力 AI,但明确把此类工具挡在入门级新手任务之外,防止机器流水线抢占新人的学习路径。

相比之下,QGIS 选择了最不妥协的决绝姿态。这种硬性切割为项目筑起了安全护城河,也直接拉高了普通开发者的参与门槛。对于希望借 Copilot 或 Claude 快速提效的现代开发者而言,QGIS 仓库正变得前所未有地严苛。

  • 风险.在缺乏可靠机器鉴别手段的技术现实下,一刀切禁令本质上是一份防君子不防小人的社会契约,难以杜绝高度隐蔽的代码渗透。

禁令落地后,核心维护者暂时卸下了应对机器垃圾代码的重压,下游商业 GIS 机构也获得了更确定的主干稳定性。但这一动作留给整个开源软件界的拷问依旧尖锐:当编程工具不可逆地全面智能化,严防死守究竟能维系多久脆弱的人类契约?这个答案,不仅关乎 QGIS,更关乎整个开源协作体系在智能时代的存续形态。