<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Go mod version on Alwaldend</title>
		<link>https://alwaldend.com/docs/infra/src/openspec/specs/go-mod-version/</link>
		<description>Recent content in Go mod version on Alwaldend</description>
		<generator>Hugo</generator>
		<language>en</language>
		
		
		
		
			<atom:link href="https://alwaldend.com/docs/infra/src/openspec/specs/go-mod-version/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>go-mod-version Specification</title>
				<link>https://alwaldend.com/docs/infra/src/openspec/specs/go-mod-version/spec/</link>
				<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
				<guid>https://alwaldend.com/docs/infra/src/openspec/specs/go-mod-version/spec/</guid>
				<description>&lt;span id=&#34;go-mod-version-specification&#34;&gt;&lt;/span&gt;&lt;h2 id=&#34;purpose&#34;&gt;Purpose&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#purpose&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Keep tracked &lt;code&gt;go.mod&lt;/code&gt; files on the Go version configured for&#xA;&lt;a href=&#34;https://alwaldend.com/docs/tools/go_mod/&#34;&gt;&lt;code&gt;tools/go_mod&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Sources: &lt;a href=&#34;https://alwaldend.com/docs/tools/go_mod/&#34;&gt;tool README&lt;/a&gt;,&#xA;&lt;a href=&#34;../../../../../tools/go_mod/cmd/go_mod/BUILD.bazel&#34;&gt;tool BUILD&lt;/a&gt;, and&#xA;&lt;a href=&#34;../../changes/archive/2026-09-12-add-go-mod-version-tool/proposal.md&#34;&gt;archive&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;requirements&#34;&gt;Requirements&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#requirements&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3 id=&#34;requirement-configured-gomod-version&#34;&gt;Requirement: Configured go.mod version&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#requirement-configured-gomod-version&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The repository SHALL provide a &lt;code&gt;tools/go_mod&lt;/code&gt; command that discovers every&#xA;tracked &lt;code&gt;go.mod&lt;/code&gt; file and sets its &lt;code&gt;go&lt;/code&gt; directive to the version configured in&#xA;the tool&amp;rsquo;s BUILD file. The command MUST offer an update mode and a check mode.&lt;/p&gt;&#xA;&lt;h4 id=&#34;scenario-update-module-files&#34;&gt;Scenario: Update module files&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#scenario-update-module-files&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;WHEN&lt;/strong&gt; a user runs the update target&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;THEN&lt;/strong&gt; every tracked &lt;code&gt;go.mod&lt;/code&gt; file whose &lt;code&gt;go&lt;/code&gt; directive differs from the&#xA;configured version is rewritten to that version&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;AND&lt;/strong&gt; files already on the configured version remain unchanged&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4 id=&#34;scenario-check-module-files&#34;&gt;Scenario: Check module files&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#scenario-check-module-files&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;WHEN&lt;/strong&gt; the check test runs&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;THEN&lt;/strong&gt; it fails if any tracked &lt;code&gt;go.mod&lt;/code&gt; file has a &lt;code&gt;go&lt;/code&gt; directive&#xA;different from the configured version&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;AND&lt;/strong&gt; it passes when every tracked &lt;code&gt;go.mod&lt;/code&gt; file matches&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;requirement-repository-quality-integration&#34;&gt;Requirement: Repository quality integration&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#requirement-repository-quality-integration&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The go.mod version check MUST run as part of &lt;code&gt;//:repo_quality_test&lt;/code&gt; so a&#xA;version mismatch fails repository quality.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
