---
title: "尽职编程：谁提交，谁负责"
author: "Shawn Jiang"
lang: zh
date: 2026-09-16
canonical: https://tplog.dev/zh/essay/due-diligence-programming/
translations:
  en: https://tplog.dev/en/essay/due-diligence-programming/
  ja: https://tplog.dev/ja/essay/due-diligence-programming/
---

# 尽职编程：谁提交，谁负责

AI 降低了写代码的成本，没有降低对代码负责的成本。

所谓「尽职编程」，就是谁提交，谁负责。

即使代码由 AI 生成，提交者仍然要对结果负责，不把本该自己承担的成本甩给别人。

这不是道德口号，而是一条责任边界。

## 谁对进入主干的代码负责

很多人谈 AI Coding，谈的是速度：代码写得更快，改得更快，也更快达到「看起来能跑」的状态。尽职编程关心的是另一件事：这段代码进入共享主干以后，谁对它负责。

AI 可以生成代码，可以修改代码，也可以运行检查。但合进仓库、开始影响别人的，是可运行的代码，不是你和模型的对话记录。

因此，尽职编程不是「更认真地写提示词」，也不是「少用 AI」。它只规定一件事：谁提交代码，谁就要对结果负责。责任不能外包给模型。

## 它反对的是甩锅自动化

「我只负责生成，质量归工具」听起来很现代，其实只是把责任藏进了自动化流程。

模型不会去值班，不会修复被它改坏的接口，也不会在评审会上替一套设计答辩。这些成本最终都会落到下游：评审的人、联调的人，以及被这次改动阻塞的人。

尽职，就是在提交以前先替他们挡过一轮。它不要求代码完美，但要求你能够明确地说：这段代码我看过，边界我清楚，出了问题来找我。

## 代码变便宜以后，负责更加稀缺

代码变便宜以后，人与人之间的产出差距反而会拉大。原因未必是谁的提示词更强，而是谁仍然对结果负责，谁只对一轮对话交差。

同样一个小时，有人交付的是「看起来像那么回事」，有人交付的是「我能在评审里站得住」。前者消耗协作带宽，后者节省协作带宽。

所以，尽职编程不只是个人修养，也是协作伦理和工程效率。你没有提前承担的检查、判断和修复，最后都要由别人补上。

## 自动化不等于无人负责

自动化成立的前提，是意图已经清楚，执行路径可以被约束。自动化可以帮你完成交付，不能帮你卸下责任。

你可以让 AI 写完百分之九十，甚至百分之百。但只要这段代码会进入共享空间、可能影响别人，提交者的责任就不会消失。全自动生成，不等于无人负责。

否则，得到的不是完整的自动化，而是一条把决策债和事故债留给团队的半自动流水线。

谁提交，谁负责。对他人负责，不把成本甩给别人。

AI 可以是笔，可以是手，也可以是检查器，但不能是替罪羊。

把事情办成，从来都比把对话完成更稀缺。而「办成」包含一件不时髦的事：你愿意为结果署名。
