From 3f9fe07c7bb0aab5acc8f01842536dd5c800296f Mon Sep 17 00:00:00 2001 From: Admin <1+admin@noreply.git.dcntrlized.org> Date: Mon, 3 Aug 2026 14:22:52 +0100 Subject: [PATCH] fix(containers): fall back to image tag when version metadata is empty --- src/lib/containers/install.go | 4 ++++ src/lib/containers/installed.go | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/src/lib/containers/install.go b/src/lib/containers/install.go index 975c473..59c706e 100644 --- a/src/lib/containers/install.go +++ b/src/lib/containers/install.go @@ -47,6 +47,10 @@ func InstallContainer(ctx context.Context, item types.RegistryContainer) error { } // 2.5. Persist install metadata so installed-but-not-running state can be tracked without Docker lookups + // The version is required for update detection; fall back to the image tag when the payload omitted it. + if item.Version == "" { + item.Version = imageTag(item.Image) + } metadata := types.InstalledMetadata{ RegistryContainer: item, InstalledAt: time.Now().UTC().Format(time.RFC3339), diff --git a/src/lib/containers/installed.go b/src/lib/containers/installed.go index 35d1efd..71a0044 100644 --- a/src/lib/containers/installed.go +++ b/src/lib/containers/installed.go @@ -37,6 +37,12 @@ func (cache *ContainerCache) LoadInstalledContainers() error { continue } + // Older install records left the version empty; fall back to the image tag + // so update detection has something to compare against. + if metadata.Version == "" { + metadata.Version = imageTag(metadata.Image) + } + cache.AddService(types.Container{ ServiceName: name, Name: metadata.Name,