Label PRs without bot comments as ready-for-review - #16670
Conversation
"status: no-bot-comments" is only kept for PRs that are drafts, have changes requested by a reviewer, or already progressed further in review. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YHTJgYV3qZJ7rHZwqCesUe
PR Summary by QodoMark eligible PRs without bot comments ready for review
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
Code Review by Qodo
1.
|
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YHTJgYV3qZJ7rHZwqCesUe
… into fix-for-issue-16036 * 'fix-for-issue-16036' of github.com:KaustAbhinand/jabref: Chore(deps): Bump net.ltgt.nullaway from 3.1.0 to 3.2.0 in /jablib (JabRef#16712) Chore(deps): Bump org.jsoup:jsoup from 1.23.1 to 1.23.2 in /versions (JabRef#16713) Chore(deps): Bump com.autonomousapps:dependency-analysis-gradle-plugin (JabRef#16709) Chore(deps): Bump com.autonomousapps:dependency-analysis-gradle-plugin (JabRef#16710) Chore(deps): Bump net.ltgt.errorprone from 5.1.0 to 5.1.1 in /jablib (JabRef#16711) Run the CAYW JavaFX picker in the native jabsrv image (JabRef#16634) Run PR tests when a submodule pointer changes (JabRef#16699) New Crowdin updates (JabRef#16701) Chore(deps): Bump jablib/src/main/resources/csl-styles from `0b07219` to `0819c0e` (JabRef#16685) First class Theme Support in JabRef (JabRef#15798) Remove properties path from internationalization Label PRs without bot comments as ready-for-review (JabRef#16670) Chore(deps): Bump com.dlsc.pdfviewfx:pdfviewfx in /versions (JabRef#16691) Chore(deps): Bump io.github.classgraph:classgraph in /versions (JabRef#16689) Chore(deps): Bump org.gradlex:java-module-dependencies in /build-logic (JabRef#16688) Chore(deps): Bump actions/setup-java in /.github/actions/setup-gradle (JabRef#16690) Chore(deps): Bump actions/setup-java from 5 to 6 (JabRef#16687) Chore(deps): Bump JetBrains/junie-github-action from 1.7.4 to 1.7.5 (JabRef#16686)
Summary
🤖 PR Description
"Comment on PR" labels PRs without bot comments as
status: no-bot-comments— and stops there, so a PR that is actually reviewable never getsstatus: ready-for-reviewfrom the bot. This changes the "no bot comments" branch: if the PR is not a draft, no reviewer requested changes (reviewDecision != CHANGES_REQUESTED), and it is not already atstatus: awaiting-second-review/status: to-be-merged, it now getsstatus: ready-for-review(replacingstatus: no-bot-comments). Otherwise the behavior is unchanged andstatus: no-bot-commentsstays.This is not a concurrency issue: the workflow simply never added
ready-for-review. A review requesting changes that lands before CI finishes is caught by thereviewDecisioncheck; one that lands after is still handled by "Adapt PR status labels (Move)".Analogies: Like honey, this sweetens the reviewer queue by surfacing PRs that are actually ready. Like chocolate, it is a small piece with a noticeable effect. Like the moon, it only shows one face —
ready-for-revieworno-bot-comments, never both.jabref-contrib-policy:4.2:reviewed:okSteps to test
status: ready-for-review.status: no-bot-commentsinstead.The
jqfilter was checked against live PR data: #16646 (to-be-merged) → not ready; #16620 (changes requested) → not ready; #16530 (draft) → not ready; #16667 → ready.Related issues and pull requests
Closes _____ (no issue; maintainer request)
AI usage
Claude Code (model claude-fable-5), AIL4 — AI-generated from a maintainer's description, reviewed by the maintainer.
AI CHECKLIST.md walkthrough
1. Code self-review
Nullability and control flow
== null/!= nullchecks — JSpecify annotations used instead.Objects.requireNonNull(...).@NullMarked.Optionalconsumed withifPresent/map/orElseThrow.StringUtil.isBlank(...)used.Exceptions
catch (Exception e).throw new RuntimeException(...)/IllegalStateException(...).Style and idioms
BibEntryobjects built with withers.Pattern.BackgroundTask.User-facing text
!; labels do not end with:.Security
Tests
org.jabref.model/org.jabref.logichave tests.@DisplayName,@TempDir.2. Verification commands
./gradlew :jablib:check(workflow-only change)../gradlew checkstyleMain checkstyleTest checkstyleJmh../gradlew modernizer../gradlew --no-configuration-cache :rewriteDryRun../gradlew javadoc.npx markdownlint-cli2(no Markdown changed).3. Documentation
CHANGELOG.mdentry (not user-visible).docs/requirements/.docs/updated.4. Pull request
.github/PULL_REQUEST_TEMPLATE.md, every section filled.gh pr create --body-file.CHANGELOG.mdTODOplaceholder replaced.Checklist
CHANGELOG.mdin a way that can be understood by the average user (if change is visible to the user)🤖 Generated with Claude Code