意图升值

我的博客

AI 时代工程师的稀缺资产:定义可验证的意图。

方法 · 2026-08-17

TDD 没有死,它升级成了「驱动意图」

反直觉:传统 TDD 验证实现,Agent 时代的 TDD 首先是验证理解。

先复习一下传统 TDD

经典的三步是「红 - 绿 - 重构」:

  • :先写一个失败的测试——它定义了「成功长什么样」
  • 绿:用最简实现让测试通过
  • 重构:在测试保护下改进结构

这套方法的本质,是把模糊的意图翻译成可验证的断言,然后让代码去对齐断言。

vibe coding 的最大风险:跳过「红」

Agent 编码时代,很多人进入了「vibe coding」——把需求丢给模型,看结果差不多就收工。最大的风险恰恰是省略「红」阶段:

  • 「写测试麻烦」是人最想偷懒的地方
  • 但 Agent 生成的代码,恰恰最需要测试兜底
  • 没有测试,你就无法区分「看起来对」和「真的对」

当你省掉「红」,其实是在把「成功」的定义交给模型自己——这是把最稀缺的环节外包出去了。

测试在 Agent 时代多了一层作用

传统上,测试是用来验证实现的:我写的代码对不对?在 Agent 时代,测试多了一个更底层的作用:

测试失败 = 意图传达失败。

也就是说,测试不再只是检验「实现是否匹配意图」,它同时检验「模型是否真的理解了我的意图」。红阶段写的不是代码,而是你对成功的定义。这是反直觉的一层转变:红阶段从「写失败测试」变成了「把模糊的期望物化成一个可判对错的标准」。

  • 传统 TDD:验证实现
  • Agent 时代 TDD:首先验证理解,其次才验证实现

迁移规律:什么升值,什么贬值

把传统工程思想放进 Agent 时代,一条规律很清楚:

一切「定义可验证边界 + 建立反馈机制」的思想都在升值;一切「手写实现的机械细节」都在贬值。
  • 升值组:TDD、代码评审(从 review 代码转向 review 意图 / 输出)、git / 版本控制(Agent 时代的记忆与回滚,ground truth 所在)、CI/CD(自动验证 = 给 Agent 的环境反馈)、需求工程 / 规格说明
  • 形态转化组(从「人读」变「模型读」):注释 / 文档 → 上下文信号(AGENTS.md);架构 / 模块化 → 信息架构(上下文分割);DDD 限界上下文 → 上下文窗口管理;敏捷迭代 → Agent 工作流
  • 贬值组:设计模式死记、防御性编程的措辞防御、微优化细节

心态转换:从「项目阶段」到「实时旋钮」

传统编程里,「需求想清楚」「写验收标准」「给对上下文」是项目前置阶段的一次性产物;Agent 时代它们变成了每一轮对话的实时输入——是每次生成之前影响质量的旋钮:

  • 意图一旦写错,会污染后续所有生成
  • 反馈粒度从「阶段」变成「即时」
  • 多了一层「传达验证」:验证模型是否真的理解你

所以别练「prompt 措辞」,练三件不贬值的事:

  • 把需求想清楚
  • 定义可验证的成功标准
  • 给对上下文

一句话

TDD 没有被 vibe coding 淘汰,它从「驱动开发」升级成了「驱动意图」。传统编程也没有被淘汰,而是精华被拎出来升值、噪音被 AI 吃掉——你缺的从来不是写代码的手,而是定义「成功」的能力。