wait-for-pr-checkslisted
Install: claude install-skill thettwe/nyann
# wait-for-pr-checks
Wraps `bin/wait-for-pr-checks.sh`. Poll-based; uses `gh pr checks
<num>` under the hood. The script is the same one `release.sh` will
uses to gate the tag step (when `--wait-for-checks` is passed),
so the contract is shared.
## 1. Resolve the PR number
The script auto-resolves from the current branch via `gh pr view`,
so the most common invocation is:
```
bin/wait-for-pr-checks.sh --target <cwd>
```
Pass `--pr <number>` when watching a PR you don't have checked out.
## 2. Tune timeout and cadence
Defaults:
- `--timeout 1800` (30 minutes)
- `--interval 30` (poll every 30 seconds)
Bump timeout for slow CI matrices ("integration tests take 90 min"
→ `--timeout 7200`). Drop interval for snappy local CI ("we Just
hit go" → `--interval 10`). Don't go below 10 seconds — gh API
rate limits start to bite.
## 3. Interpret the outcome
The script emits a `PRChecksResult` JSON. Branch on `.outcome`:
| Outcome | Meaning | What the user should do |
|---|---|---|
| `pass` | every check completed with a passing conclusion | proceed with the gated action (merge, tag, deploy) |
| `no-checks` | PR has no checks attached | proceed; treat as pass |
| `fail` | at least one check failed (loop bailed early) | open the linked workflow; don't proceed |
| `timeout` | deadline reached, some still in_progress | retry with a longer timeout, or investigate slow runners |
| `skipped` | gh missing/unauthenticated, or PR couldn't be resolved | tell the user; can't proceed |
Exi