docs: fix pr_reviewer.repos semantics — empty means allow-all, not allow-none - #53
Merged
Merged
Conversation
…low-none The bundle.yaml comment and README both said "empty until the operator names them," implying an empty repos list blocks review everywhere. The actual gate (pr-reviewer-plugin dispatch.py, documented there since qaEngineer#38) has always treated empty as "whatever the GitHub App installation covers" — GitHub's own install picker is the real gate, repos only narrows it further. Filed as pr-reviewer-plugin#115 assuming it was a plugin bug; it isn't, closed not-planned. The actual drift was qaEngineer#38's "qaEngineer should stay excluded" call, which the live config no longer reflects (repos is globally empty) — confirmed with the operator this is now the intended state: Vera reviewing config/doc changes to her own deploy repo is useful, and her approval is what satisfies qaEngineer's branch-protection gate, since GitHub blocks a human PR author from self-approving. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01M1eVZNokjz3vjPaGqrC3RP
There was a problem hiding this comment.
QA panel review — PASS
code-review · head a747c48904e4 · formal
The panel found no defects across all four finder lanes; the PR is internally consistent. The one shared gap noted by the finders — independent verification of the "empty = allow-all" semantics in dispatch.py — was flagged as a coverage gap but did not rise to a finding because the behavior is consistent with the surrounding code and no contradicting evidence was produced. Verification confirmed the clean state: no claims to refute, qualify, or drop. No fix-first item; no panel disagreement.
No findings — the review came back clean.
findings JSON (machine-readable)
[]
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
protoagent.bundle.yamlandREADME.md: both described an emptypr_reviewer.reposas "review nothing until the operator names them." That's backwards — the plugin (dispatch.py, documented since qaEngineer#38) has always treated empty as "whatever the GitHub App installation covers." GitHub's own install picker is the real gate;reposonly narrows within it.pr_reviewer.reposis globally empty). Confirmed with the operator (2026-09-11) that the current state — unrestricted scope, qaEngineer included — is now intended: her reviewing config/doc changes to her own deploy repo is useful and distinct from the "never approve a PR I personally authored" guard, and it's what makes this repo's branch-protection gate satisfiable at all (GitHub blocks a human PR author from self-approving).Test plan
python3 -m unittest discover tests— 18 passedpr-reviewer-plugin'sdispatch.pyreposproperty docstring directly🤖 Generated with Claude Code
https://claude.ai/code/session_01M1eVZNokjz3vjPaGqrC3RP