Problem
src/github/public.ts:58 — the two api.github.com fetches have no AbortSignal.timeout (unlike gittensor/api.ts and github/app.ts) → a half-open connection hangs the 500-login evidence loop; also unauthenticated (60/hr) so the loop exhausts the ceiling and silently returns source:unavailable.
Fix
Add AbortSignal.timeout; use GITHUB_PUBLIC_TOKEN (already in env) to lift the rate ceiling.
Acceptance
- Bounded request time; authenticated rate ceiling; degraded-evidence is signalled not silent.
Problem
src/github/public.ts:58 — the two api.github.com fetches have no AbortSignal.timeout (unlike gittensor/api.ts and github/app.ts) → a half-open connection hangs the 500-login evidence loop; also unauthenticated (60/hr) so the loop exhausts the ceiling and silently returns source:unavailable.
Fix
Add AbortSignal.timeout; use GITHUB_PUBLIC_TOKEN (already in env) to lift the rate ceiling.
Acceptance