Summary

  • GitHub opened incident kk183dslzdzd at 11:16:25.356 UTC on 1 August and closed it at 12:30:21.775 UTC.
  • The public incident span was 1 hour, 13 minutes and 56.419 seconds.
  • GitHub attributed degraded GPT-5.6 Luna availability in Copilot products and IDE surfaces to an unnamed upstream model provider.
  • Customers were advised to choose another model or select Auto while GitHub worked with the provider.
  • At 12:29:20.237 UTC GitHub said Luna was available and mitigation complete, although the update still carried an investigating label.
  • GitHub disclosed no provider, cause, request denominator, error rate, geography, user count or substitution-success measure, and said a root-cause analysis would follow.

Availability moved from application to model route

The incident illustrates a newer dependency surface in developer tooling. Copilot can remain reachable while a particular model behind it becomes unreliable. The failure boundary is therefore not simply “GitHub up or down”; it includes the route from a product interface to a selected inference provider and model.

GitHub’s wording establishes that the problem lay with an upstream provider, but it does not name that organisation or describe the failing layer. Authentication, capacity, model serving, network transport, request policy and response processing remain possible categories, not confirmed explanations.

The workaround was a routing decision

Telling users to choose another model or Auto is operationally meaningful. It suggests the product had alternative routes available and that continuity did not require waiting for Luna to recover. Yet substitution is not the same as equivalence.

Different models may vary in latency, context handling, code behaviour, safety policy and output consistency. The status page does not say which alternative Auto selected, whether in-flight sessions changed model, or what share of users successfully switched. The workaround reduced dependence on one route; its quality and reach were not measured publicly.

Recovery took place in two stages

GitHub reported degraded performance at 11:16:25.435 and named Luna at 11:20:02.543. At 12:13:24.248 it said recovery was being observed. At 12:29:20.237 the company declared Luna available again and mitigation complete, then closed the incident at 12:30:21.775.

That sequence separates returning service from administrative closure. The one-minute interval between “mitigation is complete” and resolution is a short verification step in the public record. It does not reveal when the upstream provider first fixed the fault or when every affected request path stabilised.

The status label lagged behind the prose

The 12:29 update remained labelled investigating even as its text said the upstream issue was resolved and mitigation complete. This may be a workflow or Statuspage transition artefact. It is not evidence that Luna was still degraded, but it is a reason to read state labels and message bodies together.

Automated consumers that act only on a status code could have interpreted the incident differently from a human reading the text. A resilient monitor should therefore retain both fields, timestamp the mismatch and avoid silently rewriting one to fit the other.

minor contains no exposure denominator

GitHub classified the incident as minor. It did not publish total requests, failed calls, users, repositories, organisations, regions or IDE types. As a result, the label cannot be converted into a percentage of Copilot traffic or a measure of business consequence.

An organisation relying heavily on Luna could have experienced a material interruption even if the platform-level incident met GitHub’s minor threshold. Another customer using Auto might have seen little disruption. Both outcomes are compatible with the sparse public evidence.

Enterprises need to record model identity as operational data

For teams using AI assistance in build, review or support workflows, a model switch can change more than availability. Logs should retain requested model, delivered model when exposed, timestamps, retry behaviour, latency, error class and whether a response was accepted into a downstream process.

That record helps distinguish a failed request from a substituted one and allows teams to audit changes in output. It does not imply that any unsafe or incorrect response occurred during this incident. GitHub reported availability degradation, not a security breach or integrity failure.

The promised analysis should define the dependency boundary

GitHub said a detailed root-cause analysis would be shared. A useful account would name the affected service boundary, quantify failed and delayed requests, explain detection, state whether Auto routing changed, and describe how provider health influences future model selection.

Until then, the defensible conclusion is limited. An upstream provider problem degraded GPT-5.6 Luna for a public incident span of 1:13:56.419, and alternative model selection provided a stated workaround. The provider, cause, measured reach and functional cost of substitution remain unknown.

Sources