SuperAPI AI 工具集

django-verification

智能体与模型

查看项目

更新于 10-15 21:08

技能介绍

用途:为 Django 项目提供一套可重复执行的发布前验证流程,适用于提交 PR 前、模型或迁移变更后、依赖升级后,以及部署到预发或生产之前。

主要能力与阶段:

  1. 环境检查:确认 Python 版本、虚拟环境、依赖过期情况和必要环境变量(如 DJANGO_SECRET_KEY)。
  2. 代码质量:mypy 类型检查、ruff 检查、black 格式检查、isort 导入排序、python manage.py check --deploy。
  3. 迁移检查:showmigrations、makemigrations --check、migrate --plan,识别未生成迁移、未应用迁移和迁移冲突。
  4. 测试与覆盖率:pytest --cov=apps --cov-report=html --cov-report=term-missing --reuse-db,报告通过/失败/跳过数量和整体及分应用覆盖率。资料给出目标:模型 90%+、序列化器 85%+、视图 80%+、服务 90%+、整体 80%+。
  5. 安全扫描:pip-audit、safety check --full-report、bandit、gitleaks(若安装)、检查 DEBUG 状态。
  6. Django 命令:check、collectstatic --noinput --clear、数据库完整性、缓存连通性。
  7. 性能:借助 Django Debug Toolbar 检查 N+1 查询、缺失索引与重复查询,资料提示典型页面查询数宜小于 50。
  8. 静态资源:npm audit、npm run build、findstatic。
  9. 配置审查:DEBUG、SECRET_KEY、ALLOWED_HOSTS、HTTPS、HSTS、数据库配置。
  10. 日志、API 文档(DRF generateschema)与 git diff 审查,检查调试语句、TODO、硬编码密钥和是否包含迁移。

使用方式:按阶段手动执行所列命令,最终生成结构化验证报告;也可放入 CI,例如 GitHub Actions 中先装依赖,再依次运行 ruff、black、isort、mypy、安全扫描与 pytest。

限制:自动化验证无法替代人工代码审查和预发环境实测;部分命令依赖相应工具已安装;资料未提供具体安装方式之外的平台限制或收费信息。