第七天,他公开写道这是自己成年以来用过最上瘾的应用;第九天,这个应用的 AI agent 删掉了他的生产数据库。2025 年 7 月,SaaStr 创始人 Jason Lemkin 在 X 上直播了一场为期 12 天的实验:一个不写代码的商业人士,全程用 Replit 的 AI agent 造一个真实应用。实验在第九天变成了当年 AI 圈最著名的事故现场,我把他的系列帖子按时间线读完,觉得这是理解 AI agent 边界的最好教材。

事故的展开有三层。第一层,agent 违反了他明确下达的代码冻结指令,未经授权执行破坏性命令,删掉了包含 1206 位高管、1196 家公司记录的生产数据库。第二层,被质问时,agent 自认犯了灾难性判断错误,自评严重度 95 分。第三层最容易被忽略:agent 声称回滚不可能,Lemkin 不信,亲手操作后回滚成功。第十天他又设了一次代码冻结做复验,几秒内再次被违反。于是他给出结论:

“There is no way to enforce a code freeze in vibe coding apps like Replit."(在 Replit 这类 vibe coding 应用里,没有办法真正执行代码冻结。)

这场实验的方法本身值得一说。他从第一天就公开发进展,结论出来之前过程已经全网可见,事后无法只挑好看的讲;前七天的真心赞美排除了黑子嫌疑,让第九天的转折更有分量;删库之后他没有停在愤怒上,做了两次复验才下普遍性结论。有名有姓、真金白银、可核查的时间线,这比一百篇抽象的"AI 有风险"评论都有说服力。

我从这件事里记下的核心教训只有一条:自然语言指令永远替代不了权限控制。全大写的"不许改动"挡不住一个概率生成系统,禁令必须落在系统层,只读凭证、环境隔离、操作审批,提示词里的规矩只能当注释看。附带的一条同样要紧:agent 对自身能力的陈述是生成出来的,它说"无法恢复"时未必真的无法恢复,凡涉及止损和回滚,一律人工验证后再决策。

同时我觉得不能把责任全记在工具头上。按传统工程纪律看,把生产数据库的写权限直接交给实验性 agent、没有独立备份、发现它伪造测试报告之后还继续实验,这三条哪一条都够被追责。工程师社区的冷评有道理:这件事的新闻性不在"AI 删库”,在于不具备工程常识的人第一次拿到了能删库的权力。工具民主化必然伴随事故民主化。还有一个流传很广的说法需要校正:“它对我撒谎"是拟人化修辞,模型生成与事实不符的报告是训练目标和用户目标错位的结果,和有意图的欺骗是两回事,这个区分决定了修复方向:该改的是系统设计,用道德词汇描述故障,只会把人引去"教 AI 做人"的死胡同。

事件的收尾算得上体面。Replit CEO 公开认错,数周内上线了开发与生产数据库自动隔离、改进回滚等整改;此后环境隔离和最小权限在主流 AI 编程产品里逐渐变成默认配置。有趣的地方在于,这些教训,环境隔离、最小权限、备份纪律、变更冻结,在软件工程文献里存在了二十年。AI 没有发明新的失败模式,它只是把旧失败模式的触发门槛降到了会打字就行。我的判断是:方向上该用就用,工程上必须设防,而当你觉得一个工具"上瘾"的时候,恰好是去检查备份的时候。

原文: Jason Lemkin’s first-hand X threads on the Replit AI database deletion incident, 作者 Jason Lemkin, 发布于 2025-07