GitHub Blog

The case for a cooldown: Why Dependabot now waits before issuing version updates

Dependabot now waits at least three days after a release before opening a pull request to mitigate supply chain attacks where malicious versions are published and quickly pulled. This cooldown is on by default and configurable. The change is based on data showing many npm malware advisories are caught within hours, and a cooldown helps bypass that window. It is part of defense in depth, not a standalone solution.

Statesummarized
Snapshots1
AI Outputs2
Open issues0

validated summary

English

The case for a cooldown: Why Dependabot now waits before issuing version updates

Dependabot now waits at least three days after a release before opening a pull request to mitigate supply chain attacks where malicious versions are published and quickly pulled. This cooldown is on by default and configurable. The change is based on data showing many npm malware advisories are caught within hours, and a cooldown helps bypass that window. It is part of defense in depth, not a standalone solution.

  • Attackers phished an npm maintainer and published malicious packages like chalk and debug.
  • Automated update tools can open pull requests for malicious versions within hours.
  • Dependabot now waits at least three days before opening version update pull requests.
  • The cooldown gives time for detection and removal by security researchers and scanners.
  • GitHub Advisory Database shows over 6,500 npm malware advisories in the year ending May 2026.
  • Three days balances safety and timeliness; users can configure longer or shorter windows.
  • A cooldown is one layer of defense; other measures like lockfiles and install script restrictions are recommended.

Chinese

冷却期的必要性:Dependabot 为何现在在发布版本更新前等待

Dependabot 现在在发布新版本后至少等待三天才提出拉取请求,以防止供应链攻击中恶意版本被快速发布和撤回。该冷却期默认启用且可配置。这一改变基于数据显示许多 npm 恶意软件通报在数小时内被捕获,冷却期有助于避开这一窗口。它是深度防御的一部分,而非独立解决方案。

  • 攻击者通过钓鱼获取了 npm 维护者的凭证,并发布了 chalk、debug 等恶意包。
  • 自动化更新工具可在数小时内为恶意版本打开拉取请求。
  • Dependabot 现在在提出版本更新拉取请求前至少等待三天。
  • 冷却期为安全研究人员和扫描器提供了检测和移除恶意版本的时间。
  • GitHub 咨询数据库显示,截至 2026 年 5 月的一年内,有超过 6,500 个 npm 恶意软件通报。
  • 三天的时间平衡了安全与时效性;用户可以配置更长或更短的窗口。
  • 冷却期是深度防御的一层;还建议使用锁定文件和禁用安装脚本等措施。

Dependabot / supply chain security / npm / malicious packages / cooldown / version updates / GitHub Advisory Database

Full Article

Carlin Cherry · @carlincherry

July 23, 2026|

4 minutes

Share:In September 2025, an attacker phished the credentials of a single npm maintainer and published booby-trapped versions of chalk , debug , and around a dozen other packages that are together downloaded more than 2 billion times a week. The code rewrote cryptocurrency wallet addresses inside any browser app that loaded it. The poisoned versions were live for roughly two hours before the community caught them and npm pulled them.Two hours is a fast response. However, it is also more than enough time for an automated update tool to see the new version, open a pull request, and put it in front of your team, because version update tooling is built to grab the newest release the moment it lands.That pattern sits behind a growing share of supply chain attacks. The malicious code rides in on a brand-new release, is published to a public registry, and gets pulled into build pipelines within minutes, before a human or a scanner has even looked at it.A cooldown changes that math. Waiting a few days before adopting a new release gives maintainers, security researchers, and automated scanners time to spot a malicious version and get it pulled before it ever reaches your pull requests.For non-security version bumps, Dependabot now waits at least three days after a release is published before opening a pull request. The cooldown configuration option in the dependabot.yml still controls the behavior, though, so you can choose a different cooldown parameter that fits your project.Case studies and GitHub Advisory Database dataWhen attackers compromise a popular package, the poisoned version tends to have a short lifespan. It gets published, spreads through whatever installs it, and gets caught, usually within hours. The previous example was live for only two hours. Other widely used packages have followed the same arc, with compromised builds of Solana web3.js , Axios , and ua-parser-js each caught within a few hours of publication.More generally, GitHub sees this pattern directly through the GitHub Advisory Database , which catalogs open source security advisories across ecosystems. In the year ending May 2026, the database published more than 6,500 npm malware advisories, up from roughly 6,200 the year before, which adds up to approximately 18 newly cataloged malicious npm packages every day. A cooldown keeps you out of that opening window and lets a release accumulate some scrutiny before it reaches you.Why three daysPublished malware targeting popular packages tends to get caught fast. A review of 21 widely reported supply chain incidents between 2018 and 2026 found the same pattern: malicious versions of axios, Solana web3.js, ua-parser-js, and Ledger Connect Kit were each pulled within hours of publication, and a cooldown could have filtered out the majority of these short-lived publishes before anyone installed them.Three days as the default balances two goals: it pushes you past the window where most of these attacks live, and it doesn’t hold your dependencies back longer than necessary.Other community members have also landed on a three-day cooldown (though some go even longer), so this default behavior keeps Dependabot consistent as developers move between tools.You can always set a longer or shorter window with Dependabot’s cooldown configuration option.Defense in depthA cooldown is built for a specific pattern: a malicious version that ships, spreads, and gets caught quickly. It does little against attacks that play a longer game, including backdoors planted in releases and left dormant, maintainer sabotage, or a compromised build system. The point of the default is to remove a common and time-sensitive path, not to stand in for the rest of your defenses.Because a cooldown only addresses the fast-moving case, it should be one layer among several. Some additional steps to take include pinning dependencies with lockfiles, disabling install scripts in CI where you can, scoping the tokens in your build pipelines, and reviewing updates before they merge.If you’d like to customize your delay for highly trusted internal packages versus public registries, check out the documentation on configuring Dependabot. Or see the Dependabot configuration options reference for the full set of cooldown parameters.Where we go from hereThis is one step among several we are taking to harden the software supply chain for everyone who builds on GitHub. It’s on by default, so you don’t have to change anything to activate it. You can also tune it to fit your workflow.Tell us how it performs in the Dependabot community discussions .Tags:

Dependabot

supply chain securityWritten byCarlin is a Product Manager at GitHub working in GitHub Advanced Security, with a focus on Dependabot. Her background in software engineering and data science informs her data-driven approach to product management. She lives in Washington with her partner and their dog, Cookie, and spends her free time cycling and playing competitive board games.Related postsSecurity

Next chapter: Restructuring GitHub’s bug bounty programGitHub is making some significant changes to its bug bounty program, shifting its focus to give researchers a better experience working with the GitHub team.Application security

How GitHub gave every repository a durable ownerGitHub had over 14,000 repositories. Fewer than half had clear ownership. Here’s how we gave every active repository a validated owner in under 45 days, archived the rest, and made ownership the foundation for everything that followed.Application security

How GitHub used secret scanning to reach inbox zeroGitHub had 20,000+ secret scanning alerts across 15,000 repositories. Here’s how we separated signal from noise, built remediation workflows, and reached inbox zero in nine months.We do newsletters, tooDiscover tips, technical guides, and best practices in our biweekly newsletter just for devs.Your email address

Snapshots

Fetch evidence retained for parsing and audit.

200 · text/html; charset=UTF-8

07/24/2026, 08:00 AM

8588c9dca0149d4a7652ee23d004630f89258c23b15ad3b3ea2dcd07bb8bdb76

AI Outputs

Structured model outputs with validation status.

article.summarize

deepseek-v4-flash · valid

{"tags":["Dependabot","supply chain security","npm","malicious packages","cooldown","version updates","GitHub Advisory Database"],"titleEn":"The case for a cooldown: Why Dependabot now waits before issuing version updates","titleZh":"冷却期的必要性:Dependabot 为何现在在发布版本更新前等待","summaryEn"...
article.classify

deepseek-v4-flash · valid

{"relevant":true,"confidence":0.95,"primaryTopic":"product-updates","secondaryTopics":["software-engineering"]}

Quality And Digest Links

Open and resolved issues, plus daily digest appearances.

digest

Signal Hub 2026-07-24

这篇来自 GitHub 博客的文章详细介绍了 Dependabot 中一项重要的安全增强功能,直接针对通过恶意 npm 包进行的供应链攻击。冷却机制是一项基于数据的实用改进。 (score: 0.90)

position 107/24/2026, 12:00 AMdraft