Publish the captured release tag
This commit is contained in:
@@ -32,3 +32,18 @@ A successful check is evidence about the local candidate only. It does not
|
||||
check whether a remote branch or tag is available and does not create a tag.
|
||||
The [`check` command](../cli.md) reads the product and optional validation
|
||||
commands from `releasekit.json`.
|
||||
|
||||
## Publishing the source tag
|
||||
|
||||
`releasekit.Publish` uses the same request and performs candidate validation,
|
||||
authoritative remote checks, annotated-tag creation, and an exact tag push. The
|
||||
selected remote must publish `main` at the captured commit and must not already
|
||||
contain the selected version tag. A successful result includes the endpoint and
|
||||
tag object ID. Publication states distinguish an unattempted push, a tag that
|
||||
was created locally but not pushed, a successful push, a guard conflict, and an
|
||||
unresolved push error.
|
||||
|
||||
When a push reports an error, the local annotated tag is retained and the
|
||||
result is `unknown` until a later implementation adds authoritative
|
||||
reconciliation. Do not treat that state as success or proof that the remote
|
||||
lacks the tag.
|
||||
|
||||
Reference in New Issue
Block a user