Two platforms bet on time as a control
On July 26 GitHub and PyPI introduced time-based defenses aimed at the software supply chain, a category of attack that has moved from theoretical to routine over the past year. GitHub added a cooldown to Dependabot, its automated dependency-update tool, so that newly published package versions are not turned into pull requests for a default of three days. PyPI, the Python Package Index, announced a complementary measure that blocks maintainers from adding new files to a package release once 14 days have passed since publication. Both changes share a premise: many supply-chain attacks are discovered within a short window, so introducing delay reduces the odds that automation adopts a malicious version before the community catches it.
GitHub framed the tradeoff directly, saying three days as the default balances two goals, pushing users past the window where most attacks live while not unnecessarily delaying dependency management. Crucially, security patches bypass the cooldown entirely and deploy immediately, so the delay applies to feature and version updates rather than to fixes for known vulnerabilities. That distinction matters, because a blanket delay on all updates would slow the very patches defenders want applied fastest. The design tries to slow the attack path without slowing the remediation path, which is the right shape for a control that lives inside an automated pipeline.
What each mechanism actually stops
The Dependabot cooldown targets a specific attack shape: an adversary compromises a package or its maintainer, publishes a malicious version, and relies on automated tooling to pull that version into thousands of downstream projects within hours. A 72-hour delay means that by the time automation would adopt the new version, the malicious release has had days to be reported, yanked, or flagged. Users retain full control through the cooldown configuration option and can set a shorter or longer delay per repository, so teams that need bleeding-edge updates for a particular dependency can tune the window rather than accept a single global value.
PyPI's 14-day file-addition block addresses a different technique. Attackers who compromise a publishing token or a maintainer's CI workflow can poison an old, trusted release by quietly adding new files to it, letting a version that the community already vetted become a delivery vehicle. By freezing the file set of a release after two weeks, PyPI removes that option and forces an attacker who wants to distribute malicious code to publish a fresh version, which is far more visible and subject to the same scrutiny as any new release. Together the two measures narrow both the automatic-adoption path and the trusted-release-poisoning path.
A year of attacks forced the change
These defenses did not arrive in a vacuum. Both ecosystems absorbed a series of high-profile supply-chain campaigns over the past year, including the chalk and debug package attacks, the s1ngularity operation, the self-propagating Shai-Hulud campaign, and the GhostAction attack. Each demonstrated a variation on the same theme: the open-source distribution channels that make modern development fast are also a direct path into every organization that consumes them. When a single compromised package can reach thousands of build pipelines automatically, the distribution layer itself becomes the target, and the platforms that operate that layer are the ones positioned to add friction.
For enterprise leaders, the significant point is that the platforms are now treating supply-chain integrity as their responsibility rather than leaving it entirely to downstream consumers. That is a welcome shift, and it does not transfer the risk off the enterprise's books. The organizations consuming these packages still own the consequences of a compromise, and the platform controls are a backstop rather than a guarantee. We read these changes as raising the floor for everyone while leaving the ceiling of protection dependent on what each organization builds on top: provenance verification, artifact signing, and its own review of what enters the build.
How to fold this into your pipeline
The practical guidance is straightforward. Keep the Dependabot cooldown enabled at its default, then tune it per repository based on how much update latency each project can tolerate against how much exposure it carries. A widely deployed internal service that pulls many third-party packages benefits from the full delay, while an isolated tool with few dependencies might accept a shorter window. Because security patches bypass the cooldown, teams do not need to worry that the delay slows their response to disclosed vulnerabilities, which removes the main objection to turning it on. The default is a sensible starting point for most repositories.
The delay is one layer, and it should sit alongside the controls that verify what a package is rather than only when it arrives. Provenance attestation, dependency pinning, artifact signing, and a maintained software bill of materials all address the question the cooldown cannot: whether a given release is what it claims to be. We would treat the platform changes as an opportunity to review the whole supply-chain posture rather than a reason to relax it. The cooldown buys time for the community to catch a bad release, and the enterprise still needs its own means of deciding what it trusts into production.
The governance signal for technology leaders
There is a governance story here worth carrying to leadership. Supply-chain risk has graduated from a niche security concern to a board-relevant category, because the attacks now reliably reach production systems through trusted channels and the blast radius spans every application built on the affected packages. When GitHub and PyPI, two foundational pieces of the modern development stack, both ship structural defenses in the same week, that is a signal about how serious and how mainstream the threat has become. It is reasonable for a CISO to reference these changes as evidence that the ecosystem is responding and that the enterprise's own program needs to keep pace.
The measure of a mature program is whether it can answer basic questions about its dependencies: what it consumes, from whom, how those artifacts are verified, and how quickly a malicious release would be detected and removed. The platform cooldowns help with the last of these, and the rest remain the organization's work. We would use this moment to confirm that dependency governance has a clear owner, that the software bill of materials is current, and that the pipeline enforces provenance rather than trusting the registry by default. Time-based delays are a smart addition to the ecosystem, and they are one layer in a defense that the enterprise still has to build for itself.



