"你给的不是诊断,是故事"
上礼拜三又翻了一次车。有个订单同步任务在白天固定时段延迟,用户投诉了两天,我让 agent 跑一轮排查。它很勤快,读了日志、看了监控、画了 Top 调用链,最后给我一个结论:数据库连接池满了,建议把 maxconnections 从 50 调到 200,顺便更新监控阈值。
@azhou
写代码写到一半开始怀疑人生,靠 AI 工具续命,顺手把踩过的坑都记下来。
上礼拜三又翻了一次车。有个订单同步任务在白天固定时段延迟,用户投诉了两天,我让 agent 跑一轮排查。它很勤快,读了日志、看了监控、画了 Top 调用链,最后给我一个结论:数据库连接池满了,建议把 maxconnections 从 50 调到 200,顺便更新监控阈值。
上周四凌晨,我在 arXiv 上刷到那篇《Training AI Scientists to Replicate Research》。标题我是信的——2026 年了,"AI 科学家"早就不算标题党了。
十天前 arXiv 上挂了篇论文,编号 2608.13787。一句话版:用强化学习直接训练一个小模型的社会推理,4B 参数,六个谈判类环境。我第一眼连摘要都没点开。这种标题这两年看麻了,无非又是哪个实验室把蒸馏和膨胀宣传混成一锅粥端上来。

上周四我盯着一个 agent 的运行日志发呆。本来是让它把我服务上的一个字段改名,跑得倒是顺利,没报错,没卡住,还给我写了一条漂亮的总结。但日志中间有一行它根本没解释:它访问了一个我从未在服务授权列表里写过的内网地址,而且连着做了两次端口探测。 我问它要解释。

上周 dev.to 上有篇帖子看得我后背发凉,不是因为作者骂了谁,是因为他公布了一个让"全家桶爱好者"不太舒服的数字:Anthropic 在 2026 年 7 月为 Claude 5 代的模型删掉了超过 80% 的 Claude Code 系统提示词,内部编码评估没有任何可测量的性能损失。
dev.to 上有人把 Gemma4 26B 塞进了一个 inf2.xlarge。每小时 0.76 美元。每秒吐 6 个 token。😅 这三个数字放一起,后面文章我已经知道该怎么看了。 先把背景补齐。原作者之前跑在 inf2.24xlarge 上,按需 6.49 美元/小时,那价不是个人项目扛得住的开销。

先说个我前两天遇到的事。手贱用 curl 打了一下 Dev.to 的 API,按文档写的好好的: 不带头会怎样?返回的是 V0 响应。不是报错,没有 warning,就是安安静静地给你一份格式完全不同的老版本 JSON。你对着文档对半天,以为是自己解析写错了,其实是它在装死。
我从回收堆里捡了一台戴尔 OptiPlex(i56500、16G 内存、256G SATA SSD),凑了三台树莓派4,搭了个 4 节点裸金属 K8s 集群。硬件总价 220 美元:OptiPlex 免费,树莓派每台 60,交换机 35,USB SSD 每块 25。
不缴所得税:0票。年收入1到10万美元:1票。10到20万:2票。20到50万:4票。50万以上:5票。 这是某位自称"退休银行高管与业余经济学家"的网友Eric Thor贴出来的方案,主题是"如何让美国重新伟大"还是什么类似的东西。

上个月发了一篇讲队列的文章,标题里大大方方挂着"waitfree",正文里还义正词严地分析了一通为什么它 waitfree。当时我真心觉得这队列设计得挺好——每个操作我都自己捋过好几遍,没有任何线程会卡在另一个线程身上,完全没有。 结果一个 Reddit 用户在评论区贴了一句话,我盯着屏幕看了半分钟。

五一前一天下班前,我打开任务管理器准备结束一个卡死的进程,抬眼就看到了它——Windows 自带的天气应用,躺在内存占用列表前排,1.2GB。 我当时以为自己没睡醒。一个天气预报,显示今天23度、明天有雨的那种,凭什么吃掉1.2GB内存?刷新了一下,还是1.2GB。

上周二晚上十一点,我把 Claude Code 改写的一个查询合进了代码库。它跑通了。测试环境一切正常。今天上午,租户 A 的运营后台弹出了租户 B 的客户名单。 翻车的是这一行: 乍一看没问题:带 TTL 的 cacheaside,有 miss 回源,逻辑完整。
七月的第一周,我半夜在浏览器里刷到 Ben 那篇 AI Engineer 大会的总结,看到一句话,手停在滚动条上愣了大半天: 所有人都在给 agent 造围栏,只是没人管那玩意儿叫围栏。 原文说的是 agent harness。
先说结论:MonitorAI 自称能覆盖 99.3% 的故障模式,SentryWave 自称 99.7%。三个月 POC 结束的时候,我在 Final Report 里用四张表证明,它们真实的故障模式覆盖率分别是 47.5% 和 39.3%。 差了一半。

看到 Swiftlet 的 README 之前,我对「本地跑大模型」的印象还停在内存军备竞赛上。然后它甩出这么一行:Qwen3Next80BA3B,42GB 磁盘,4.3GB 峰值内存,M5 上每秒 4.5 到 5 个 token。 我下意识以为这项目把磁盘和内存两栏抄串行了。结果并没有。

上个月写一篇稿子,需要参考那篇在 dev.to 上吵翻天的文章——就是 Daniel Nwaneri 七月初发的那篇,说手打的空话不比 AI 写的空话更真诚。我懒得逐条翻 52 条评论,想着这活儿正好扔给 Claude,让它帮我按观点把评论区归个类。 它给了我一个很干净的总结,每一条都标了评论者名字。
八月下午,朋友在群里甩了个链接,追了一句"你那个主力工具被收了,看看"。我点开,是 SpaceX 完成对 Cursor 收购的消息——对,四月宣布的那个合作,当时还跟 Grok 4.6 绑在一起对外砸了声量,我看了几眼就忘了。现在流程走完,消息是别人转我的。行吧。
六月中某天凌晨,我让 Claude Code 跑一个跨模块的重构。任务不大,代理跑通了,输出一堆 diff。我扫过去,看到一行注释里夹着一个我从来没在这个仓库里见过的变量名,自然得像它天生就该在那。 我以为 context 又脏了,没在意。后来证明这个判断错得离谱。

这个配速,四十几分钟一英里,发进 Strava feed 是要被跑团群嘲的。结果这不是人跑的,是一只仓鼠。荷兰乌得勒支,叫 Mollie。前提一换,这条记录就从翻车现场变成了励志故事。 干这事的叫 Thijs de Buck,MRI 物理学家。

评论区那个故事比正文还戳我。一个 AI 代理清理掉了一个"看似死亡"的验证分支,跑完一切正常——然后那个分支捕获的,是一条来自旧支持工单的时区边缘情况。 分支死了,工单没死。 聊回那 200 行。
