graphql-hive / graphql-hive/console

Schema check/publish could fail due to GitHub errors/outages

Open
#6,478 2 comments 3 reactions 0 assignees View on GitHub
api improvement product decision
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.