graphql-hive / graphql-hive/console
Schema check/publish could fail due to GitHub errors/outages
- Dominant language
- TypeScript
- Stars
- 483
- Forks
- 145
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 65
Description
Sentry Issue: [GRAPHQL-HIVE-4KQ](https://the-guild-z4.sentry.io/issues/6275361992/?referrer=github_integration)
```
HttpError: We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.
File "../../../../node_modules/.pnpm/@octokit+request@8.3.1/node_modules/@octokit/request/dist-src/fetch-wrapper.js", line 71, in
if (status >= 400) {
File "node:internal/process/task_queues", line 105, in process.processTicksAndRejections
File "../../../../node_modules/.pnpm/@octokit+auth-app@6.0.1/node_modules/@octokit/auth-app/dist-src/hook.js", line 69, in sendRequestWithRetries
const timeSinceTokenCreationInMs = +/* @__PURE__ */ new Date() - +new Date(createdAt);
File "../../../../node_modules/.pnpm/@octokit+plugin-retry@6.1.0_@octokit+core@5.2.0/node_modules/@octokit/plugin-retry/dist-src/wrap-request.js", line 4, in requestWithGraphqlErrorHandling
async function wrapRequest(state, octokit, request, options) {
File "../../../../node_modules/.pnpm/bottleneck@2.19.5/node_modules/bottleneck/light.js", line 403, in {Job#2}.doExecute
this.Events.trigger("executing", eventInfo);
```
In this scenario, actors using the CLI will receive an "Unexpected error". We should probably instead give them more context, so they are not confused. E.g. "Failed to create GitHub status check. GitHub API is unresponsive.
In addition to that, this could lead to a schema check/schema publish succeeding on our end, but then failing due to the request to GitHub failing. We should think if that is okay or whether we want to handle this scenario differently.
Main questions:
* What information should we share with CLI users if a third-party request (e.g. to GitHub) fails after retries?
* How should we deal with GitHub check run creation failing after the schema version has been published? We still have partial success in that scenario; however, we tell the user that we are having an unexpected error
Contributor guide
Assessment
This issue has not been assessed yet.