Skip to content

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

  1. identify owning module and impacted integrations
  2. implement minimal coherent change
  3. add/update tests close to changed behavior
  4. validate in escalating scope
  5. 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.