可以放心的自动化
DTO/POJO、OpenAPI 客户端骨架、JUnit/pytest 空壳、正则初稿(仍要测)、日志样板、国际化 key 批量。
这些失败代价低,Review 重点看命名与项目规范即可。
必须人审的代码类型
鉴权授权、加密与密钥、SQL/NoSQL 查询、文件上传、反序列化、依赖引入(license 冲突)、Docker/K8s 生产配置、限流熔断。
Reviewer 对 AI 生成段加倍抽样,不是歧视,是风险加权。
- SQL:参数化
- 依赖:SBOM 检查
- 密钥:永不进提示词
PR 流程改造
PR 描述勾选:是否含 AI 生成、是否触及安全清单、是否跑过 SAST/单元测试。禁止 Copilot 直接 push main;pre-commit 跑 linter 与 secret scan。
大段 AI 生成要拆小 PR,否则 Review 形同虚设。
提示词与上下文安全
不要把 .env、客户数据、未公开漏洞细节贴进 IDE 聊天。企业版 Copilot 仍可能日志;用 synthetic data 做示例。
测试责任
AI 写的测试可能只 assert true;要求 mutation test 或 coverage 门槛 on diff lines。关键模块缺失测试不准合并。
团队培训五句
Copilot 不背锅;生成=草稿;安全清单必查;小步 PR;license 与 secret 扫描非可选。
Code Review 清单(AI 前后各一遍)
合并前人工必查:鉴权与权限边界、SQL/命令注入、日志是否打印 PII、依赖许可证、性能热点路径、回滚方案。Copilot 适合 boilerplate、测试骨架、注释与重构建议,不适合替你做威胁建模。
团队规范:凡 AI 生成的安全相关 diff,必须第二人复核;凡触及支付/密钥/用户数据的文件,禁止在未脱敏仓库上调用云端补全。把「AI 生成」标签写进 PR 描述,Reviewer 会自然提高警觉,比隐藏来源更安全。
- 安全/密钥:双人复核
- 性能/数据:人工 profile
- 许可证:法务白名单