Version: cifail 0.3.1 (CLI, from nuget.org); action resolved as SebHenn/ci-failure-intelligence@v1
Summary
v0.3.1 fixed the two bugs in #19 — the swallowed --report pair and the composite step dying under
an inherited errexit. The release notes are accurate and the fix is real. But the moving major
tag was not moved with it, so no consumer following the README gets it.
$ git rev-parse --short v1
775e98c chore: release v0.3.0
$ git rev-parse --short v0.3.1
a571773 chore: release v0.3.1
$ git merge-base --is-ancestor 2a25628 v1 ; echo $?
1 # "Honour every --report pair" is NOT an ancestor of v1
The difference is visible in the shipped script:
$ git show v1:action.yml | grep -n 'set +e' # nothing
$ git show v0.3.1:action.yml | grep -n 'set +e'
96: set +e
README.md recommends uses: SebHenn/ci-failure-intelligence@v1 in five places (lines 334,
366, 378, 391, 407). Every one of them resolves today to the build with the bug the release fixed.
Why this is worth its own task rather than a footnote on #19
The failure mode is identical to the one #19 was about, and just as silent. A consumer reads a
changelog entry saying the action no longer dies without explaining itself, changes nothing —
because @v1 is what the README already told them to write — and keeps getting a red step with no
output. There is nothing in the repository that would tell them why, and the natural conclusion is
that the fix does not work, not that they are running last month's build. @v1 is the only
documented pin, so this is not an unusual configuration; it is the recommended one.
Expected
Publishing vX.Y.Z moves vX to the same commit, so the documented pin means "the newest release
in this major line". Ideally in the release workflow rather than by hand — a tag that has to be
remembered gets forgotten exactly like this one.
git tag -f v1 v0.3.1 && git push --force origin v1
Worth considering alongside it: the action does not report its own version anywhere in its output,
so "which build of the action ran?" is unanswerable from the log. One line naming the resolved
version in the step summary would have made this five seconds to diagnose instead of a comparison
of two trees.
In the meantime
cartographer has repinned to @v0.3.1 and will move back to @v1 once it tracks releases. This is
the smallest reversible unblock, and it is marked in that repository's workflow as
# TT-<this task> so it is greppable.
Version: cifail 0.3.1 (CLI, from nuget.org); action resolved as
SebHenn/ci-failure-intelligence@v1Summary
v0.3.1 fixed the two bugs in #19 — the swallowed
--reportpair and the composite step dying underan inherited
errexit. The release notes are accurate and the fix is real. But the moving majortag was not moved with it, so no consumer following the README gets it.
The difference is visible in the shipped script:
README.mdrecommendsuses: SebHenn/ci-failure-intelligence@v1in five places (lines 334,366, 378, 391, 407). Every one of them resolves today to the build with the bug the release fixed.
Why this is worth its own task rather than a footnote on #19
The failure mode is identical to the one #19 was about, and just as silent. A consumer reads a
changelog entry saying the action no longer dies without explaining itself, changes nothing —
because
@v1is what the README already told them to write — and keeps getting a red step with nooutput. There is nothing in the repository that would tell them why, and the natural conclusion is
that the fix does not work, not that they are running last month's build.
@v1is the onlydocumented pin, so this is not an unusual configuration; it is the recommended one.
Expected
Publishing
vX.Y.ZmovesvXto the same commit, so the documented pin means "the newest releasein this major line". Ideally in the release workflow rather than by hand — a tag that has to be
remembered gets forgotten exactly like this one.
Worth considering alongside it: the action does not report its own version anywhere in its output,
so "which build of the action ran?" is unanswerable from the log. One line naming the resolved
version in the step summary would have made this five seconds to diagnose instead of a comparison
of two trees.
In the meantime
cartographer has repinned to
@v0.3.1and will move back to@v1once it tracks releases. This isthe smallest reversible unblock, and it is marked in that repository's workflow as
# TT-<this task>so it is greppable.