Skip to content

Fix GitHub API timeouts and surface timeout warnings#93

Merged
stylessh merged 1 commit intomainfrom
stylessh/github-api-timeout-warn
Apr 13, 2026
Merged

Fix GitHub API timeouts and surface timeout warnings#93
stylessh merged 1 commit intomainfrom
stylessh/github-api-timeout-warn

Conversation

@stylessh
Copy link
Copy Markdown
Owner

Summary

  • Disable Octokit throttle and retry plugins across all client factories (user, installation, app auth). The throttle plugin's Bottleneck library classifies all GraphQL as "write" with maxConcurrent: 1, minTime: 1000ms, serializing requests one per second — causing 15s operation timeouts despite GitHub API responding in <1s.
  • Surface timeout warnings in the dashboard bottom bar. Adds a timedOut flag to search results (pulls/issues) and a global server-side timeout tracker so timeouts from any code path (pull detail, timeline, cross-refs) are detected. Displayed as a red dismissible warning.
  • Add error severity support to the warning system. Bottom bar now renders red styling for severity: "error" warnings vs the existing yellow for default warnings.

Test plan

  • Open dashboard with multiple installations — verify no more timeout errors in console
  • Simulate a timeout (e.g. lower GITHUB_OPERATION_TIMEOUT_MS to 1ms) and verify red warning appears in bottom bar
  • Verify existing yellow forbidden-org warnings still render correctly
  • Verify warning auto-clears when next successful query returns timedOut: false

@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
diffkit b58bc5c Commit Preview URL

Branch Preview URL
Apr 13 2026, 06:49 PM

@stylessh stylessh merged commit ce9048e into main Apr 13, 2026
4 checks passed
stylessh added a commit that referenced this pull request Apr 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant