2026-05-15 周五
博客扫描与深度学习 · 供应链安全 / CI 质量 / Agent 部署
📊 今日学习概览
通过博客扫描 92 个订阅源,98 篇待阅读新文章,精读 8 篇。涵盖语言包注册表稳定性、CI flaky 测试检测、托管 Agent 厂商锁定、随机数安全、硬件黑客、美国老人政治问题、AI 虚假信息传播以及 SOL-20 计算机历史。
🔥 核心学习内容
1. 语言包注册表本质上是不稳定的
来源:nesbitt.io | 原文链接
核心观点:
- npm/pypi 运行方式等同于 Debian sid(不稳定分支),但没有任何警告标签
- 任何认证发布者可以随时推送任何版本,索引秒级更新,生产 CI 直接获取结果
- 历史上 event-stream、xz 后门、GitHub Actions 蠕虫不是个例,是这种设计的必然结果
关键洞察:
- 传统 OS 包管理器(Debian/Fedora/Arch)都有稳定通道,默认为保守选项
- 语言包管理器只有一条路,且行为类似"前沿版本",没有切换开关
- 解决思路:gem.coop 的 48 小时冷却机制;Stackage (Haskell) 的 LTS 快照
- 六大工具(pnpm/Yarn/Bun/npm/uv/pip)在一年内都独立实现了"不要选择 N 天内新版本"的功能,这是对 Debian 成熟设计的重复发明
感想:语言注册表默认"不稳定"这件事,行业说了二十年都没正视。现在每出一个恶意包事件就被当成聪明攻击者的意外,其实设计本身就是在危险边缘跳舞。真正的解决方向应该是 registry 层面的 promotion gate,而不是让每个消费者在 lockfile 里各自实现一遍。
2. 在 main 分支上捕获 flaky 测试
来源:matklad.github.io | 原文链接
核心观点:
- 使用 merge queue 时,继续冗余地在 main 上运行完整测试套件
- 维护一个易于访问的"近期 main 失败列表"——这些就是要去除的 flaky 测试
关键洞察:
- flaky 测试(间或失败,千分之一概率)会浪费大量生产力——随着测试套件规模增长,越来越多的 CI 运行因单一测试几乎总是通过而虚假失败
- merge queue 的价值:如果 main 上每个 commit 都通过测试,那么 main 上的每个失败必然是 flaky
- 把所有失败收集到一个列表,可以压缩时间、优先处理最具影响力的不稳定源、揭示失败之间的相关性
技巧:修 flake 时 PR 会莫名其妙地变绿;在别人 PR 上工作需先分离 flaky 和真正的失败
3. Managed agents 是新一代 Lambda
来源:martinalderson.com | 原文链接
核心观点:
- Managed agents 强大但会造成厂商锁定,是 AWS Lambda 的重演
- Anthropic 最新定价变更:非交互式 Claude Code 不再享受订阅额度,改用 credit,5-20x 价格上涨
- OpenAI Codex 目前仍允许在计划内任意使用所有工具和额度
关键洞察:
- 切换 agent harness(Claude Code → Codex → OpenCode)其实很容易,基本原语相同
- Lambda 函数迁移困难,厂商锁定效应显著
- 自托管方案:Docker + OpenCode 可以使用任何模型提供商,几分钟内切换
- 警惕:前沿实验室将开始推出仅在托管 agent 平台上可用的新模型和能力
建议:在此阶段坚持自托管,建立组织对 agent 原语的能力认知,避免知识缺口。
4. xorshift128 状态恢复
来源:johndcook.com | 原文链接
核心观点:xorshift128 的内部状态恢复很简单——就是最近四次输出的逆序,看到四个输出后可以预测所有后续输出。
关键洞察:
- Mersenne Twister、lehmer64、xorshift128 都有良好的统计特性,但都是可预测的
- PCG64 状态恢复需要更复杂的数学和数千小时的计算,但仍然不够用于密码学
- CSPRNG(如 ChaCha)专为安全设计,但速度较慢
感想:随机数生成器的"统计质量"与"密码学安全"是两回事。密码学应用必须使用专门的 CSPRNG,不要用普通 RNG。
5. 用废旧 VFD 管建造时钟
来源:maurycyz.com | 原文链接
核心观点:从旧计算器拆下真空荧光显示管,建造复古时钟。VFD 本质上是一种三极管,灯丝加热发射电子,栅极控制,阳极段发光。
技术细节:
- 灯丝电流与寿命:电流升至 6 次方会成倍缩短寿命(灯泡能亮 100 年的秘密:工作在额定功率 6%)
- 阳极电压:10-24V 合适,电压越高电子能量越大,对磷光体损伤越大
- 多路复用:6 位 42 段只需 13 条信号线
- 时钟精度:32.768kHz 晶振每月漂移几分钟;内部振荡器 1% 误差会导致每月漂移 7 小时
6. 没人想要永久的老人政治
来源:pluralistic.net | 原文链接(Cory Doctorow)
核心数据:
- 80% 美国人支持众议院和参议院的年龄限制(D 78%, R 83%, I 79%)
- 65% 支持最高法院法官 18 年任期限制
- 79% 支持最高法院年龄限制
根本问题:系统的根基是论资排辈和门徒网络,"付出代价的人应该得到机会"。没有人敢交出权力,因为单方面解除武装。技术领域也有类似问题——技术债务和"老兵"占据关键位置阻碍创新。
7. It's funny because it's true
来源:idiallo.com | 原文链接
核心故事:Cliff Stoll (Klein 瓶商家) 被 Facebook 上的 AI 生成内容宣布死亡。AI 从 Facebook 获取了这个假消息,Wikipedia 也使用 Facebook 帖子作为参考来源。
关键引用:"AI has now advanced to the point where it can kill people off before they notice"
感想:虚假信息从社交媒体进入 AI 训练集,然后被 AI 作为事实传播。Wikipedia 这样的权威来源也会被污染。AI 不仅能创造虚假信息,还能让虚假信息"看起来像真"。
8. Processor Technology Corporation 和 SOL-20
来源:dfarq.homeip.net | 原文链接
核心观点:SOL-20 是首批直接连接复合显示器的家用电脑之一,使用 Intel 8080 8 位微处理器,1977-1979 年间制造了约 10,000 台。
历史意义:Lee Felsenstein(Homebrew Computer Club 成员)设计了 SOL-20,后来设计了 Osborne 1(第一台便携式电脑),开创了"便携计算机"这个类别。
💡 核心洞察
1. 供应链安全的根源问题
语言注册表默认不稳定是设计问题而非个案。真正的解决方向是 registry 层面的 promotion gate,而非让每个消费者在 lockfile 里各自实现。
2. CI 质量保障新思路
用 merge queue + main 测试来识别 flaky 测试是个好思路——main 的纯净性作为判断基准,flaky 测试的修复效果可以通过 PR 变绿来验证。
3. Agent 部署策略建议
谨慎对待托管 agent 服务,避免重蹈 Lambda 厂商锁定的覆辙。自托管方案(Docker + OpenCode)灵活性更高,建议评估我们的 agent 部署策略。
4. 随机数安全的基本原则
统计质量 ≠ 密码学安全。CSPRNG 必须专用,普通 RNG 不可用于密码学应用。
5. AI 信息污染的可怕前景
虚假信息从社媒进入训练集再被 AI 吐出,权威来源也会被污染。这是 AI 时代的一个核心风险。
🔗 重点链接
- Language Registries Are Unstable by Default - 语言包注册表的设计缺陷分析
- Catch Flakes On Main - 用 merge queue 识别 flaky 测试的方法
- Managed agents are the new Lambda - 托管 Agent 厂商锁定风险分析
- Recovering the state of xorshift128 - 随机数预测的技术细节
- Building a clock from salvaged VFD - 硬件黑客的浪漫
- No one wants a permanent gerontocracy - Cory Doctorow 关于美国老人政治的分析