Commit f59f5b1
Add 7-day dependency cooldowns across all package managers (#5100)
## Summary
- Adds **dependency cooldown** (7 days) to all package managers in the
monorepo as a supply chain defense
- **uv (Python)**: `exclude-newer = "7 days"` added to 14
`pyproject.toml` files, all 13 `uv.lock` files regenerated
- **pnpm (JS)**: `minimumReleaseAge: 10080` (7 days in minutes) added
via new `pnpm-workspace.yaml` in 6 projects
## Context
[Research
shows](https://nesbitt.io/2026/03/04/package-managers-need-to-cool-down.html)
that 8 out of 10 supply chain attacks have exploitation windows under 7
days. By delaying installation of newly published versions, we give the
community and security vendors time to flag compromised packages before
they reach our builds.
This is particularly relevant given our recent experience with the
litellm supply chain attack.
## Lockfile impact
- All uv.lock files regenerated — uv embeds the resolved cooldown
timestamp in the lockfile
- `landing-site` downgraded `attrs v26.1.0 -> v25.4.0` because v26.1.0
was published within the last 7 days — the cooldown correctly filtered
it out
- pnpm lockfiles unchanged — all existing deps already satisfy the 7-day
age requirement
## Test plan
- [x] `uv lock` succeeds in all 13 Python projects
- [x] `pnpm install` succeeds in all 6 JS projects
- [ ] CI passes
- [ ] If a brand-new package version is urgently needed, use `uv lock
--upgrade <pkg>` or add to `minimumReleaseAgeExclude` in pnpm
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sourced from commit 28fc67ddd174713fc331a2c1ff2a8e475bca81791 parent e883a5c commit f59f5b1
3 files changed
Lines changed: 10 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
40 | 43 | | |
41 | 44 | | |
42 | 45 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
1 | 4 | | |
2 | 5 | | |
3 | 6 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments