Files
telecom-rd-project-template/.agents/references/quick-guides/13-development-checklist.md
T
2026-07-28 22:30:20 +08:00

99 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 13-快速检查清单
> Python 开发日常自查
---
## 开工前 Check
- [ ] 代码在云电脑内编写(**代码不出研发云**)
- [ ] 技术选型符合统一技术栈要求
- [ ] Git 仓库已创建,`.gitignore` 已配置
- [ ] 需求文档已评审通过
---
## 编码中 Check
### Python 编码
- [ ] 命名:类用驼峰,函数/变量全小写+下划线
- [ ] 缩进:4 个空格,无 Tab
- [ ] 每行 ≤ 80 字符
- [ ] 导入顺序:标准库 → 第三方 → 应用
- [ ] 禁止隐式相对导入
- [ ] 函数有文档字符串(Args/Returns/Raises
- [ ] `if foo is None:` 而非 `== None`
- [ ] 禁止循环中用 `+` 拼接字符串
- [ ] 常量在左、变量在右
### 安全
- [ ] 无硬编码密码/密钥
- [ ] 口令哈希已加盐(盐 ≥ 8 字节随机数,≥ 50000 次迭代)
- [ ] 使用强随机数
- [ ] 日志不输出敏感信息
- [ ] 用户输入已验证(服务端验证)
- [ ] 错误消息不暴露系统信息
- [ ] 无后门代码/调试入口
### 数据库
- [ ] 表名/字段名全小写+下划线
- [ ] 表和字段已添加注释
- [ ] 无外键
- [ ] WHERE 条件列有索引
- [ ]`SELECT *`
- [ ] DELETE/UPDATE 带 WHERE 条件
- [ ] 无隐式类型转换
- [ ] DDL 已提前通知 DBA
---
## 提交前 Check
### Git
- [ ] Commit message 格式:`type(scope): subject` + `%workItemId`
- [ ] 已精简合并 commit(≤ 5 个)
- [ ] 无敏感信息(密码/密钥/账号)
- [ ] 无二进制文件 > 10MB
- [ ] 无 PDF/DOC/压缩包/音视频
- [ ] 第三方依赖来自制品库(非直接提交)
### 测试
- [ ] 单元测试已编写
- [ ] 测试覆盖率达标
- [ ] 无致命/严重缺陷未关闭
---
## 流水线 Check
- [ ] 代码质量扫描通过(无阻断/严重级问题)
- [ ] 代码安全扫描通过
- [ ] 构建成功
- [ ] 制品已上传统一制品库
---
## 部署前 Check
- [ ] 测试报告已提交
- [ ] 部署计划/实施方案已准备
- [ ] 回退方案已准备
- [ ] 制品已从快照版本转为正式版本
- [ ] K8S 镜像未使用 `latest` 标签
- [ ] 部署审批已通过
---
## 安全红线(一票否决)
| 问题 | 后果 |
|------|------|
| 代码中包含硬编码密码/密钥 | 禁止上线 |
| 使用弱加密算法(MD5/DES/SHA1 | 禁止上线 |
| 日志打印用户密码/敏感信息 | 禁止上线 |
| 存在高危安全漏洞未修复 | 禁止上线 |
| 未通过代码安全扫描 | 禁止上线 |
| 代码存储在外部云服务 | 违规 |
| 未经审批部署到生产环境 | 违规 |
| 直接连接生产数据库 | 违规 |