From be562e30f05fb832172651e81b5c9ecd0d3e90c2 Mon Sep 17 00:00:00 2001 From: Enrico Battocchi Date: Mon, 1 Jun 2026 13:54:02 +0200 Subject: [PATCH] Fix jq precedence bug in "Fetch recent open documentation PRs" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The filter was: any(.path | startswith("docs/") or .path == "sidebars.js") which parses as: any(.path | (startswith("docs/") or .path == "sidebars.js")) so the second .path tries to index the string result of the first pipe. The error only fires when the iterated file's path does NOT start with "docs/" — until today no such PR was in the search result. Now PR #402 (touches only .github/workflows/rc-docs-sync.yml) crashes the step. Parenthesize the predicate so .path in the second clause refers to the original file object: any((.path | startswith("docs/")) or .path == "sidebars.js") Observed failure: run 26742647973 (2026-06-01). The crash skipped the agent for 27.8-RC3/4/5 and triggered the safety-net to advance state past them without any actual processing. --- .github/workflows/rc-docs-sync.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rc-docs-sync.yml b/.github/workflows/rc-docs-sync.yml index bd7eefc8..16a9d197 100644 --- a/.github/workflows/rc-docs-sync.yml +++ b/.github/workflows/rc-docs-sync.yml @@ -374,7 +374,7 @@ jobs: --limit 50 \ --json number,title,headRefName,updatedAt,body,files,labels \ | jq '[ .[] - | select((.files // []) | any(.path | startswith("docs/") or .path == "sidebars.js")) + | select((.files // []) | any((.path | startswith("docs/")) or .path == "sidebars.js")) | {number, title, headRefName, updatedAt, files: [.files[].path], body: .body[0:1500] }