Read the releases with two flags gh refuses together (#88) - #359
Merged
iderex merged 2 commits intoSep 4, 2026
Merged
Conversation
The step that reads this repository's releases passed `--paginate --slurp` and
`--jq` in one call. `gh api` refuses that pair, so the step exited 1 with a usage
message and the two steps after it were skipped:
gh api "repos/Flowfin/jellyfin-plugin-metadata-sync/releases" --paginate --slurp --jq 'add'
the `--slurp` option is not supported with `--jq` or `--template`
The pages are flattened after the call instead:
gh api "repos/Flowfin/jellyfin-plugin-metadata-sync/releases" --paginate --slurp | jq 'add // []'
which returns the two releases this repository has published. `// []` is there
because a repository with no release slurps to one empty page and `add` answers
that as null, and the comparison is owed an array rather than a null in the one
case it is meant to refuse for a stated reason.
Found by dispatching the workflow once after it merged rather than by reading
it. The run is 33929205469: the proof step passed on the runner and the live
reading never happened, which is the shape a scheduled report fails in most
quietly - it goes red and the reason is a flag rather than the channel.
Signed-off-by: Nils Lehnen <30603423+iderex@users.noreply.github.com>
…ing-cannot-use-two-flags-together
iderex
deleted the
ci/the-release-reading-cannot-use-two-flags-together
branch
September 4, 2026 23:41
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.
Refs #88
This finishes no issue, so it declares no relation. It repairs the check that landed in #358, which carries the third condition of #88 and does not close it.
What was wrong
channel-freshness.ymlread this repository's releases with--paginate --slurpand--jqin onegh apicall. Those cannot be combined, and the message is a usage dump rather than a comparison:How it was found
By dispatching the workflow once after #358 merged, rather than by reading the file. Run
33929205469:The half that is worth reading is that the six fixture cases passed on the runner, so the comparison itself is good and it is the live reading that never happened. That is the shape a scheduled report fails in most quietly: it is red either way, and the reason is a flag rather than the channel.
The repair
Run against this repository rather than reasoned about:
// []is there for the one case the comparison is meant to refuse with a reason: a repository with no release slurps to one empty page,addanswers that as null, and the comparison is owed an array. Without it the exit-2 refusal that says "this repository has published no release" would be reached with a null on the way in.What was not changed
The comparison script, its six fixture cases, and every other step. This is one line and the comment above it.
What is still not proved
That the workflow completes on a runner. The next dispatch after this merges is what shows it, and it will be red for the live reason recorded on #88 - the catalogue advertises 0.1.0.0 while 0.1.1.0 is published - rather than for a fault in the check. I will say which it was on #88 rather than leaving the two indistinguishable.
No second reader
This change has had no second reader. The runs above stand in place of one.