# PyPI (Python Infrastructure): Critical incident: Python Infrastructure Outage

**Summary:** _summary pending_
- Kind: Major incident · Label: critical (vendor)
- Changed: 2026-02-26 20:40 UTC · Detected: 2026-10-19 17:03 UTC
- [Source: https://stspg.io/7slh65j2y14b](https://stspg.io/7slh65j2y14b)
- [Company: PyPI (Python Infrastructure)](https://rewindex.com/company/pypi.md)
- Versions: before (none: first archived) → after incident\_version:669/r47c43jw19zq@b6e08ebf1401
- Change 1 of 1 for this incident

Incident page (full timeline): [Python Infrastructure Outage](https://rewindex.com/company/pypi/incidents/r47c43jw19zq.md)
## What changed

**1. Added: Title**

```diff
+ Python Infrastructure Outage
```

**2. Added: Impact**

```diff
+ critical
```

**3. Added: Status**

```diff
+ postmortem
```

**4. Added: Start time**

```diff
+ 2026-02-26 20:40 UTC
```

**5. Added: Resolved time**

```diff
+ 2026-02-26 23:26 UTC
```

**6. Added: Affected components**

```diff
+ bugs.python.org, python.org - Backends, python.org - CDN, python.org - Downloads Backends, python.org - python.org - Backends, python.org - python.org - CDN, python.org - python.org - Downloads Backends, us.pycon.org
```

**7. Added: Update** (investigating) · 2026-02-26 20:04 UTC

```diff
+ We are currently investigating this issue
```

**8. Added: Update** (investigating) · 2026-02-26 20:40 UTC

```diff
+ The root cause has been identified as an erroneous scaling operation that affected some application workloads. All services have been restored and are coming back online. We are monitoring to confirm full recovery.
```

**9. Added: Update** (resolved) · 2026-02-26 23:26 UTC

```diff
+ The incident has been resolved.
```

**10. Added: Update** (postmortem) · 2026-02-26 23:26 UTC

```diff
+ The incident has been resolved. ## Incident Report: Cluster-wide service outage **Duration**: ~36 minutes \(20:04–20:40 UTC\) **Impact**: Some PSF-hosted services were unavailable, including [python.org](http://python.org), [us.pycon.org](http://us.pycon.org), PyPI stats, [bugs.python.org](http://bugs.python.org), and related services.  What was unaffected was our other cluster that manages [PyPI.org](http://PyPI.org) among other services related to PyPI. **Root Cause**: During local development of kubernetes workloads locally there was an incorrect context switch to one of our production clusters. The scale-down commands ran against the production cluster instead of the local environment, iterating through all deployments and setting them to zero replicas. which created cascading failures. **Recovery**: Services were restored with the help of Ee Durbin by bringing up infrastructure in dependency order, original replica counts were recovered from Kubernetes event history. Action items: * Separate kubeconfig files for production vs local, rather than relying on context switching * Research adding admission control or policies to prevent bulk scale-to-zero operations * Document the infrastructure dependency chain and recovery runbook for future incidents Jacob Coffee, PSF Infrastructure  Team
```

## History of this incident

| When (UTC) | Change | Label |
| --- | --- | --- |
| 2026-02-26 20:40 UTC | Critical incident: Python Infrastructure Outage (this change) | critical |

All PyPI (Python Infrastructure) changes: [timeline](https://rewindex.com/company/pypi/changes.md)
_Diff excerpts are shown on normalized text: dates, counters and tokens appear as ‹date›, ‹count›, ‹tok›; noise-only edits are hidden. Rewindex shows the changed passages, not a copy of the page._


---
Canonical: https://rewindex.com/change/i3933c27ec15572 · Markdown: https://rewindex.com/change/i3933c27ec15572.md · JSON: https://rewindex.com/api/v1/changes/i3933c27ec15572 · Generated 2026-10-20T00:48:56.330Z
