一键导入
gh-find-prs
Survey open CodeWhale PRs and triage each for mergeability and disposition against the real landing branch.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Survey open CodeWhale PRs and triage each for mergeability and disposition against the real landing branch.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Run cargo check on the current Rust project to find compile errors
Use before claiming CodeWhale release work is done: run the full gate sweep and list the manual QA targets.
Use to assign GitHub issues to a milestone and/or owners in bulk, verifying each.
Close resolved CodeWhale issues only after verifying the landed commit/behavior, with a positive crediting comment; never from title alone.
Triage N GitHub issues into a coverage matrix: fetch each, check current code, classify already-done/quick-fix/design/defer with cited evidence.
Harvest one community PR into a release branch with authorship and credit preserved, verified green, and a warm thank-you.
| name | gh-find-prs |
| description | Survey open CodeWhale PRs and triage each for mergeability and disposition against the real landing branch. |
Survey the open PR queue and assign each PR a disposition — backed by code, tests, and checks, never by title — testing real mergeability against the actual release branch (often local-only, e.g. <release-branch>), not the main-based GitHub flag.
This is read-and-recommend. You do NOT merge, close, tag, or publish. You surface evidence and a proposed disposition; the maintainer approves.
Inventory the queue. One call, structured:
gh pr list --repo Hmbown/CodeWhale --state open \
--json number,title,author,headRefName,baseRefName,isDraft,mergeStateStatus,statusCheckRollup
Note mergeStateStatus (CLEAN / BLOCKED / DIRTY / UNKNOWN) but treat it as a hint only — it is computed against main, and the real landing target is usually a different branch.
Identify the real landing branch. The release head is frequently local-only:
git branch --list 'codex/v0.8*' 'codex/v0.9*'
git log --oneline -1 <release-branch>
Use that ref, not main, for every mergeability test below.
Read each candidate from code, not title. For every non-trivial PR:
gh pr view <N> --repo Hmbown/CodeWhale \
--json files,additions,deletions,statusCheckRollup,body,comments
gh pr diff <N> --repo Hmbown/CodeWhale
Read the diff. A "fix(exec): ..." can be a no-op or a regression; a "chore" can be the real fix. Judge the change, the tests it adds, and any review comments.
Decode check failures — distinguish trivial from real. In statusCheckRollup, find each conclusion: FAILURE and read its job. CodeWhale's CI jobs are Lint, Test (ubuntu-latest|macos-latest|windows-latest), Version drift, gate (Contribution gate), npm wrapper smoke, Mobile runtime smoke, Documentation, GitGuardian Security Checks.
Lint failure that is only cargo fmt drift is trivial — harvestable, fix on landing with cargo fmt --all.Test (...) or clippy under Lint is real — read the log before trusting it.Version drift failing on a community PR is expected (they bumped, or didn't); not a blocker for harvest.cargo fmt --all -- --check && cargo clippy --workspace --all-targets
Test-merge against the real release head. The mergeStateStatus flag lies for local branches. Probe the actual merge:
git merge-tree --write-tree --messages <release-branch> origin/pr/<N> # if PR ref is fetched
git merge-tree --write-tree --messages <release-branch> <pr-head-sha>
Exit 0 and no CONFLICT lines → clean against the release branch (DIRECT-MERGE candidate even when GitHub shows BLOCKED/DIRTY). Conflicts printed → HARVEST or DEFER. This is read-only; it writes objects to the object store, not to any branch or working tree.
Assign a disposition with required credit. Per PR, recommend exactly one:
merge-tree is clean against the release head. Land via cherry-pick to preserve the original author automatically.Co-authored-by: Name <email>
Harvested-from: PR #<N> by @handle
The Harvested-from: trailer lets the auto-close-at-main workflow close the PR with credit once the change reaches main.Report, don't act. Output a compact table: PR | author | landing-branch verdict | check summary | disposition | credit line. Stop there for maintainer approval.
mergeStateStatus for the real target. CLEAN/BLOCKED/DIRTY are vs main; always confirm with git merge-tree <release> <pr-head>.Lint red is harvestable; a failing Test (...) is not — read the log.Co-authored-by: + Harvested-from:; every cherry-pick keeps the original author. No silent reimplementation.git merge-tree --write-tree is the only "write" allowed — it touches the object store only.