Skip to content

fix(updater): detect nightly tag republish - #454

Merged
Ehco1996 merged 1 commit into
masterfrom
fix/updater-nightly-republish
May 5, 2026
Merged

fix(updater): detect nightly tag republish#454
Ehco1996 merged 1 commit into
masterfrom
fix/updater-nightly-republish

Conversation

@Ehco1996

@Ehco1996 Ehco1996 commented May 5, 2026

Copy link
Copy Markdown
Owner

Summary

  • Nightly uses a rolling tag (v1.1.7-next), so version-string equality made updater.Check/Apply short-circuit to "already up to date" even after a fresh nightly release.
  • Compare release published_at against the local ldflag-injected BuildTime to detect republished nightly builds. Stable channel is unaffected.
  • Accepts both ldflag formats: goreleaser RFC3339 ({{.Date}}) and Makefile 2006-01-02-15:04:05. Empty / unparseable BuildTime falls back to false so bare go build doesn't trigger false positives.

Test plan

  • go test ./internal/updater/... -count=1 (added TestParseBuildTime, TestNightlyRepublished)
  • make lint
  • Deploy to a node, click Check in the dashboard against the latest republished nightly — should show update available; Apply should proceed and restart cleanly.

🤖 Generated with Claude Code

Nightly uses a rolling tag (v1.1.7-next), so version-string equality
made `Check` and `Apply` short-circuit to "already up to date" even
after a fresh nightly was published. Both ldflag paths (goreleaser and
Makefile) inject BuildTime, so compare release.published_at against the
local BuildTime when versions match. Stable channel is unaffected since
its tags don't roll.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@Ehco1996
Ehco1996 merged commit 1e0e74c into master May 5, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant