FLOW-003 critical PR Process

PRs tested on dev environment before merge

Feature branches deploy to dev for testing before merge

Question to ask

"How often do merges break staging?"

What to check

  • CI workflow deploys PR branches to dev
  • Dev deployments occur before merge timestamps
  • Dev environment accessible for testing

Verification guide

Severity: Critical

Check automatically:

  1. Check for deployment workflows:

    # Look for preview/dev deployment in CI
    grep -riE "deploy|preview|dev.*environment|environment:" .github/workflows/*.yml 2>/dev/null
    
  2. List recent deployments with environment names:

    # Get deployments and their refs
    gh api repos/{owner}/{repo}/deployments --jq '.[] | {environment, ref, created_at}' | head -30
    
  3. Check if PR branches get deployments:

    # Look for deployments to non-main branches
    gh api repos/{owner}/{repo}/deployments --jq '[.[] | select(.ref | test("^(feature|fix|dependabot|refs/pull)") or (. != "main" and . != "staging" and . != "master"))] | length'
    
  4. For a specific merged PR, verify dev deployment before merge:

    # Get PR merge time
    gh pr view <number> --json mergedAt,headRefName
    
    # Check for deployments of that branch before merge time
    gh api repos/{owner}/{repo}/deployments --jq '.[] | select(.ref == "<branch-name>") | {created_at, environment}'
    

Cross-reference with:

  • ENV-001/002/003 (Environment tiers exist) - dev environment must exist
  • FLOW-001 (Feature branch workflow) - PRs should be deployed before merge

Pass criteria:

  • CI workflow deploys PR branches to dev environment
  • Evidence of dev deployments for recent PRs before their merge timestamps
  • Dev environment actually accessible for testing

Fail criteria:

  • No dev deployment workflow
  • PRs merged without prior dev deployment
  • Dev deployments only happen after merge to staging

If no PR deployments found, ask user: "No dev deployments found for PR branches. How does the team test changes before merging? Manual local testing only, or is there a preview environment process not captured in GitHub?"

Evidence to capture:

  • Deployment workflow file (if found)
  • Sample PR with dev deployment timestamp vs merge timestamp
  • Dev environment URL pattern (if discoverable)

Section

09. Development Workflow

Monitoring & Health