Repository navigation
mod/soigneur: fix the workflow filter - #5217
Merged
Merged
Conversation
`index(f)` evaluates f against its own input, which here is $wanted, the array of workflow file names - not the run being filtered. So `.workflow` indexed an array, and the collector died before it collected anything: jq: error (at <stdin>:0): Cannot index array with string "workflow" Feed the name to IN instead, which takes the run as its input. This only ever failed when `workflows` was set, because `or` short circuits and the empty list takes the other branch. Setting it is what the nerdctl workflow does, and leaving it unset is what every local run of the collector did, which is how this shipped. Fixes containerd#5216 Assisted-by: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
A dashboard that runs once a week takes a week to tell you it is broken, and the configuration that broke in containerd#5216 - a workflow filter - was the one no local run ever used. So the module gets a test for the branches that the report itself does not walk: the filter with and without names, the markers and the block that predates them, the names a hostile log can carry, the aggregation of a parent test with its subtests, and the validators. Everything is offline: the API is stubbed, and the fixtures are written by the test. The scripts only dispatch when executed, so that sourcing one defines its functions and runs nothing. The workflow follows mod/tigron's: every push to main, and the pull requests that touch the module, or the reporter on the other side of the marker contract. Assisted-by: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
ktock
approved these changes
Sep 17, 2026
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.
index(f)evaluates f against its own input, which here is $wanted, thearray of workflow file names - not the run being filtered. So
.workflowindexed an array, and the collector died before it collected anything:
jq: error (at :0): Cannot index array with string "workflow"
Feed the name to IN instead, which takes the run as its input.
This only ever failed when
workflowswas set, becauseorshortcircuits and the empty list takes the other branch. Setting it is what
the nerdctl workflow does, and leaving it unset is what every local run
of the collector did, which is how this shipped.
Fixes #5216
Assisted-by: Claude Opus 5 (1M context) noreply@anthropic.com