mcpField
P
pr-validate

pr-validate

github.com/boshu2Testing & quality450720 installsUpdated today
Repository

About pr-validate

pr-validate is a skill for checking whether a pull-request branch is ready for submission. It evaluates upstream alignment, contribution guidelines, isolation, scope, and quality gates, then reports findings and remediation steps.

Key features

  1. 01Checks branch alignment with upstream
  2. 02Verifies CONTRIBUTING.md compliance
  3. 03Detects mixed commit types and unrelated files
  4. 04Checks changes against intended scope
  5. 05Reports quality gates and pass/fail status

Use cases

  1. 01Validating a branch before PR preparation
  2. 02Checking scope creep after implementation
  3. 03Identifying upstream divergence before submission

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/boshu2/agentops --skill pr-validate

After installing, type/pr-validatein Claude Code to confirm it loaded.

Bundled filesreferences/pr-validate.featurescripts/validate.sh

Details

From the project README

PR Validate Skill

PR-specific validation that ensures changes are clean, focused, and ready.

Overview

Validates a PR branch for submission readiness by checking isolation, upstream alignment, scope containment, and quality gates.

Input: Branch name (default: current branch)

When to Use:

  • Before running $pr-prep
  • After $pr-implement completes
  • When suspicious of scope creep

Workflow

1.  Branch Discovery     -> Identify branch and upstream
2.  Upstream Alignment   -> FIRST: Check rebase status (BLOCKING)
3.  CONTRIBUTING.md      -> Verify compliance (BLOCKING)
4.  Isolation Check      -> Single type, thematic files
5.  Scope Check          -> Verify changes match intended scope
6.  Quality Gate         -> Tests, linting (non-blocking)
7.  Report Generation    -> Summary with pass/fail

Phase 2: Upstream Alignment (BLOCKING - CHECK FIRST)

# Fetch latest upstream
git fetch origin main

# How many commits behind?
BEHIND=$(git rev-list --count HEAD..origin/main)
echo "Behind upstream: $BEHIND commits"
CheckPass Criteria
Minimal divergence< 20 commits behind
No conflictsMerge/rebase would succeed

Phase 4: Isolation Check (BLOCKING)

# Commit type analysis
git log --oneline main..HEAD | sed 's/^[^ ]* //' | grep -oE '^[a-z]+(\([^)]+\))?:' | sort -u

# File theme analysis
git diff --name-only main..HEAD | cut -d'/' -f1-2 | sort -u
CheckPass Criteria
Single commit typeAll commits share same prefix
Thematic filesAll changed files relate to PR scope
Atomic scopeCan explain in one sentence

Phase 5: Scope Check

# Infer scope from commit messages
SCOPE=$(git log --format="%s" main..HEAD | grep -oE '\([^)]+\)' | sort -u | head -1)

# All files should be within expected scope
git diff --name-only main..HEAD | grep -v "$SCOPE"

Report Generation

Pass Output
PR Validation: PASS

Branch: feature/suggest-validation (5 commits)
Upstream: main (in sync)

Checks:
  [OK] Isolation: Single type (refactor)
  [OK] Upstream: 0 commits behind
  [OK] Scope: 100% in internal/suggest/
  [OK] Quality: Tests pass

Ready for $pr-prep
Fail Output
PR Validation: BLOCKED

Checks:
  [FAIL] Isolation: Mixed types (refactor, fix, docs)
  [WARN] Upstream: 15 commits behind

Resolutions:
1. ISOLATION: Split branch by commit type
   git checkout main && git checkout -b refactor/suggest
   git cherry-pick <refactor-commits>

Run $pr-validate again after resolution.

Resolution Actions

Mixed Commit Types
# Cherry-pick to clean branch
git checkout main
git checkout -b ${BRANCH}-clean
git cherry-pick <relevant-commits-only>
Upstream Divergence
# Rebase on latest upstream
git fetch origin main
git rebase origin/main

Anti-Patterns

DON'TDO INSTEAD
Analyze stale branchCheck upstream FIRST
Skip validationRun before $pr-prep
Ignore scope creepExtract unrelated changes
Mix fix and refactorSeparate PRs by type

Examples

Validate PR Before Submission

User says: "Validate this PR branch for isolation and scope creep."

What happens:

  1. Check upstream alignment and branch freshness.
  2. Detect scope creep and unrelated file changes.
  3. Output remediation steps and pass/fail status.
Pre-Prep Gate

User says: "Run PR validation before I run $pr-prep."

What happens:

  1. Execute isolation and scope checks.
  2. Confirm quality gate readiness.
  3. Return a go/no-go recommendation.

Troubleshooting

ProblemCauseSolution
Validation reports stale branchUpstream advancedRebase/merge from upstream then rerun
Scope creep detectedExtra files or mixed objectivesSplit unrelated changes into follow-up PR
Alignment check failsBranch diverged from target expectationsReconcile base branch and acceptance criteria
Output unclearFindings not prioritizedSort findings by blocker vs non-blocker severity

Reference Documents

  • references/pr-validate.feature — Executable spec: isolation + upstream-alignment + scope-containment + quality-gate checks → submission-readiness verdict (soc-qk4b)

Comments

Markdown supported