Skip to content

AI 开发质量门

这份文件解决一个问题:什么时候可以进入下一步,什么时候必须停下来补信息、补设计或补测试。

AI 辅助开发最容易出问题的地方,不是不会写代码,而是跳过了关键确认点。需求没确认就设计,设计没确认就写代码,代码没验证就交付,最后容易变成"看起来完成了,现场一跑就出问题"。

质量门适用于中高风险任务(通信、数据库、线程、真实设备、正式交付)。低风险小改(拼写、按钮位置、简单样式)可以跳过,不用走完整质量门流程。

1. 总原则

每个阶段都要回答三个问题:

  1. 当前阶段的输入够不够。
  2. 当前阶段的输出能不能被人检查。
  3. 进入下一阶段会不会带着明显风险。

如果答案不清楚,就不要进入下一阶段。

1.1 先选协作模式

质量门不是要求所有任务都走重流程。每次开始前,先判断用哪种 AI 协作模式。

模式适合任务AI 可以做什么必须限制什么
自主发挥模式需求模糊、低风险小改、初步方案、普通页面调整反推问题、给方案、拆任务、建议材料不直接大改代码,不替用户确认高风险需求
详细模板模式新项目、大功能、通信、数据库、线程、真实设备、交付验收按模板整理需求、设计、任务、验收不跳过确认,不把推测当要求

切换规则:

  1. 一开始不知道怎么说,可以先用自主发挥模式。
  2. AI 一旦要写代码、改通信、改数据库、改线程或碰真实设备,就切到详细模板模式。
  3. 小改可以保持自主发挥模式,但要有最便宜验证。
  4. 出现返工、误改、需求不清或影响范围扩大时,立刻切到详细模板模式。

推荐 Prompt:

text
请先判断本任务应该用“自主发挥模式”还是“详细模板模式”。

如果是自主发挥模式,请先根据我的自然语言目标反推方案、需要的材料和最小任务拆解。
如果是详细模板模式,请按需求、设计、任务、风险、验收逐步输出,不要直接写代码。

任务如下:
【描述目标或问题】

2. 备份与可恢复性门

AI 辅助开发有风险。它可能误改文件、扩大修改范围、删除原有逻辑,甚至在编码异常、工具异常或误操作时把文件改坏。上位机项目往往包含通信、协议、配置、日志、界面和发布文件,一旦改乱又没有备份,恢复成本会很高。

所以,在让 AI 修改任何代码、XAML、配置、项目文件或交付文档之前,必须先确认“能恢复”。

2.1 推荐备份方式

方式推荐程度说明
Git / GitHub / Gitee强烈推荐最适合长期项目,可以查看差异、回退版本、保留修改历史
本地压缩包备份推荐适合不会 Git 的用户,修改前把整个项目复制或压缩一份
Skill 自带本地文件备份推荐host-computer-dev Skill 写入前会做本地备份,适合降低 AI 改坏文件的风险
只靠“撤销”不推荐多文件修改、工具自动写入或关闭软件后可能无法恢复

2.2 最低要求

进入代码修改前,至少满足下面任意一种:

  1. 项目已经纳入 Git,并且当前状态已经提交或至少确认工作区变更可区分。
  2. 已经把整个项目复制到一个备份目录。
  3. 已经把项目压缩成一个备份包。
  4. 使用 host-computer-dev Skill,并确认它会在写入前创建本地备份。

如果是正式交付、真实设备、数据库、协议、线程、项目文件或大量 UI 修改,建议同时使用 Git 和本地备份。

2.3 修改前检查表

检查项是否通过备注
当前项目能否恢复到修改前是 / 否Git 提交、压缩包、复制目录或 Skill 备份
是否知道本次 AI 预计修改哪些文件是 / 否不知道就先让 AI 做影响分析
是否禁止 AI 顺手大改无关文件是 / 否明确写进 Prompt
是否能查看修改差异是 / 否Git diff、工具差异视图或人工对比
是否有回滚方法是 / 否出问题后怎么恢复

2.4 推荐给 AI 的备份提示

text
在修改代码前,请先检查当前项目是否有 Git 或可恢复备份。

要求:
1. 不要直接大面积修改文件。
2. 先列出预计修改文件和影响范围。
3. 如果支持本地备份,请先为即将修改的文件创建备份。
4. 修改后请列出实际修改文件。
5. 请说明如果改坏了,应该如何恢复。

如果使用 host-computer-dev Skill,可以补一句:

text
请按 host-computer-dev 的写入安全流程执行,写入前创建本地 RecoverySnapshot,修改后做回读检查。

3. 阶段质量门总览

text
问题定义 -> 需求确认 -> 技术方案 -> 实现计划 -> 代码修改 -> 回归验收 -> 发布交付 -> 复盘沉淀
阶段主要产物可以进入下一步的条件不能继续的情况
问题定义用户、场景、痛点、成功标准目标和非目标说清楚只知道“做个软件”,不知道谁用、为什么用
需求确认第一版/第二版需求方案已区分明确要求、AI 推测、待确认项关键流程、设备、数据或验收标准不清楚
技术方案架构、模块、通信、数据、线程方案模块边界和高风险点明确直接让 AI 建项目或写大段代码
实现计划文件范围、修改步骤、回滚思路影响范围明确,任务可拆小,备份方式明确一次改 UI、通信、数据库、日志多个方向
代码修改最小 patch 或增量实现修改只覆盖计划内范围,修改前已有可恢复备份顺手重构、扩大范围、替换无关代码
回归验收回归清单、验收记录关键正常路径和异常路径通过只看编译通过,没有实际验证
发布交付发布包、配置说明、已知风险环境、版本、回滚方式明确真实设备或生产环境未经人工审核
复盘沉淀问题、返工、经验、模板更新记录可复用经验同类问题下次还从头摸索

4. 问题定义门

进入 11-上位机项目需求拆解表.md 之前,先确认:

检查项是否通过备注
谁使用这个软件是 / 否操作员、调试人员、工程师、客户现场人员
在什么现场使用是 / 否实验室、产线、客户现场、售后调试
要解决什么痛点是 / 否手工记录、通信调试、数据追溯、自动测试
第一阶段成功标准是 / 否能连接、能采集、能保存、能生成报告
明确不做什么是 / 否暂不做权限、暂不做数据库、暂不做报表
关键风险是 / 否真实设备、危险动作、生产数据、协议不完整

没有通过时,先补 10-问题定义与用户场景.md

5. 需求确认门

进入技术方案前,必须至少有一版经过人工确认的需求方案。

建议检查:

检查项是否通过备注
项目目标明确是 / 否不只是功能列表
操作流程明确是 / 否谁先点什么、设备什么时候响应
页面需求明确是 / 否要显示什么、操作什么、提示什么
通信需求明确是 / 否 / 不涉及串口/TCP、协议、示例报文、异常
数据需求明确是 / 否 / 不涉及保存字段、格式、路径、查询、导出
验收标准明确是 / 否每个重要需求可验证
AI 推测已标注是 / 否不能把推测当客户要求
待确认项已处理是 / 否关键问题不能留到编码阶段

如果还有关键待确认项,只能做问题清单或备选方案,不要进入代码实现。

6. 技术方案门

进入代码实现前,必须先确认:

检查项是否通过备注
技术栈明确是 / 否WPF/WinForms、.NET 版本、图表库、数据库
模块边界明确是 / 否View、ViewModel、Service、Model、Storage
通信线程模型明确是 / 否 / 不涉及接收、解析、分发、UI 刷新不能混在一起
数据流明确是 / 否从设备到显示、保存、报警、日志
高风险点明确是 / 否协议、线程、数据库、真实设备、发布版本
ADR 已记录是 / 否 / 不需要重要技术选择要留下理由
测试策略明确是 / 否最少要知道怎么验证

如果技术方案没有通过,只能继续让 AI 做设计,不要让 AI 直接生成完整项目。

7. 实现计划门

每次修改前,先让 AI 输出影响分析和最小修改计划。

检查项是否通过备注
本次只解决一个目标是 / 否不混入无关优化
影响页面和模块列清楚是 / 否UI、通信、数据、日志、配置
预计修改文件列清楚是 / 否新增、修改、删除分别说明
备份方式已确认是 / 否Git、本地压缩包、复制目录或 Skill 本地备份
回滚方式说明清楚是 / 否出问题时怎么退回
回归范围提前列出是 / 否不是改完才想怎么测

没有实现计划时,不要接受 AI 的大段代码输出。

8. 代码修改门

AI 真正开始写代码、改 XAML、改配置或改项目文件前,必须确认:

检查项是否通过备注
已完成备份是 / 否没有备份不要进入修改
修改范围和文件已列出是 / 否预计修改文件和实际修改文件要能对上
不改内容已明确是 / 否不重构、不改无关 UI、不改无关协议
能查看差异是 / 否修改后要能看到改了什么
修改后能回读是 / 否确认文件没有乱码、空文件或异常缩短

如果出现下面情况,必须停止继续修改,先恢复或人工检查:

  1. 文件变成乱码。
  2. 文件内容异常减少。
  3. 项目文件损坏。
  4. AI 修改了计划外的大量文件。
  5. 编译错误明显来自无关文件被误改。
  6. Git diff 或工具差异看不懂。

9. 回归验收门

交付前至少通过:

  1. 编译和启动检查。
  2. 本次修改目标验证。
  3. 相关旧功能回归。
  4. 异常路径验证。
  5. 需求对应验收项。
  6. 已知风险记录。

涉及真实设备、生产数据、数据库结构、发布版本时,必须使用 30-回归测试与验收清单.md 的 L5 范围。

10. 发布交付门

准备给客户、产线或现场使用前,确认:

检查项是否通过备注
发布版本号明确是 / 否文件名或版本号可追踪
运行环境明确是 / 否Windows、.NET、驱动、权限
配置文件说明明确是 / 否串口、IP、路径、数据库
回滚方式明确是 / 否保留上一版本和旧配置
源码或项目备份完成是 / 否Git 提交、压缩包或项目备份
已知风险写清楚是 / 否未测设备、未覆盖场景、客户待确认项
人工审核完成是 / 否真实设备和危险动作必须人工审核

11. 复盘门

项目结束或阶段交付后,不要只停在“完成”。至少记录:

  1. 哪些需求后来变了。
  2. 哪些 Bug 是 AI 造成的。
  3. 哪些提示词有效。
  4. 哪些测试漏掉了问题。
  5. 哪些模板应该更新。

复盘使用 31-度量复盘与经验沉淀.md

12. 发给 AI 的质量门 Prompt

text
请你作为 C# WPF/WinForms 上位机 AI 开发流程检查助手。

我准备进入下一阶段,请先帮我做质量门检查,不要写代码。

当前阶段:
【备份与可恢复性 / 问题定义 / 需求确认 / 技术方案 / 实现计划 / 代码修改 / 回归验收 / 发布交付】

已有材料:
【粘贴需求方案、技术方案、修改计划或测试记录】

请输出:
1. 当前阶段是否可以进入下一步:可以 / 不建议 / 必须停止。
2. 已满足的条件。
3. 缺失的信息。
4. 高风险点。
5. 当前是否已有可恢复备份。
6. 必须人工确认的问题。
7. 下一步建议。

上位机 AI 开发工作流资料包 | 閑魚:別來無恙 | QQ群:1016188499