Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

pr-merge: enable-auto-merge drops the verdict reader's babysit-listing-miss stderr

Open Beginner friendly
#10,887 4 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
70/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
github-actions, javascript, python
Domain
ci-cd, devtools

Research direction

Read .github/scripts/pr-merge/enable-auto-merge.mjs around pythonVerify and the ghCallsLine(done.stderr) call, then inspect the corresponding cases in enable-auto-merge.test.mjs. Trace how stderr is handled for refusal verdicts and add coverage for forwarding the relevant reader lines; done when a refusal’s listing-miss line appears in the job log and the test covers that behavior.

Written by the indexing model from the issue text.

Description

admission-deferred priority: medium status: ready work-class: scoped

Problem

enable-auto-merge runs babysit_verify_evidence.py once per candidate and keeps only one line of its stderr, the babysit-gh-calls line. The reader prints a babysit-listing-miss {...} line on stderr for every incremental read that misses GitHub's live artifact count (Reader._incremental, LISTING_MISS_PREFIX). Those lines never reach the job log. When a candidate falls back to the full repository listing, the log cannot show why.

Where the line is dropped

.github/scripts/pr-merge/enable-auto-merge.mjs at 82432cf, in pythonVerify:

  • L1007: spawn("python3", ...) with encoding: "utf8" captures the reader's stderr into done.stderr.
  • L1022-L1025: ghCallsLine(done.stderr) prints only the babysit-gh-calls line. Every other stderr line is discarded.
  • A refusal such as verify:unreadable exits 0, so the error branch, which would print the last stderr line, does not run either.

Evidence

In enable-auto-merge run 40817220695, candidate #10867 logged:

enable-auto-merge: #10867 calls=128 github-token=124 paginated=0 ms=107111 cached=0
babysit-gh-calls {"calls":{..."override GET repos/{}/{}/actions/artifacts":7,"override GET {}/{}/actions/artifacts":117},...}
enable-auto-merge: #10867 left: pr-merge's gate refuses its verifier verdict (verify:unreadable)

That is 7 incremental page calls, then 117 full-listing pages over 107 s, ending in a refusal. No babysit-listing-miss line appears anywhere in the job log. Three possible causes remain open: the incremental reads missed the live count, a page failed, or the base was rejected.

Fix

Print each babysit-listing-miss line from done.stderr beside the babysit-gh-calls line. Better: print every stderr line except the gh-calls line when the reader's verdict is a refusal. enable-auto-merge.test.mjs would need a case for it. Note that #10743 also edits that test file.

Refs: #10880

Dominant language
Shell
Stars
22
Forks
2
Avg merge
3h 38m
Merged PRs (30d)
959

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from melodic-software/claude-code-plugins

All issues in melodic-software/claude-code-plugins

Similar issues

More Shell/Bash issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.