Skip to content

chore: note parked issues in the running-tend skill - #6212

Closed
prql-bot wants to merge 3 commits into
mainfrom
skills/parked-issues-32252936566
Closed

chore: note parked issues in the running-tend skill#6212
prql-bot wants to merge 3 commits into
mainfrom
skills/parked-issues-32252936566

Conversation

@prql-bot

@prql-bot prql-bot commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

Adds a "Parked issues" section to the repo's tend guidance, so a future CI run checks the PRs already filed against an issue — and why the closed ones were closed — before opening its own.

This is guidance only; it doesn't touch the compiler or take a position on the semantics under discussion in #6166.

Why

#6147 fixed the duplicate-module call site by merging the two blocks and was closed after review as "implicit merging of namespaces is a design smell". #6166 was then opened to track the behavior, and its first comment says explicitly that no fix PR was being opened, so a later triage pass wouldn't open a third. #6206 was opened anyway, taking the same merging approach, and was closed with:

This is @prql-bot's third repeat at this issue. #6166 specifically mentions that the open tracking issue was created to avoid opening further PRs.

Each CI session starts cold, so a note in a thread only works if the session reads the whole thread before deciding to act.

Follow-up commit: the first recipe didn't work

The section originally gated on gh pr list --state all --search "<issue-number>". Run against 6166 today, that returns #6212, #6206, #6164 and a stray chore: bump tokionot #6147, the rejected attempt the section exists to catch. #6147 was opened 2026-08-06, two days before #6166 (2026-08-08), so it cites no issue number at all. The 2026-08-18 nightly (run 32109908394) ran that same search and got back only #6164, then concluded "No overlap" and opened #6206.

7b25396e replaces it with two checks that do fire on this case:

Both recipes were run against this repo before being written down.

Follow-up commit: reading a closed PR's own comments

Self-review pointed out that the gate turns on a classification neither check could reach: "closed on the approach rather than the code" isn't visible in gh pr list output. Running the symbol search against #6147 gives CLOSED #6147 fix: merge repeated module definitions instead of replacing them, which reads as an ordinary abandoned fix — the parking signal ("I've reviewed the code itself and it's fine; the behavior change is the part that I'm unsure about") is only in the PR's comments.

138ddee8 adds gh pr view <pr-number> --json comments,reviews to the first block, gives the parked entry a retirement criterion ("remove once #6166 closes or a maintainer asks for a fix"), and re-anchors its justification on kgutwin's direct ask rather than on "closed as premature", which was inaccurate for #6147. It also corrects the number-search claim, which omitted #6206.

@prql-bot prql-bot left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Self-review, so this is a COMMENT rather than an approval. The section earns its place — it guards against a wrong outward action rather than saving compute — and both new recipes check out when run: the symbol search on fold_module_def_stmt does return #6147, #6206 and #6164, where searching 6166 misses #6147 entirely, and authorAssociation is a real field on gh issue view --json comments. The nightly claim is right too — run 32109908394's session log shows the exact projection TITLE / LABELS / COMMENTS: \(.comments|length) / BODY, so comment bodies genuinely never reached that run's context.

Three things left, all inline.

The classification the gate turns on has no recipe. "A PR closed on the approach rather than the code" is the whole decision, but neither block fetches a PR's closing comments — the first returns state/number/title, the second reads the issue thread. A session that runs both learns that #6147 exists and is closed, which is what the parked list already told it; the reason it was closed (reasoning rejected, code explicitly fine) is only in the PR's own comments.

Nothing retires a parked entry. Once #6166 is settled and closed, the bullet keeps reading as a standing instruction not to implement the decision that settled it.

"Both closed as premature" is the weaker justification, and slightly off for #6147. kgutwin asked directly on the thread that no further PRs be opened unless specifically directed (12:29Z, 2026-08-19) — a fact a cold session can act on without re-deriving it. And #6147 wasn't closed as premature: it was closed on the reasoning, with the code reviewed as fine ("I've reviewed the code itself and it's fine; the behavior change is the part that I'm unsure about").

Verification

Run against the merge ref, current head 7b25396e:

  • gh pr list --state all --limit 20 --search "fold_module_def_stmt" --json number,title,state#6212, #6164, #6206, #6150, #6147, #6151. Confirms the line 112 claim.
  • gh pr list --state all --search "6166" --json number,title,state,closedAt#6212, #6206, #6164, #3921. No #6147, as claimed — but #6206 is in the result, so line 110's list is incomplete; suggestion adds it.
  • gh issue view 6166 --json comments --jq '.comments[] | "\(.author.login) (\(.authorAssociation)): \(.body)"' → runs clean, prints prql-bot (MEMBER), kgutwin (COLLABORATOR), prql-bot (MEMBER).
  • gh run view 32109908394tend-nightly, schedule, 2026-08-18T07:06:49Z; its session-log artifact contains the COMMENTS: \(.comments|length) projection verbatim. #6206 was opened at 07:22:19Z that morning, sixteen minutes after that run started.
  • All three suggestions were run through prettier@3.9.6 --prose-wrap always (matching .prettierrc.yaml) before posting, so they land pre-commit-clean.

Comment thread .claude/skills/running-tend/SKILL.md
Comment thread .claude/skills/running-tend/SKILL.md Outdated
Comment thread .claude/skills/running-tend/SKILL.md Outdated
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.
@max-sixty

Copy link
Copy Markdown
Member

erm, no, this is not a good design. we would not store a list of issues in the repo itself. we have access to the issues, we can search them anytime!

if there's a problem, and it's material, put an issue into tend

@max-sixty

Copy link
Copy Markdown
Member

ok I made a note in #6166

@prql-bot

Copy link
Copy Markdown
Collaborator Author

Agreed, and filed in tend: max-sixty/tend#1013.

The diagnosis is that nightly's pre-PR dedup (gh pr list --state open --json number,title) can't see either artifact that said stop — #6147 was closed, and the "deliberately not opening a fix PR" note was in #6166's comments, not its title. It also matches on titles rather than on the code the fix touches, so searching 6166 misses #6147 entirely while searching fold_module_def_stmt returns all three PRs. That's a general fix to the dedup rather than a list anyone has to maintain.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants