<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Growing convinced we could and should ship new version cooldown in the Go modules ecosystem.]]></title><description><![CDATA[<p>Growing convinced we could and should ship new version cooldown in the Go modules ecosystem.</p><p>The subdb and MVP get us far, and supply chain attacks are not much of a thing in Go beyond typosquatting, but we want to stay ahead of them.</p><p><div class="card col-md-9 col-lg-6 position-relative link-preview p-0">



<a href="https://github.com/golang/go/issues/76485" title="proposal: cmd/go: support dependency cooldown in Go tooling · Issue #76485 · golang/go">
<img src="https://opengraph.githubassets.com/44c5d22bcb526bf5869959f38198d8af2c6dcb7fa9cd15c488c19d0f5e60544e/golang/go/issues/76485" class="card-img-top not-responsive" style="max-height: 15rem;" alt="Link Preview Image" />
</a>



<div class="card-body">
<h5 class="card-title">
<a href="https://github.com/golang/go/issues/76485">
proposal: cmd/go: support dependency cooldown in Go tooling · Issue #76485 · golang/go
</a>
</h5>
<p class="card-text line-clamp-3">Proposal Details Background Supply chain attacks on open-source software dependencies have become a regular occurrence. Go already takes measures against supply chain attacks. While Go libraries aren't a common target, this year GitLab d...</p>
</div>
<a href="https://github.com/golang/go/issues/76485" class="card-footer text-body-secondary small d-flex gap-2 align-items-center lh-2">



<img src="https://github.githubassets.com/favicons/favicon.svg" alt="favicon" class="not-responsive overflow-hiddden" style="max-width: 21px; max-height: 21px;" />



<p class="d-inline-block text-truncate mb-0">GitHub <span class="text-secondary">(github.com)</span></p>
</a>
</div></p>]]></description><link>https://board.circlewithadot.net/topic/288b1b51-e449-4f1e-8c30-23a2f98c9618/growing-convinced-we-could-and-should-ship-new-version-cooldown-in-the-go-modules-ecosystem.</link><generator>RSS for Node</generator><lastBuildDate>Fri, 10 Apr 2026 16:05:21 GMT</lastBuildDate><atom:link href="https://board.circlewithadot.net/topic/288b1b51-e449-4f1e-8c30-23a2f98c9618.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 12 Mar 2026 02:11:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Fri, 13 Mar 2026 15:46:41 GMT]]></title><description><![CDATA[<p><span><a href="/user/filippo%40abyssdomain.expert">@<span>filippo</span></a></span> If you force an upstream fetch you get a big fatal error about the checksums not matching (which will detect the substitution). Otherwise you'll pull without any way to discover that the upstream and the proxy don't match.</p><p>(I force pulls of upstream for my own eccentric reasons so I get to see this every so often.)</p>]]></description><link>https://board.circlewithadot.net/post/https://mastodon.social/users/cks/statuses/116222643513587643</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://mastodon.social/users/cks/statuses/116222643513587643</guid><dc:creator><![CDATA[cks@mastodon.social]]></dc:creator><pubDate>Fri, 13 Mar 2026 15:46:41 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Fri, 13 Mar 2026 08:49:29 GMT]]></title><description><![CDATA[<p><span><a href="/user/cks%40mastodon.social">@<span>cks</span></a></span> yep see <a href="https://words.filippo.io/go-source/" rel="nofollow noopener"><span>https://</span><span>words.filippo.io/go-source/</span><span></span></a></p><p>There is no “unless you force an upstream fetch” though: unless you turn off the sumdb there is only one true version. The issue is using an unverifiable view like the GitHub UI to try to view it.</p><p>Not different from any other ecosystem though: plenty of malicious npm packages with innocent code on GitHub.</p>]]></description><link>https://board.circlewithadot.net/post/https://abyssdomain.expert/users/filippo/statuses/116221003027924788</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://abyssdomain.expert/users/filippo/statuses/116221003027924788</guid><dc:creator><![CDATA[filippo@abyssdomain.expert]]></dc:creator><pubDate>Fri, 13 Mar 2026 08:49:29 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Fri, 13 Mar 2026 02:39:11 GMT]]></title><description><![CDATA[<p><span><a href="/user/filippo%40abyssdomain.expert">@<span>filippo</span></a></span> This has made me think of a little attack that's basically a reverse tag replacement attack:<br />* get access to a repo and publish a compromised version with a new version tag<br />* get the Go proxy to fetch and cache your new version<br />* force-push an innocent version under the same tag</p><p>People will look at your repo and see harmless code under the tag, but I believe actual 'go mod' updates use the proxy's cached version (compromised) and its cached sum, unless you force upstream use?</p>]]></description><link>https://board.circlewithadot.net/post/https://mastodon.social/users/cks/statuses/116219546952428370</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://mastodon.social/users/cks/statuses/116219546952428370</guid><dc:creator><![CDATA[cks@mastodon.social]]></dc:creator><pubDate>Fri, 13 Mar 2026 02:39:11 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Fri, 13 Mar 2026 00:52:21 GMT]]></title><description><![CDATA[<p><span><a href="/user/filippo%40abyssdomain.expert">@<span>filippo</span></a></span> seeing Google finally publishing rust ones gives me hope. We need to keep breaking the seal, not let people freak out, and just get on with it</p>]]></description><link>https://board.circlewithadot.net/post/https://don.rag.pub/users/raggi/statuses/116219126824588740</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://don.rag.pub/users/raggi/statuses/116219126824588740</guid><dc:creator><![CDATA[raggi@don.rag.pub]]></dc:creator><pubDate>Fri, 13 Mar 2026 00:52:21 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Fri, 13 Mar 2026 00:41:20 GMT]]></title><description><![CDATA[<p><span><a href="/user/filippo%40abyssdomain.expert">@<span>filippo</span></a></span> Sorry, I didn't manage to say my actual thought. I think the dependabot race shows that today, people are updating rapidly as soon as new versions become visible to them, even with MVP. So slowing down visibility through a cooldown would buy time.</p>]]></description><link>https://board.circlewithadot.net/post/https://mastodon.social/users/cks/statuses/116219083551434462</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://mastodon.social/users/cks/statuses/116219083551434462</guid><dc:creator><![CDATA[cks@mastodon.social]]></dc:creator><pubDate>Fri, 13 Mar 2026 00:41:20 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Fri, 13 Mar 2026 00:36:10 GMT]]></title><description><![CDATA[<p><span><a href="/user/raggi%40don.rag.pub">@<span>raggi</span></a></span> Review attestation is one of those things I heard talked about for all of my career and never once saw implemented successfully at scale. Even at large companies with employees!</p><p>There's a fundamental incentives problem which I mostly saw ignored or anyway unsolved.</p>]]></description><link>https://board.circlewithadot.net/post/https://abyssdomain.expert/users/filippo/statuses/116219063187131377</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://abyssdomain.expert/users/filippo/statuses/116219063187131377</guid><dc:creator><![CDATA[filippo@abyssdomain.expert]]></dc:creator><pubDate>Fri, 13 Mar 2026 00:36:10 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Fri, 13 Mar 2026 00:34:48 GMT]]></title><description><![CDATA[<p><span><a href="https://hachyderm.io/@markd">@<span>markd</span></a></span> Why wouldn't clients that are most sensitive to risk adopt a longer, instead of shorter, cooldown?</p>]]></description><link>https://board.circlewithadot.net/post/https://abyssdomain.expert/users/filippo/statuses/116219057858728565</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://abyssdomain.expert/users/filippo/statuses/116219057858728565</guid><dc:creator><![CDATA[filippo@abyssdomain.expert]]></dc:creator><pubDate>Fri, 13 Mar 2026 00:34:48 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Fri, 13 Mar 2026 00:34:20 GMT]]></title><description><![CDATA[<p><span><a href="/user/cks%40mastodon.social">@<span>cks</span></a></span> Editing a tag is indistinguishable from an attack, so it will never work, cooldown or not. The cooldown clock starts when the sumdb captures the first contents, which then are it forever.</p>]]></description><link>https://board.circlewithadot.net/post/https://abyssdomain.expert/users/filippo/statuses/116219056020002587</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://abyssdomain.expert/users/filippo/statuses/116219056020002587</guid><dc:creator><![CDATA[filippo@abyssdomain.expert]]></dc:creator><pubDate>Fri, 13 Mar 2026 00:34:20 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Thu, 12 Mar 2026 11:45:39 GMT]]></title><description><![CDATA[<p><span><a href="/user/filippo%40abyssdomain.expert">@<span>filippo</span></a></span> we should work on review attestation, given mvs I don’t think this will have a ton of impact</p>]]></description><link>https://board.circlewithadot.net/post/https://don.rag.pub/users/raggi/statuses/116216033416518253</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://don.rag.pub/users/raggi/statuses/116216033416518253</guid><dc:creator><![CDATA[raggi@don.rag.pub]]></dc:creator><pubDate>Thu, 12 Mar 2026 11:45:39 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Thu, 12 Mar 2026 02:54:07 GMT]]></title><description><![CDATA[<p><span><a href="/user/filippo%40abyssdomain.expert">@<span>filippo</span></a></span> But then coders will go back to node.js!</p>]]></description><link>https://board.circlewithadot.net/post/https://masto.hackers.town/users/drwho/statuses/116213943363173018</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://masto.hackers.town/users/drwho/statuses/116213943363173018</guid><dc:creator><![CDATA[drwho@masto.hackers.town]]></dc:creator><pubDate>Thu, 12 Mar 2026 02:54:07 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Thu, 12 Mar 2026 02:19:37 GMT]]></title><description><![CDATA[<p><span><a href="/user/filippo%40abyssdomain.expert">@<span>filippo</span></a></span> If cooldown becomes common would that mean that supply chain attacks would mostly affect early adopters who presumably are more sensitive to the risks?</p>]]></description><link>https://board.circlewithadot.net/post/https://hachyderm.io/users/markd/statuses/116213807654613688</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://hachyderm.io/users/markd/statuses/116213807654613688</guid><dc:creator><![CDATA[markd@hachyderm.io]]></dc:creator><pubDate>Thu, 12 Mar 2026 02:19:37 GMT</pubDate></item><item><title><![CDATA[Reply to Growing convinced we could and should ship new version cooldown in the Go modules ecosystem. on Thu, 12 Mar 2026 02:19:11 GMT]]></title><description><![CDATA[<p><span><a href="/user/filippo%40abyssdomain.expert">@<span>filippo</span></a></span> My experience is that I've seen multiple cases where dependabot updates raced with the dependency re-publishing a different thing under the same tag. The result was something that would only build if you used the proxy (which had cached the original published version). This is obviously bad practice (possibly in multiple places), but I think it suggests a cooldown would be useful even with MVP.</p><p>(Also maybe dependabot needs a cooldown itself, but ... good luck persuading them.)</p>]]></description><link>https://board.circlewithadot.net/post/https://mastodon.social/users/cks/statuses/116213806000092659</link><guid isPermaLink="true">https://board.circlewithadot.net/post/https://mastodon.social/users/cks/statuses/116213806000092659</guid><dc:creator><![CDATA[cks@mastodon.social]]></dc:creator><pubDate>Thu, 12 Mar 2026 02:19:11 GMT</pubDate></item></channel></rss>