What problem does it solve?
It prevents broken or insecure Django releases by running a repeatable verification loop that catches configuration issues, formatting problems, migration mistakes, failing tests, security vulnerabilities, and deployment readiness gaps before you merge or deploy.
Core Features & Use Cases
- Environment & configuration safety checks: Confirms Python setup and critical production settings like DEBUG/SECRET_KEY/ALLOWED_HOSTS and basic operational configuration.
- Code quality gates: Runs mypy type checking, ruff linting, black formatting, isort import sorting, and Django deploy checks.
- Release confidence via migrations + tests + coverage: Detects unapplied migrations, plans/dry-runs migration behavior, executes pytest with coverage reports, and summarizes test outcomes.
- Security scanning for dependencies and code: Flags vulnerable dependencies (pip-audit/safety), checks for common security issues (bandit), and helps detect secrets (gitleaks when available).
- Operational readiness & sanity checks: Covers manage.py checks, collectstatic, logging sanity, and optional performance heuristics.
- Use Case: Before merging a Django PR after model changes and dependency upgrades, run the full loop to ensure migrations are correct, tests pass with acceptable coverage, security scans are clean, and the app is deploy-ready.
Quick Start
Run the django-verification skill to execute the full verification loop across environment checks, code quality, migrations, tests with coverage, security scans, and deployment readiness validation.