Fix a CI gate that reports pending on a green main - #6
Merged
Conversation
The skill checked `main` was green with
gh api "repos/.../commits/${SHA}/status" --jq .state
and said not to release on `pending`. That endpoint reads legacy commit
statuses, which GitHub Actions does not write — it writes check runs.
This repository has zero statuses, so the call returns `pending` with
`total_count: 0` however green CI is. An agent following the skill
literally would refuse to release, always.
I hit this cutting 0.1.0: the gate said pending while both checks had
passed. Replaced with `statusCheckRollup`, which folds check runs and
legacy statuses into one verdict, so it stays correct if a status-writing
integration is ever added. Verified `SUCCESS` against the released
commit. The rollup states are uppercase, so the surrounding wording
changed too.
Inherited verbatim from the hookdeck-cli release skill, which has the
same bug — filed as hookdeck/hookdeck-cli#336.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ab8ayFXEtVZQ14PQ9kthSc
Drops the issue link and the account of how the CI-gate bug was found — an agent reading this needs the command and the trap, not the history. Same for the auth section: the bootstrapping story is done and lives in the README, and the trusted publisher is already configured, so the skill now states its settings rather than explaining the sequence that led to them. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ab8ayFXEtVZQ14PQ9kthSc
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.
Found while cutting 0.1.0 — the release skill's "is main green?" check said
pendingwhile both checks had passed.gh api .../commits/${SHA}/statusreads legacy commit statuses. GitHub Actions doesn't write those; it writes check runs. This repo has zero statuses, so the call returnspendingwithtotal_count: 0regardless of CI. The skill then says "Do not release onpending" — so an agent following it literally never releases.Replaced with
statusCheckRollup, which folds check runs and legacy statuses into one verdict:Docs only — no code or workflow change. Inherited verbatim from the hookdeck-cli release skill, which has the same bug: hookdeck/hookdeck-cli#336.