Release records
A release record is Logmarq's account of one version: exactly what it was made from, what it shipped, and what changed since the version before it. Everything else in Logmarq, from notes to vulnerability decisions, hangs off a record.
What a record pins
- The source. The commit the version's tag points at, whatever the branch has done since. A pipeline that knows its commit but never tags can name it instead. While neither exists, the head of the release branch stands in, and the record says so. Every record says which of the three it was pinned by.
- The artifacts. Every container image, Helm chart, package, release asset, and static bundle
the project declares, resolved to a digest when the source permits it, so a floating tag such
as
latestis pinned. An artifact that cannot be resolved stays on the record as a warning with its reason; nothing is invented to fill the gap. A pipeline that keeps its registry to itself can hand over the digests it pushed, and Logmarq says who vouches for each one. - The changes. The pull requests, commits, and tracker issues since the previous release, grouped by label, with the exact comparison it was computed from.
A project made of several repositories records each one at the version, and says for each whether its commit was confirmed or inferred.
Where versions come from
Most projects version with tags, and a pattern such as v*.*.* says which tags are versions. A
project that keeps its version in a file, such as package.json or Chart.yaml, or names it only
in commit titles, can say so instead. Add project infers which applies when it drafts the
configuration.
Recording new versions
- Automatically. With the GitHub App's webhook, a pushed tag or a published release records itself.
- From your pipeline. The record action, or the CLI inside the image, records the version once CI has built it, with the digests it pushed.
- By hand. Record a release on the project page.
Preview next release on the project page shows what the next version would hold if it were cut now, with drafted notes and a suggested version, and records nothing.
When a tag moves
A tag deleted and pushed again at another commit is followed, loudly: a release that has not shipped is recorded again where the tag points now and compared again, and its page shows what it was before. A release that already shipped is left as it was and says, in red, that its tag moved, until an administrator records it again.
What a record will not claim
- A record is not a build. Logmarq never tags, builds, or publishes the artifacts it pins.
- An unresolved artifact is not treated as verified. It stays a warning until it resolves.
- The changes are as complete as the git host's history. A record compares what the host reports between the two commits.