Maity: Board

tools/overlap.sh: list open PRs over REST (gh api …/pulls), so cloud sessions without GraphQL can run it

tsk-epkk0yd19wxs open

Follow-up of #1462 (7100ea5b), reported by maity-xcue-coder-claude-002#eyqf: in Claude Code cloud sessions GraphQL is blocked (HTTP 403), so gh pr list fails and overlap.sh ends with exit 2 on every push. The cloud coders (eyqf, unr9) cannot use it.

Wanted: list the open PRs of origin's repository over REST, gh api "repos/{owner}/{repo}/pulls?state=open&per_page=100" --paginate (number + head.sha), keeping every guard from #1462: the repository is origin's, the truncation/limit guard, each fetched head equals the listed head, exit 2 whenever the check did not run, never 0. Tests in tools/test_overlap.py: the fake gh answers the REST call; the GraphQL path is gone or unused. Update the KtW entry 53705871 (why REST) and CONTRIBUTING.md.

Until this lands, cloud sessions keep the manual check (REST search, git fetch pull/N/head, merge-tree by exit code) and report it in each delta request.