Skip to content

Configure Renovate to update Go version across all pinning files atomically #3360

Description

@fullsend-ai-retro

What happened

Renovate opened PR #3340 to bump the Go version from 1.25.8 to 1.26.4, but only updated .tool-versions. The review agent at 2026-06-15 02:12 UTC flagged 6 files still pinned to the old version: Dockerfile:19, Dockerfile.dist:19, go.mod:3, tools/go.mod:3, tools/kubectl/go.mod:3, and acceptance/go.mod:3. No human reviewed the PR, and Renovate autoclosed it 11 days later — likely superseded by a newer update that also suffered the same incomplete-update pattern.

What could go better

The root cause is that the Renovate configuration only manages the .tool-versions file for Go version updates, while the Go version is pinned in at least 6 other locations. This means every Renovate Go bump PR will be flagged by the review agent for the same version mismatch, will require manual intervention, and will likely be autoclosed without being merged. This is a recurring pattern, not a one-off — any future Go version update will hit the same problem. Confidence: high, based on the single-file diff and the review agent's findings.

Proposed change

Update the Renovate configuration (likely renovate.json or .github/renovate.json in conforma/cli) to use a regexManagers or customManagers configuration that groups all Go version references into a single update. The files that need to be covered:

  1. .tool-versions — already managed
  2. DockerfileFROM golang:X.Y.Z base image
  3. Dockerfile.distFROM go-toolset:X.Y.Z base image (with digest pinning)
  4. go.modgo X.Y.Z directive
  5. tools/go.modgo X.Y.Z directive
  6. tools/kubectl/go.modgo X.Y.Z directive
  7. acceptance/go.modgo X.Y.Z directive

Use Renovate's packageRules with groupName to ensure all these updates land in a single PR. For go.mod files, Renovate's built-in gomod manager handles the go directive. For Dockerfiles, the built-in dockerfile manager handles FROM directives. The key is grouping them so they update atomically.

Validation criteria

The next Renovate PR for a Go version bump should update all 7 files in a single PR. The review agent should not flag version mismatches between .tool-versions and other Go version references. Verify by checking the next 2-3 Go version update PRs.


Generated by retro agent from #3340

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions