GitHub source silently returns 0 results when a token is present (HTTP 422)

Author: MariomarqueztCreated Aug 9, 2026Updated Sep 12, 2026

With any GitHub credential available — GITHUB_TOKEN, or just gh auth login picked up by the gh auth token fallback in _resolve_token — the GitHub source returns no results on v3.18.4.

[GitHub] 422 unprocessable: https://api.github.com/search/issues?q=rust+async+created%3A%3E2026-08-02&sort=reactions&order=desc&per_page=15
✓ Research complete (0.6s) - Github: 0 results

GitHub now requires is:issue or is:pull-request on authenticated /search/issues requests. Anonymous requests are still grandfathered, so the source works fine until a user adds a token — at which point it fails silently.

Confirmed directly against the API from the same host:

WITH token:    http=422  "Query must include 'is:issue' or 'is:pull-request'"
WITHOUT token: http=200  total_count: 8115

Two things make this hard to spot:

  1. Adding a credential is normally an improvement, so the failure arrives at the moment a user expects things to get better.
  2. doctor reports github [CLI: gh ✓] as WORKING regardless, because it checks that the gh binary exists rather than that the source returns anything.

Note for whoever fixes it: appending a single qualifier resolves the 422 but is lossy. For that same query GitHub reports 1,072 issues and 7,044 pull requests against 8,115 combined, so is:issue alone silently discards ~87% of matches.

PR opening shortly that queries both and merges, keeping coverage and the authenticated rate limit.

Environment: v3.18.4 (1004324), Ubuntu 24.04, Python 3.12.3.

Source: mvanhorn/last30days-skill