Skip to content

fix(cli): Fix Docker image tag duplication in skill publish#202

Merged
timflannagan merged 1 commit intoagentregistry-dev:mainfrom
groundnuty:fix/178-docker-tag-duplication
Feb 24, 2026
Merged

fix(cli): Fix Docker image tag duplication in skill publish#202
timflannagan merged 1 commit intoagentregistry-dev:mainfrom
groundnuty:fix/178-docker-tag-duplication

Conversation

@groundnuty
Copy link
Copy Markdown
Contributor

Description

arctl skill publish produces invalid Docker image references with duplicated
tags (e.g., docker.io/user/my-project:latest:latest).

Root cause: In buildSkillDockerImage, BuildRegistryImageName was called
with the output of BuildLocalImageName (which already includes a version tag)
instead of the raw name. Since BuildRegistryImageName internally calls
BuildLocalImageName, the tag was applied twice.

Fix: Pass fm.Name directly to BuildRegistryImageName, matching the
existing pattern in GetImageNameFromManifest (common.go:58).

Fixes #178

Change Type

/kind fix

Changelog

Fix Docker image tag duplication (`:latest:latest`) in `arctl skill publish`

Additional Notes

  • Added 2 test cases to TestBuildRegistryImageName covering registry URLs with path components
  • Added TestBuildRegistryImageName_NoDoubleTag regression test asserting no double-tag patterns
  • Removed unused repoName variable

BuildRegistryImageName was called with an already-tagged image name
from BuildLocalImageName, producing invalid references like
"registry/my-project:latest:latest". Pass the raw name instead.

Fixes agentregistry-dev#178
@timflannagan
Copy link
Copy Markdown
Collaborator

(Ci was stuck with the updated GHA workflows).

Copy link
Copy Markdown
Collaborator

@timflannagan timflannagan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ran into this locally as well. LGTM. cc @peterj

@timflannagan timflannagan merged commit dc6bfad into agentregistry-dev:main Feb 24, 2026
9 checks passed
christian-posta pushed a commit to christian-posta/agentregistry that referenced this pull request Mar 9, 2026
…istry-dev#202)

# Description

`arctl skill publish` produces invalid Docker image references with
duplicated
tags (e.g., `docker.io/user/my-project:latest:latest`).

**Root cause:** In `buildSkillDockerImage`, `BuildRegistryImageName` was
called
with the output of `BuildLocalImageName` (which already includes a
version tag)
instead of the raw name. Since `BuildRegistryImageName` internally calls
`BuildLocalImageName`, the tag was applied twice.

**Fix:** Pass `fm.Name` directly to `BuildRegistryImageName`, matching
the
existing pattern in `GetImageNameFromManifest` (common.go:58).

Fixes agentregistry-dev#178

# Change Type

/kind fix

# Changelog

```release-note
Fix Docker image tag duplication (`:latest:latest`) in `arctl skill publish`
```

# Additional Notes

- Added 2 test cases to `TestBuildRegistryImageName` covering registry
URLs with path components
- Added `TestBuildRegistryImageName_NoDoubleTag` regression test
asserting no double-tag patterns
- Removed unused `repoName` variable
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Docker image tag duplicated during skill publish leading skill publish to always fail

3 participants