乐于分享
好东西不私藏

当源码泄露遇上自动化删除

当源码泄露遇上自动化删除

Anthropic 的工程师在 4 月 1 日点下”执行”按钮后的 48 小时内,数千个与 Anthropic 毫无关系的 GitHub 仓库被 DMCA 删除请求带走了。这些仓库的维护者收到通知时,大多数人的第一反应是:我的代码里根本没有 Anthropic 的东西,为什么会被删?

Anthropic 随后承认这是自动化脚本的失误。源码泄露后,他们启动了批量 DMCA 删除流程,但脚本的匹配逻辑出了问题,把大量无关仓库也标记成了侵权目标。

这不是一次简单的操作失误。它暴露了一个更深层的问题:当危机处理依赖自动化工具时,容错机制的缺失会把局部失误放大成系统性灾难。

自动化工具压缩了判断窗口

传统的 DMCA 删除流程是这样的:法务团队逐个审查疑似侵权内容,确认后再提交删除请求。这个过程慢,但有多层人工校验。

Anthropic 选择的是批量自动化:脚本扫描 GitHub,匹配特征码,生成删除列表,一键提交。整个流程可能只需要几分钟,但人的判断窗口被压缩到了接近零。

问题出在匹配逻辑上。如果脚本依赖的是代码片段的哈希值或关键字,那么任何包含相似代码结构的仓库都可能被误判。更糟的是,一旦脚本开始执行,就很难中途叫停——GitHub 的 DMCA 处理是自动化的,收到请求后会立即下架内容。

这意味着,从脚本启动到仓库被删除,中间几乎没有人工干预的机会。Anthropic 的工程师可能在看到第一批误删报告时才意识到出了问题,但那时候已经有数千个仓库被波及了。

误伤范围不是线性的

有人会说,这只是一次操作失误,修复就好了。但自动化工具的误伤范围不是线性的——它不会因为你只犯了一个小错误,就只删掉一个仓库。

手动删除的话,就算判断错了,最多误删几个、十几个。但自动化脚本一旦逻辑有问题,误删数量是按批次计算的。Anthropic 这次波及的是”数千个”仓库,这个量级已经不是”失误”能解释的了,它更像是系统性风险。

更麻烦的是修复成本。被误删的仓库需要逐个申诉,GitHub 需要逐个审核,Anthropic 需要逐个撤回 DMCA 请求。这个过程可能需要几天甚至几周,而在这期间,那些仓库的维护者只能等着。

对于个人开发者来说,仓库被删可能意味着项目暂停、用户流失、甚至失去工作机会。对于企业来说,可能意味着生产环境依赖的代码库突然消失。这些代价不是 Anthropic 一句”我们正在恢复”就能抹平的。

反面论证:为什么不能怪”操作失误”

有人会说,这就是一次操作失误,任何公司都可能犯错,不应该过度解读。

但问题在于,Anthropic 选择使用自动化工具本身就是一个决策。他们可以选择慢一点、谨慎一点,用人工审核的方式处理 DMCA 请求,但他们没有。

为什么?因为源码泄露是紧急事件,他们需要尽快把泄露的代码从互联网上清除。自动化工具能在最短时间内覆盖最大范围,这是它的优势。但这个优势的代价是:一旦出错,影响范围也是最大的。

这不是”失误”,这是”权衡”。Anthropic 选择了速度,放弃了精度。他们可能预判了误删的风险,但低估了误删的规模。

更深层的问题是,AI 公司在危机处理上越来越依赖自动化工具,但容错机制并没有跟上。自动化工具的设计逻辑是”快速响应”,而不是”谨慎响应”。这在平时可能没问题,但在危机时刻,这种设计会把小问题放大成大灾难。

边界:什么时候该用自动化

自动化工具不是不能用,但要看场景。

如果是低风险、高重复性的任务,比如批量更新文档、自动化测试,自动化工具是合适的。但如果是高风险、低容错的任务,比如删除他人的代码仓库,自动化工具就需要更严格的约束。

Anthropic 这次的问题在于,他们把高风险任务交给了低容错的工具。DMCA 删除请求一旦提交,就很难撤回,这本身就是一个高风险操作。在这种情况下,自动化工具应该只负责”筛选”,而不是”执行”。最终的删除决策应该由人来做。

但 Anthropic 显然没有这样设计。他们的脚本不仅负责筛选,还负责提交删除请求。这意味着,从匹配到删除,整个流程都是自动化的,没有人工校验的环节。

这不是技术问题,这是流程设计问题。

下一个承压的是信任修复

Anthropic 现在面临的不只是技术修复,还有信任修复。

被误删的开发者会怎么看 Anthropic?他们会觉得这是一家”为了自己的利益可以随意删除别人代码”的公司。即使 Anthropic 后来道歉、恢复仓库,这个印象也很难消除。

更广泛的影响是,开源社区会怎么看 AI 公司?如果 AI 公司在危机时刻的第一反应是”用自动化工具大规模删除”,那么开源社区会不会开始警惕 AI 公司?会不会开始质疑 AI 公司对开源生态的态度?

这不是 Anthropic 一家的问题。所有 AI 公司都在面临类似的挑战:如何在保护自己的知识产权和维护开源生态之间找到平衡。如果他们选择的是”自动化删除”这种简单粗暴的方式,那么信任损耗是不可避免的。

下一个要盯的是,Anthropic 会怎么重建信任。他们会不会公开自动化脚本的逻辑?会不会承诺以后不再使用类似的工具?会不会对被误删的开发者做出补偿?

这些问题的答案,会决定 Anthropic 在开源社区的长期声誉。