Pr validate
Skill ulpi-io/plugin-marketplace/plugins/boshu2/skills/pr-validate
PR-specific validation: isolation, upstream alignment, quality, scope creep. Triggers: "validate PR", "pr validation", "check PR scope", "scope creep check", "isolation check".From its SKILL.md
npx -y skills add ulpi-io/plugin-marketplace --skill pr-validateAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
4.6 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it
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-implementcompletes - 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"
| Check | Pass Criteria |
|---|---|
| Minimal divergence | < 20 commits behind |
| No conflicts | Merge/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
| Check | Pass Criteria |
|---|---|
| Single commit type | All commits share same prefix |
| Thematic files | All changed files relate to PR scope |
| Atomic scope | Can 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'T | DO INSTEAD |
|---|---|
| Analyze stale branch | Check upstream FIRST |
| Skip validation | Run before $pr-prep |
| Ignore scope creep | Extract unrelated changes |
| Mix fix and refactor | Separate PRs by type |
Examples
Validate PR Before Submission
User says: "Validate this PR branch for isolation and scope creep."
What happens:
- Check upstream alignment and branch freshness.
- Detect scope creep and unrelated file changes.
- Output remediation steps and pass/fail status.
Pre-Prep Gate
User says: "Run PR validation before I run $pr-prep."
What happens:
- Execute isolation and scope checks.
- Confirm quality gate readiness.
- Return a go/no-go recommendation.
Troubleshooting
| Problem | Cause | Solution |
|---|---|---|
| Validation reports stale branch | Upstream advanced | Rebase/merge from upstream then rerun |
| Scope creep detected | Extra files or mixed objectives | Split unrelated changes into follow-up PR |
| Alignment check fails | Branch diverged from target expectations | Reconcile base branch and acceptance criteria |
| Output unclear | Findings not prioritized | Sort findings by blocker vs non-blocker severity |
What ships with it: 1 file
1.3 KB alongside SKILL.md, 1 of them executable
scripts/
- validate.shruns1.3 KB