triagelisted
Install: claude install-skill bengous/claude-code-plugins
# Triage
Decide the fate of one issue or PR from the current code. Never state something about code you did not read this session.
## Target
`$ARGUMENTS`
- `--dry-run`: verify and report, post nothing; the comment text that step 6 would post is printed.
- A URL with `/pull/` is a PR, with `/issues/` an issue.
- A bare number: `gh issue view <n> --json url`; a `/pull/` URL means it is a PR.
- Empty: run `gh issue list --limit 30` and `gh pr list --limit 30`, show both lists, ask which one to triage.
## Protocol
1. **Fetch.**
- Issue: `gh issue view <n> --json title,body,state,labels,comments,url`
- PR: `gh pr view <n> --json title,body,state,baseRefName,headRefName,mergeable,reviewDecision,statusCheckRollup,comments,url,additions,deletions` and `gh pr diff <n> --stat`
Closed already: report it and stop.
2. **Extract the claims.** The problem, every file, symbol, or error named, expected versus actual, the reproduction if given, the open questions in the comments.
3. **Verify each claim.** Glob and Grep to locate, Read to confirm. `git log --oneline -20 -- <file>` finds a fix that landed without a link. For a PR, also check: does it apply to the current base (`mergeable`), do the checks pass, does the code it changes still exist on the base, has a competing change landed since.
4. **Verdict.** One word, with the proof next to it.
| Issue | PR |
|---|---|
| `valid`: confirmed in the code, root cause named | `mergeable`: applies, checks pass, still wa