fix(registry): latest now means default branch HEAD, not newest tag#157
Merged
fix(registry): latest now means default branch HEAD, not newest tag#157
latest now means default branch HEAD, not newest tag#157Conversation
Previously, when no `#<ref>` was given, conductor resolved `latest` to the newest semver-sorted git tag if any tags existed, falling back to the default branch only when no tags existed. This was surprising: once a registry had a single tag, bare `name@registry` references silently froze at that tag and stopped picking up commits to main. New semantics: * No ref / `#latest` -> default branch HEAD (always) * Explicit `#<ref>` -> use that ref verbatim (tag, branch, or SHA) Pin to a tagged release explicitly with `name@registry#v1.2.3`. Tag listing is still used for the 'Latest tags:' display in `registry list`/`show`, just not for default ref resolution. This also removes one GitHub API call from the hot path of bare-name fetches. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Merged
jrob5756
added a commit
that referenced
this pull request
May 6, 2026
- conductor resume flag parity with run (#158) - reasoning effort displayed in dashboard (#160) - iteration_limit_reached/resolved events for dashboard (#162) - registry latest now means default branch HEAD, not newest tag (#157) - forbid extra fields on Agent/Parallel/ForEach/Workflow schemas (#159) - pretty-print tool args/results in dashboard events (#161) - capture uv stdout+stderr on Windows install failure (#156) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Changes the default ref resolution for workflow registries: a bare `name@registry` reference now always resolves to the default branch HEAD, instead of the newest git tag.
Why
The previous behavior was surprising. As soon as a registry repo had a single tag, bare references silently froze at that tag and stopped picking up commits to `main`. A user pushing to their registry's main branch and running `conductor registry update` would see no change — because `latest` had quietly switched from "newest commit" to "newest tag" the moment the first tag was created.
The new model matches what most users expect from a development-time tool:
Tags are still first-class refs — pin explicitly when you want a release.
Impact
Tests