Development Workflow¶
Purpose¶
Provide a safe, repeatable pattern for implementing and validating changes.
Standard Workflow¶
flowchart LR
Scope["Scope Change"] --> Implement["Implement in Owning Module"]
Implement --> Unit["Run Targeted Tests"]
Unit --> Smoke["Run Smoke Suite"]
Smoke --> Full["Run Full Regression (if needed)"]
Full --> PR["Open PR with Evidence"] Step-by-Step¶
- identify owning module and impacted integrations
- implement minimal coherent change
- add/update tests close to changed behavior
- validate in escalating scope
- document risk + validation in PR
Core Commands¶
docker compose run --rm app python manage.py check
docker compose run --rm app python manage.py makemigrations
docker compose run --rm app python manage.py migrate
./scripts/run_smoke_tests.sh
./scripts/run_tests.sh
Targeted Validation Examples¶
docker compose run --rm app sh -c "pytest requirements_mgmt/tests verification_validation_mgmt/tests -v"
docker compose run --rm app sh -c "pytest baseline_mgmt/tests impact_assessment/tests ops_mgmt/tests -v"
Common Failure Modes¶
| Symptom | Likely Cause | Fix |
|---|---|---|
| broad regressions from small change | hidden cross-module coupling | narrow scope + add explicit contract |
| repeated migration conflicts | unordered schema edits | enforce migration sequencing and review |
| PR review friction | unclear validation evidence | include exact commands and outcomes |
Keep PRs reviewable
Prefer one coherent capability change per PR.