Refactor github-actions to pr-status skill#29
Merged
Conversation
Rewrite as general-purpose PR merge readiness analyzer in Python with 11 subcommands covering CI, reviews, bot comments, and missing checks.
Use shebang for direct execution, remove redundant uv run invocations. Fix find_error_keywords and is_stale_approval bugs. Add 34 tests for pure fns.
Fix conflict regex to match plurals, sort run IDs numerically. Add tests for URL variants, word boundaries, timezone offsets, parser validation.
- Remove reviewThreads from gh pr view (not a valid field); fetch via GraphQL API instead - Move --format from parent parser to subcommands so `diagnose --format json <url>` works - Update parser tests for per-subcommand format flag
Add optional PR arg for cross-repo usage and replace head-only truncation with head+tail to capture errors.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
github-actions/skill topr-status/— refocused as general-purpose PR merge readiness analyzerpr_status.py) using uv PEP 723 inline script metadatadiagnose(primary),status,checks,comments,bot-comments,failed-runs,analyze-logs,required-checks,missing-checks,check-cli,detect-repo[bot]suffix (not hardcoded list), branch protection via legacy API + rulesets fallbackTest plan
python3 -c "import ast; ast.parse(...)"— syntax check passesuv run --script pr-status/scripts/pr_status.py --help— CLI loadsuv run --script pr-status/scripts/pr_status.py detect-repo— repo detection worksprek run --files ...— pre-commit checks passuv run --script pr-status/scripts/pr_status.py diagnose <pr>— test against a real PR