发布于

2026-第三十六周

作者

该周报主要为各个地方内容的汇总整理

技术

智能体代码质量

在 AI 智能体大规模编写代码的时代,传统人工审查已无法扩展,代码质量取决于你在智能体周围设置的约束与质量门。通过自动化检查、背压机制和有选择地投入人类注意力,才能在高速交付中守住质量底线。

  • 🤖 智能体生成的代码量远超人工可读范围,质量必须依赖环境、工具和约束来把关,而非逐行人工审查。
  • 🧪 质量门形式多样,包括单元测试、属性测试、验收测试、变异测试,以及圈复杂度等可读性指标,决定提案能否被接受。
  • ⚠️ 智能体在信息缺失或任务模糊时可能失败,环境需要提供可信反馈、低损害失败模式和渐进式成功路径。
  • 🛡️ 信任必须靠约束与验证来赢得,不能盲目接受智能体的意图或输出,正确性始终需要检查。
  • 👁️ 人类注意力是稀缺资源,应聚焦于最需要判断力的复杂问题,只在自动化护栏失效时介入。
  • 📊 软件质量不是单一指标,而是正确性、可维护性、性能、安全、效率、可理解性等多维信号的集合。
  • 🔁 背压应贯穿整个流水线,从编译器、测试、安全策略到 CI 部署,而不是到最后才做一次终审。
  • ⚖️ 当变更量超过验证容量时,可扩展验证系统、降低生成速率或调整质量条,也可在低风险处放宽约束以提升吞吐。
  • 🎯 在关键处施加强约束,在无关处放松,平衡创新与质量,并始终保持人类对最终决策的责任。

工具

更新

Zod 4.5

  • ⚡ 全新 z.compile() 可预编译任意 schema,解析速度提升约 3–9 倍,并支持全局自动编译(import "zod/compile")。
  • 💳 新增 z.creditCard() 字符串格式,校验 12–19 位数字及 Luhn 校验和。
  • 🧩 新增 z.properties(),可对 z.instanceof() 等多属性 schema 批量添加检查。
  • 📦 恢复 z.deepPartial() 函数形式,支持深层可选字段,并保持 ZodObject 特性。
  • 🎯 新增 .exactPartial(),字段键可省略但显式 undefined 会被拒绝,匹配 TS 的 exactOptionalPropertyTypes
  • ✅ 新增 z.validate() 快速布尔校验,无效输入时比 .safeParse() 快最多 16 倍。
  • 🔄 新增 z.input() / z.output(),可独立验证 codec 的输入/输出侧。
  • 🏷️ 新增 z.toZod<T>(),帮助定义与静态类型完全一致的 schema。
  • 🍎 新增 z.getDiscriminatedOption(),按判别值提取联合成员。
  • 🔁 递归 schema 现支持循环输入(Zod Mini 需显式注册 memoizer)。
  • 🧠 Schema 内存占用减少 9 倍(z.string() 从 7.5kb 降至 784 bytes)。
  • .safeParse() 失败路径不再捕获堆栈,速度提升约 7.5 倍。
  • 🔑 z.object() 支持 symbol 键,TS 推断为 unique symbol 且必填。
  • 🐛 多项破坏性修复:z.iso.datetime() 强制要求秒、字符串长度按 Unicode 码点计算、record 键与 TS 对齐、__proto__ 始终剔除、IP/ULID/URL/emoji 等格式更严格。
  • 🌍 新增 8 种语言区域:孟加拉语、中库尔德语、印地语、卡纳达语、新挪威语、巴西葡萄牙语、斯洛伐克语、土库曼语。
  • 🤝 汇总 155 个提交,感谢所有贡献者。

设计

其他

责任是先主动承担,而非等他人给予 - Lalit Maganti

文章指出,在大型科技公司中,晋升的关键不是等待别人赋予你责任,而是主动在现有范围内展示判断力与担当。责任是“先被实践,后被授予”的——通过模仿技术负责人的思维、逐步建立信任,你才能在正式头衔到来之前,成为真正的“所有者”。

  • 🏢 在 Big Tech 晋升通常需要展示“所有权”,但很多初级工程师误以为必须等经理先给任务。
  • 🔄 核心观点:责任是先被证明、之后才被正式授予,顺序不能颠倒。
  • 🤔 技术负责人是否敢“给”你责任,取决于你能否用他认可的方式(或更好)处理问题。
  • 🧠 作者通过反复琢磨 TL 的思考过程,并主动用那些方法检验自己的方案,逐渐提升了判断力。
  • 📊 实例:作者曾认为三个数据结构无关,TL 坚持它们都是“表”,最终这个抽象演变成 Perfetto 上百张表的基础。
  • ✅ 信任建立后,作者开始自己设定议程、与用户沟通、决定改进方向,甚至能反驳 TL 的建议。
  • 🏅 最终,TL 从“做工具的人”改口称他为“工具的所有者”,责任被正式认可。
  • 🚫 这并不等于抢项目或踩别人,而是在自己的职责范围内展现可靠判断,避免越界。
  • ⚠️ 在糟糕的管理或政治环境中,这一策略可能失效。
  • ⏳ 正式责任是“滞后指标”:人们先信任并尊重你的判断,然后你才获得明确授权。
  • 🔑 责任是一点一点主动“拿走”的,而不是一次性“收到”的。

出卖自我

这篇文章探讨了“出卖自我”(selling out)在职场中的含义,特别是针对大型科技公司的软件工程师。作者认为,职业角色扮演并不必然导致马克思或情境主义者所说的“异化”,关键在于保持内心自主性与专业身份之间的平衡。文章分析了马克思、德波、范内格姆、萨特、波伏娃及美国社会学家的观点,指出真正的危险在于完全认同角色或承受长期 humiliation,而技术能力和权力可以缓解这种伤害。作者最终主张,在妥协与保持自我之间找到适合自己的位置,并认为这并非悲剧。

  • 🎭 出卖自我如今需要技术和组织运作知识,并非易事;保持纯粹正直则会付出职业与经济代价。
  • 📖 马克思的异化有四种含义:劳动增强雇主权力、与手艺分离、身心受损、心理上无法确认自我。
  • 💻 对科技从业者而言,前两种不适用,第三种不适用于软件工程,第四种最相关但马克思未深入心理机制。
  • 📺 情境主义者德波和范内格姆认为异化是角色扮演,会吞噬真实自我,但承认没人会被完全吞没,仍可挣脱。
  • 🧠 萨特和波伏娃的“自欺”指过度认真对待职业角色,将工作价值视为绝对,需要持续自我欺骗;但可以避免。
  • 🏢 美国社会学(米尔斯、戈夫曼)指出白领工作常令人屈辱,成为“标准化输家”和“小马基雅维利”,这种屈辱会累积伤害。
  • ⚖️ 存在一个妥协谱系:从完全认同公司目标到彻底抵抗,作者自己处于第二点(偶尔第三点),并建议保留独立价值观以防滑入第一点。
  • 🛡️ 职业人格与真实自我可以分离,只要保持心理距离;技术能力带来的权力是屈辱的解药。
  • 💰 每个人都需与“财神”谈判,决定用多少正直换取财富;若出卖不可避免,至少别白卖。