From a5c28184d4e7607d1d00f594737cc38053710ee5 Mon Sep 17 00:00:00 2001 From: prql-bot <107324867+prql-bot@users.noreply.github.com> Date: Wed, 19 Aug 2026 12:35:42 +0000 Subject: [PATCH 1/3] chore: note parked issues in the running-tend skill --- .claude/skills/running-tend/SKILL.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/.claude/skills/running-tend/SKILL.md b/.claude/skills/running-tend/SKILL.md index d148b36b63b7..e2877d64818d 100644 --- a/.claude/skills/running-tend/SKILL.md +++ b/.claude/skills/running-tend/SKILL.md @@ -91,3 +91,26 @@ These tasks run as Step 3 of the bundled weekly skill (only when the fix has merged or the upstream problem has been addressed, close the issue with a short comment citing the resolution (e.g., "Resolved by #NNNN — closing"). Applies to any issue where `author.login == prql-bot`. + +## Parked issues — don't open a fix PR + +Some issues are open to hold a design discussion, not to hold an unclaimed bug. +Before opening a PR that fixes an issue, list the PRs that already reference it +and read why the closed ones were closed: + +```sh +gh pr list --state all --search "" --json number,title,state,closedAt +``` + +A PR closed on the _approach_ rather than the code means the semantics are still +a maintainer's call, and a fresh PR taking that same approach is noise however +well it is implemented. In that case investigate, reproduce, and add findings to +the issue thread, but leave the PR until a maintainer specifically asks for one. +Findings noted in the thread are not a substitute for this check — #6206 was +opened on #6166 despite that thread already carrying a note not to. + +Parked today: + +- **#6166** — duplicate `module` definitions. Whether re-declaring a module + merges or errors is a maintainer decision; #6147 and #6206 were both closed as + premature. From 7b25396ede31813f884e58f925568a38f36239f3 Mon Sep 17 00:00:00 2001 From: prql-bot <107324867+prql-bot@users.noreply.github.com> Date: Wed, 19 Aug 2026 12:38:01 +0000 Subject: [PATCH 2/3] docs: search prior PRs by symbol, and read issue comment bodies --- .claude/skills/running-tend/SKILL.md | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/.claude/skills/running-tend/SKILL.md b/.claude/skills/running-tend/SKILL.md index e2877d64818d..a51592ce0159 100644 --- a/.claude/skills/running-tend/SKILL.md +++ b/.claude/skills/running-tend/SKILL.md @@ -95,19 +95,36 @@ These tasks run as Step 3 of the bundled weekly skill (only when ## Parked issues — don't open a fix PR Some issues are open to hold a design discussion, not to hold an unclaimed bug. -Before opening a PR that fixes an issue, list the PRs that already reference it -and read why the closed ones were closed: +Before opening a PR that fixes an issue, run both checks below — each catches a +case the other misses. + +**Search prior PRs by the symbol the fix touches, not the issue number.** The +rejected approach is usually a closed PR on the same call site, filed before the +issue existed and so citing no issue number at all: + +```sh +gh pr list --state all --limit 20 --search "" \ + --json number,title,state --jq '.[] | "\(.state) #\(.number) \(.title)"' +``` + +Searching `6166` returns #6164 and a stray dependency bump, but not #6147 — the +rejected attempt this section exists to catch, opened two days before the issue. +Searching `fold_module_def_stmt`, the call site all three PRs edit, returns +every one of them. + +**Read the issue's comment bodies, not the count.** The 2026-08-18 nightly (run +`32109908394`) projected `COMMENTS: \(.comments|length)`, so a prior run's note +on #6166 saying not to open another PR was never in context: ```sh -gh pr list --state all --search "" --json number,title,state,closedAt +gh issue view --json comments \ + --jq '.comments[] | "\(.author.login) (\(.authorAssociation)): \(.body)"' ``` A PR closed on the _approach_ rather than the code means the semantics are still a maintainer's call, and a fresh PR taking that same approach is noise however well it is implemented. In that case investigate, reproduce, and add findings to the issue thread, but leave the PR until a maintainer specifically asks for one. -Findings noted in the thread are not a substitute for this check — #6206 was -opened on #6166 despite that thread already carrying a note not to. Parked today: From 138ddee8553ceddab942e2bb63fc0016009584f2 Mon Sep 17 00:00:00 2001 From: prql-bot <107324867+prql-bot@users.noreply.github.com> Date: Wed, 19 Aug 2026 12:48:13 +0000 Subject: [PATCH 3/3] docs: read a closed PR's own comments, and retire parked entries Actions the self-review on #6212: the classification the gate turns on ("closed on the approach rather than the code") had no recipe behind it, the parked entry had no retirement criterion, and the number-search claim omitted #6206. --- .claude/skills/running-tend/SKILL.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/.claude/skills/running-tend/SKILL.md b/.claude/skills/running-tend/SKILL.md index a51592ce0159..22395b1673ff 100644 --- a/.claude/skills/running-tend/SKILL.md +++ b/.claude/skills/running-tend/SKILL.md @@ -105,12 +105,15 @@ issue existed and so citing no issue number at all: ```sh gh pr list --state all --limit 20 --search "" \ --json number,title,state --jq '.[] | "\(.state) #\(.number) \(.title)"' +# the list carries no reason — read a closed PR's own comments before dismissing it: +gh pr view --json comments,reviews \ + --jq '[.comments[], .reviews[]] | map({author: .author.login, body: .body})' ``` -Searching `6166` returns #6164 and a stray dependency bump, but not #6147 — the -rejected attempt this section exists to catch, opened two days before the issue. -Searching `fold_module_def_stmt`, the call site all three PRs edit, returns -every one of them. +Searching `6166` returns #6206 and #6164 and a stray dependency bump, but not +#6147 — the rejected attempt this section exists to catch, opened two days +before the issue. Searching `fold_module_def_stmt`, the call site all three PRs +edit, returns every one of them. **Read the issue's comment bodies, not the count.** The 2026-08-18 nightly (run `32109908394`) projected `COMMENTS: \(.comments|length)`, so a prior run's note @@ -129,5 +132,8 @@ the issue thread, but leave the PR until a maintainer specifically asks for one. Parked today: - **#6166** — duplicate `module` definitions. Whether re-declaring a module - merges or errors is a maintainer decision; #6147 and #6206 were both closed as - premature. + merges or errors is a maintainer decision, and the maintainer has asked + directly on that thread that no further PRs be opened on it unless + specifically directed. #6147 and #6206 both took the merging approach and were + closed on it. Remove this entry once #6166 closes or a maintainer asks for a + fix.