.NET / SQL / Enterprise Engineering

Public Reliability and Recovery Radar

Report summary

Two key scoping inputs were unspecified in the request: the organizations to include, and the length of the “respectful cooling-off period.” To avoid inventing a market-wide universe, this report uses an illustrative, primary-source sample of organizations with both an official public status page an

Status
Research archive item
Category
.NET / SQL / Enterprise Engineering
Length
2,675 words
Reading time
13 minutes
Report type
evaluation

Key topics

  • .NET / SQL / Enterprise Engineering
  • .NET
  • SQL
  • Enterprise Engineering
  • Semantic Systems
  • Research Archive
  • Strategy
  • Audit
  • Architecture

Research provenance

Archive status
Research archive item
Content identity
sha256:a6ff65e4f9bf2bd873d8188785e74f45afa08ceedde33066ef98ee8fbdbc11aa

For citation, use the report title and canonical URL. Archival presence does not establish authorship or promote report statements into portfolio evidence.

Source availability: 51 citation markers in the source export have no recoverable source links. Those markers are omitted from this reader; any supplied bibliography and ordinary links remain. Check the original sources before relying on the cited claims.

This page renders the archived Markdown as safe, formatted HTML. It is background research and does not become a portfolio claim without evidence review.

Full report

On this page

Scope and method

Two key scoping inputs were unspecified in the request: the organizations to include, and the length of the “respectful cooling-off period.” To avoid inventing a market-wide universe, this report uses an illustrative, primary-source sample of organizations with both an official public status page and organization-authored incident write-ups or availability reports in English: OpenAI and GitHub. The corpus is limited to resolved incidents published on each organization’s official status host and their own incident reports or engineering-style availability write-ups. Where a source did not specify a detail such as a mitigation timestamp, a named owner, or a milestone date, that detail is marked unspecified rather than inferred.

For this report, time to mitigation means the first publicly disclosed point at which the blast radius clearly began to contract, or a substantial service recovery was publicly acknowledged. Full recovery means the organization declared the incident resolved or fully restored. Where the public record only disclosed full recovery, mitigation is marked unspecified. This sample is therefore suitable for a bounded analytical radar, but not for a market ranking or exhaustive sector-wide benchmark.

Executive summary

The strongest cross-incident signal in this sample is that public outages were rarely “random infrastructure bad luck.” They were overwhelmingly change-associated failures: a routing-layer software defect under abnormal load at OpenAI, a telemetry rollout that overwhelmed Kubernetes control planes, a host OS update that broke GPU node networking, a cache/TTL change that amplified load at GitHub, a Redis resiliency rollout that pushed a misconfiguration into production, and a merge-queue regression that produced incorrect merge commits. Even the most clearly third-party-triggered incident in the sample — GitHub Actions on February 2, 2026 — expanded because GitHub’s own failover and telemetry posture did not contain the provider-side change cleanly.

A second pattern is dependency concentration around shared control points. The highest-blast-radius incidents were not isolated feature bugs; they were failures in shared layers such as service discovery and Kubernetes control planes, GPU host networking, routing layers, authentication/user-management database clusters, Git HTTPS proxy capacity, and Redis-backed job orchestration. In both organizations, the public record repeatedly shows that a subsystem originally chosen for speed or simplicity became load-bearing well beyond its intended scope.

A third pattern is that observability usually detected symptoms, but not decision-grade precursors. OpenAI’s December 2024 incident shows alerting fired before customer impact, yet rollout safety checks were focused on CPU and memory rather than Kubernetes API server load, and DNS caching delayed visibility enough for the rollout to continue fleet-wide. GitHub’s February 2026 incidents similarly expose missing signal quality: telemetry gaps, insufficiently granular alarms, and not enough traffic-control switches to shed the right load quickly. In short, both organizations’ public reports describe monitoring that was good at saying “we are now in trouble” and weaker at saying “this rollout or capacity pattern is about to become unrecoverable.”

On data integrity, most incidents explicitly stated that no user data was lost. The major exception in this sample is GitHub’s April 23, 2026 merge-queue regression: commits were still stored in Git, but affected repositories’ default branches could become logically incorrect, and GitHub could not safely repair every repository automatically. That matters because it shifts the failure mode from “availability only” into state divergence with manual repair burden, which is a distinctly higher operational-risk class for release workflows.

On public recovery-program quality, both organizations disclose enough mechanism and scope to support a bounded reliability review and at least one architecture decision record per organization. Both are much weaker on public accountability mechanics: named owners are usually absent, milestone dates are sparse, and measurable success criteria are not systematically published. GitHub is somewhat stronger on strategic roadmap disclosure because it publicly tied reliability work to platform isolation, Azure migration, and a stated target to serve 50% of traffic from Azure by July 2026. OpenAI is stronger on technical root-cause depth for individual incidents, but lighter on dated milestone commitments.

Incident comparison

The table below compares the core incident set. “Source links” are provided as citations to the official incident pages or organization-authored write-ups.

OrganizationIncidentSource linksNormalized failure modeRecovery durationDependency concentrationChange-management, observability, integrity, remediation
OpenAIMajor outage across ChatGPT and API on November 8, 2024Status write-upSoftware defect under load in a shared routing layer; memory exhaustion; insufficient autoscaling pathFull recovery in 1h 34m; mitigation timestamp unspecified in the public write-up.Routing layer became a shared chokepoint; autoscaling had previously been blocked because adding capacity could negatively impact an upstream service.Public remediation covered buffer reuse, higher memory headroom, new rate-limit controls, and enabling autoscaling after fixing the upstream constraint. No owner or milestone date was named. No public evidence of data loss was disclosed.
OpenAIAPI, ChatGPT & Sora facing issues on December 11, 2024Incident page and write-upUnsafe telemetry rollout / control-plane overload; DNS service-discovery dependency failureFirst substantial API recovery in 2h 20m; ChatGPT substantial recovery in 2h 29m; full recovery in 4h 22m.Extremely high concentration around Kubernetes API servers, control planes, and DNS-based service discovery in large clusters. DNS caching temporarily masked failure, which enlarged rollout blast radius.Testing was not representative of large clusters; rollout checks emphasized CPU/memory, not API server load; rollback required control-plane access that the outage itself impeded. Remediations included phased rollouts, fault-injection testing, break-glass API access, decoupling data plane from control plane, and faster recovery tooling. No public owner or dated milestones were specified.
OpenAIElevated error rates on June 9–10, 2025Incident page and write-upOperational update conflict on GPU hosts; host OS/networking interaction removed routes from nodes“Near full” recovery by 8:00 AM PDT was disclosed qualitatively; major API models were operational by 9:40 AM PDT; API fully recovered by 12:30 PM PDT; all affected systems fully restored by 3:00 PM PDT, for full recovery in 15h 24m from incident start.Concentrated on cloud-hosted GPU VMs, networking agents, and node connectivity; loss of GPU-node connectivity became direct service-capacity loss.Alerts fired immediately, but the public write-up says the absence of break-glass tooling extended recovery. Completed actions included disabling automatic daily updates on GPU VMs and fixing system configuration conflicts; ongoing actions included VM audits, faster infrastructure recovery, and disaster-recovery drills. Owners and milestone dates were unspecified. No public evidence of data loss was disclosed.
GitHubIncident with Actions on February 2, 2026Status incident and GitHub reliability updateThird-party policy change amplified by internal failover weaknessService unavailable from 18:35–22:15 UTC; standard runners fully recovered by 23:10 UTC; larger runners by 00:30 UTC on February 3, for 4h 35m and 5h 55m respectively. Upstream mitigation was visible before full recovery.Very high dependence on underlying compute provider policy correctness, VM metadata access, and globally shared hosted-runner control paths. “All regions and runner types” were impacted.GitHub’s later write-up says the event also exposed a telemetry gap and insufficiently protected single points of failure. Follow-up work focused on provider coordination, earlier detection, safe rollout, dependency isolation, and more rigorous failover dry runs. No incident-level named owner or dated remediation milestones were provided.
GitHubIncident with Issues, Actions and Git Operations on February 9, 2026Status incident and GitHub reliability updateCache-write amplification / shared-cluster overload / cascading proxy exhaustionFirst degraded period 1h 27m; second degraded period 1h 16m; total degraded service 2h 43m; full recovery from first onset to final resolution 3h 57m.Concentrated around a core database cluster for authentication and user management, a shared background-work coordinator, and a Git HTTPS proxy layer that exhausted connections.GitHub publicly attributed the incident to a cache TTL change combined with client-side traffic growth and another model release. It also disclosed insufficiently granular alarms and a lack of granular traffic-blocking switches. Immediate actions included cache optimization, stronger rollback safeguards, and fixing proxy connection-exhaustion recovery. No data loss was disclosed.
GitHubMultiple services are affected, service degradation on March 5, 2026Status incident and GitHub reliability updateLatent configuration defect in resiliency rollout; bad Redis load-balancer configuration; failover left no writable primaryJobs started succeeding by 17:24 UTC, for a mitigation interval of 1h 00m from onset; full resolution came at 19:30 UTC, for full recovery in 3h 06m.High concentration around Redis-backed Actions job orchestration and a load-balancer tier whose misconfiguration could strand the cluster without a writable primary.GitHub rolled back contributing updates, froze changes in that area, promised automation improvements to block bad config propagation, and improved alerting for misconfigured load balancers. This is a classic case where a reliability-oriented change itself became the outage trigger. No public evidence of data loss was disclosed.
GitHubApril 23 merge queue incident on April 23, 2026GitHub CTO update / incident summaryRelease-path logic regression with state divergenceImpact-window duration was unspecified in the public summary used here.Concentrated on the merge queue squash-merge path, especially merge groups with more than one pull request. Infrastructure dependencies were not detailed in the public summary.This is the strongest data-integrity-adjacent event in the sample: commits were not lost, but default branches could end up incorrect, and GitHub could not safely auto-repair every repository. GitHub said multiple process failures were exposed and would be changed, but public owner, milestones, and full RCA detail were not specified in the summary.

Public reporting outside the core table reinforces the same pattern set. GitHub’s April 2026 availability report also documented a search-tier saturation incident on April 27, 2026 caused by concentrated anonymous scraping traffic, where existing monitoring did not initially classify the traffic surge as risky and mitigation required both scaling and active traffic controls. That is not a pure change-induced event, but it still fits the same systemic story: centralized shared infrastructure, observability blind spots, and insufficient pre-existing blast-radius controls.

timeline
    title Publicly disclosed recovery windows in the sample
    2024-11-08 : OpenAI routing-layer outage
               : Full recovery 1h 34m
    2024-12-11 : OpenAI telemetry rollout outage
               : First substantial API recovery 2h 20m
               : Full recovery 4h 22m
    2025-06-09 : OpenAI GPU host update incident
               : Major API models operational by 9h 64m
               : Full service recovery 15h 24m
    2026-02-02 : GitHub Actions hosted-runner outage
               : Standard runners recovered 4h 35m
               : Larger runners recovered 5h 55m
    2026-02-09 : GitHub multi-service cache overload incident
               : Total degraded service 2h 43m
               : Full recovery 3h 57m
    2026-03-05 : GitHub Actions Redis/load balancer incident
               : Mitigation 1h 00m
               : Full recovery 3h 06m

Systemic risks and recurring patterns

The dominant operating pattern in this sample is unsafe change interacting with hidden shared dependencies. OpenAI’s December 2024 control-plane outage, June 2025 GPU-host incident, and GitHub’s February and March 2026 events all show some version of the same sequence: a configuration change, rollout, routine update, or resiliency improvement touches a subsystem that is more load-bearing than expected, and the system’s fallback, failover, or rollback path is either too slow, insufficiently isolated, or blocked by the incident itself. That is a systemic reliability pattern, not a random cluster of one-offs.

A closely related recurring pattern is recovery that depends on the very control surfaces the outage has already impaired. OpenAI could not easily remove the offending telemetry service because the overloaded Kubernetes API servers impaired control-plane access. The June 2025 GPU-node incident openly says the absence of break-glass tooling slowed restoration. GitHub’s February 9 incident required traffic shaping and restarts at the Git proxy layer after shared components were already saturated, and its March 5 incident needed manual correction because failover left the cluster with no writable primary. These are textbook examples of recoverability debt: the service can fail faster than operators can regain enough control to reverse it.

Dependency concentration is also visible in how many customer-facing surfaces each incident touched. OpenAI’s December 2024 outage crossed API, ChatGPT, and Sora because service discovery was coupled to control-plane health. GitHub’s February 9 incident crossed GitHub.com, API, Actions, Git operations, Copilot, Issues, Pages, Dependabot, Codespaces, and more because cache rewrites and shared infrastructure overload cascaded into multiple front doors. When this many products hinge on a small number of internal coordination, discovery, or proxy layers, the public record supports treating those layers as architectural single points of serious business impact, even if they are technically replicated.

The sample also shows a meaningful difference between availability and correctness risk. Most incidents here were availability degradations, and most explicitly stated no data loss. GitHub’s merge-queue regression is different: it left permanent Git objects intact, but produced incorrect default-branch state for some repositories and could not be fully auto-repaired. That pushes reliability analysis beyond uptime and into semantic correctness, rollback safety, and post-incident customer repair burden. For organizations evaluating release-readiness, this class of issue is more concerning than a transient 5xx spike because it indicates that a deployment can silently alter customer-visible system state in a way that outlives the outage window.

flowchart LR
    A[Planned or routine change] --> B[Shared dependency stressed]
    B --> C[Hidden coupling or latent SPoF exposed]
    C --> D[Customer impact expands across products]
    D --> E[Rollback/failover path impaired or too coarse]
    E --> F[Manual recovery and backlog drain]

    A1[OpenAI telemetry rollout] --> B1[Kubernetes API servers / control plane]
    B1 --> C1[DNS service discovery fails]
    C1 --> D1[API + ChatGPT + Sora outage]

    A2[OpenAI host OS update] --> B2[GPU node networking conflict]
    B2 --> C2[Capacity loss]
    C2 --> D2[API + ChatGPT elevated errors]

    A3[GitHub cache TTL / rollout changes] --> B3[Auth DB cluster + background coordination]
    B3 --> C3[Git HTTPS proxy connection exhaustion]
    C3 --> D3[GitHub.com + API + Actions + Copilot degraded]

    A4[GitHub Redis resiliency updates] --> B4[Misconfigured Redis load balancer]
    B4 --> C4[No writable primary after failover]
    C4 --> D4[Actions orchestration degraded]

    A5[GitHub merge queue change] --> B5[Squash-merge queue path]
    B5 --> C5[Incorrect merge commits]
    C5 --> D5[State divergence in default branches]

The public remediation promises match these patterns closely, which increases confidence that the organizations themselves see the same structural issues. OpenAI’s remedies emphasize phased rollouts, fault injection, break-glass access, decoupling data plane from control plane, recovery-speed improvements, configuration audits, and DR drills. GitHub’s remedies emphasize cache redesign, platform isolation, load shedding, failover testing, automation to block bad config propagation, improved alerting, status transparency, Azure migration, and longer-term architectural decomposition. These are not cosmetic action items; they are direct responses to the recurring failure modes in the public record.

Recovery-program assessment

On the narrow question of whether the public record supports a bounded reliability review, the answer for both organizations is yes. The incident write-ups are detailed enough to support a finite review around specific subsystems and decisions: for OpenAI, that would include safe infrastructure rollouts, Kubernetes control-plane isolation, service-discovery dependency reduction, and GPU-host recovery tooling; for GitHub, it would include cache and authentication dependency shaping, Git proxy recovery behavior, Actions orchestration failover, merge-queue correctness controls, and dependency isolation across critical paths. The public evidence is specific enough to justify such engagements without needing to speculate beyond the sources.

The case for an architecture decision record is also strong. In OpenAI’s case, the clearest ADR candidates are decisions about whether DNS/service discovery should remain control-plane dependent, how break-glass access is guaranteed under control-plane distress, and how routine host updates are staged on GPU fleets. In GitHub’s case, the public record strongly supports ADRs on critical-path service isolation, auth/cache/database placement, Actions failover semantics, merge-queue correctness guardrails, and shared-infrastructure blast-radius reduction. These are recurring architectural questions, not one-time incident cleanups.

The more conservative judgment concerns a release-readiness engagement. Based on public evidence alone, a broad release-readiness endorsement is not yet warranted for either organization, especially where the change class resembles the incident triggers in the sample. OpenAI still shows recurring change-induced outages across distinct layers within an eight-month span — routing, telemetry/control-plane, and host OS/networking. GitHub’s public 2026 record shows a dense cluster of incidents tied to growth pressure, coupling, and failover/readiness weaknesses, and GitHub itself publicly acknowledged that its availability was not meeting expectations while more architectural work remained underway. That does not rule out a release-readiness engagement; it means the engagement should be narrowly scoped, control-specific, and evidence-gated, not general.

A practical reading of the public recovery programs is therefore:

OrganizationBounded reliability reviewArchitecture decision recordRelease-readiness engagementWhy
OpenAISupportedSupportedConditionally supported, narrow scope onlyStrong incident-level technical disclosure and clearly scoped remedies, but repeated change-induced outages and public action items that are mostly owner-light and timeline-light.
GitHubSupportedSupportedConditionally supported, cautious and subsystem-specificThe public program is strategically credible and comparatively transparent, but the 2026 incident cluster still indicates ongoing stabilization rather than demonstrated steady-state confidence across all critical paths.

The last important caveat is the cooling-off period. Because the request left the period unspecified, this report does not impose one. Even so, the elapsed time differs materially across organizations: OpenAI’s sampled incidents are older, while GitHub’s cluster is relatively recent to the report date. That asymmetry argues for more confidence in using OpenAI’s public record to frame a bounded review and more caution in using GitHub’s recent record as evidence of completed stabilization, even though GitHub’s transparency and strategic disclosure are arguably stronger.

Overall, the public evidence supports a clear reliability radar reading: the dominant risk is not isolated hardware failure but recurring change-management on top of concentrated shared dependencies, with observability and recoverability improving but still not fully ahead of blast-radius growth. That is exactly the kind of record that justifies a bounded, architecture-heavy reliability review, and exactly the kind of record that should make any release-readiness engagement strict, scoped, and evidence-based.