Skip to content

chore(automatic-review): retire gemini, ground pr-agent standard - #1014

Merged
cuioss-oliver merged 7 commits into
mainfrom
feature/retire-gemini-registry-ground-pr-agent-standard
Jul 27, 2026
Merged

chore(automatic-review): retire gemini, ground pr-agent standard#1014
cuioss-oliver merged 7 commits into
mainfrom
feature/retire-gemini-registry-ground-pr-agent-standard

Conversation

@cuioss-oliver

Copy link
Copy Markdown
Collaborator

Summary

Retires the Gemini bot-registry machinery (non-operative by default since the 2026-07-17 sunset)
and replaces the placeholder standards/pr-agent.md with a standard grounded in an actual observed
PR-Agent review, in five deliverables:

  • D1 — classified every gemini reference across the matched-file corpus into operative
    machinery / documentation-prose / test-fixture-placeholder / false-positive, and settled the
    unknown-bot contract question.
  • D2 — deleted standards/gemini.md and every class-(a) operative reference (bot-list docs,
    author-login constants, re-review wiring, the SKILL.md Gemini clause).
  • D3 — swept class-(b) documentation and the seven ext-triage-*/standards/pr-comment-disposition.md
    files; re-pointed class-(c) test fixtures at a neutral placeholder bot name (coverage preserved,
    not deleted); ran the repo-wide case-insensitive verification sweep below.
  • D4 — adapted standards/pr-agent.md's registry fields (author_login, trigger_comment,
    completion_check_name, honors_skip_label, ignore_patterns, severity_map) and triage
    guidance to match an actual observed PR-Agent review, citing the source comment.
  • D5 — dropped the Gemini-specific bot-registry test case while retaining registered-bot and
    unregistered-bot path coverage, asserting the D1 unknown-bot contract; fixed two structural
    PR-Agent gaps the grounding work surfaced.

Verified residual gemini set (checked claim)

The plan carries an explicit acceptance obligation that any residual gemini references be stated
as a checked claim, not an assertion. A repo-wide case-insensitive gemini sweep after this PR's
changes returns 28 files / 35 hits, zero of them live-registry references, composed of:

  • 13 class-(d) historical records — the _QC_BOT_RE archived-corpus classifier in
    .claude/skills/audit-archived-plan-retrospectives/scripts/audit.py, its quality-chain.md doc
    row, test_audit_checks.py, plus 8 true review-provenance attributions in unrelated test files.
    Deliberately retained: the classifier scans ARCHIVED plans where gemini-authored comments are
    permanent history, so removing it would silently break shift-left detection.
  • .github/workflows/pr-agent.yml (2 hits) — "Google Gemini" names the LLM model running on
    Vertex AI, a different referent from the gemini-code-assist review bot being retired here.
  • .git (1 hit) — the worktree pointer file, matching only because the plan id contains the
    token gemini.
  • .pyprojectx/ (14 files, 19 hits) — git-ignored build venv, not part of the tracked source
    set.

D4 grounding evidence

D4's registry fields were grounded in a real observed review — cuioss/API-Sheriff PR #103, comment
IC_kwDOPatrT88AAAABLvbeow
, authored by
cuioss-review-bot, posted 2026-07-26T09:27:15Z. Every adapted field in
marketplace/bundles/plan-marshall/skills/automatic-review/standards/pr-agent.md cites this source
— no field was authored from assumption.

Unknown-bot contract (D1 verdict)

An unregistered bot's comment is FILED with an empty bot_kind, never silently dropped (proof site:
_findings_core.py:247). Deleting standards/gemini.md and its registry entries is therefore not a
fail-open change — comments from a retired/unregistered bot still surface as findings.

Structural gaps fixed (D5)

Grounding the PR-Agent registry against the real review in PR #103 surfaced two pre-existing
structural gaps, fixed here:

  • post_responses could never transmit a disposition for a thread-less comment. It now returns a
    three-way disposition (transmitted / untransmitted[] / status: partial) instead of silently
    dropping the untransmittable case.
  • await_fresh_review could only ever return matched: false for pr-agent. It now carries a
    second, comment-based matcher so a PR-Agent completion can actually be observed.

Test Plan

  • Full verify passed (plan-marshall:build-pyproject:pyproject_build run --command-args "verify")
  • Bot-registry tests cover registered-bot and unregistered-bot paths with no Gemini-specific case

cuioss-oliver and others added 7 commits July 26, 2026 23:33
The --push-time help string on the re-review subparser still read "both bots
now post an explicit trigger comment", which asserted a two-reviewer world.
Three bots are registered (coderabbit, sourcery, pr-agent), so the claim was
already stale and D5's criterion forbids a describe-side surface that still
asserts the old contract.

Surfaced by pre-submission-self-review, which correctly declined to record it
as a formal finding (the line predates this diff and no candidate surfaced it).
Fixed here under the Boy Scout Rule because github_re_review.py is a file this
plan already modifies.

Co-Authored-By: Claude <noreply@anthropic.com>
The plan's new three-way cmd_post_responses disposition introduced
_comment_id_from_detail, a one-line regex-extraction wrapper near-identical to
the pre-existing _thread_id_from_detail, and duplicating logic already inline
in _existing_pr_comment_keys.

Collapsed both wrappers into one generic _detail_field(detail, pattern), routed
_existing_pr_comment_keys through it to drop the duplicate inline match, and
updated the two cmd_post_responses call sites plus a stale docstring reference.

Behaviour-preserving.

Co-Authored-By: Claude <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@cuioss-oliver, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 46 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository: cuioss/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 60d0d244-2788-41fc-855b-248facb231c8

📥 Commits

Reviewing files that changed from the base of the PR and between ae0d8d7 and beb8701.

📒 Files selected for processing (35)
  • .claude/skills/finalize-step-review-retrospective/SKILL.md
  • marketplace/bundles/plan-marshall/skills/automatic-review/SKILL.md
  • marketplace/bundles/plan-marshall/skills/automatic-review/standards/coderabbit.md
  • marketplace/bundles/plan-marshall/skills/automatic-review/standards/gemini.md
  • marketplace/bundles/plan-marshall/skills/automatic-review/standards/pr-agent.md
  • marketplace/bundles/plan-marshall/skills/automatic-review/standards/sourcery.md
  • marketplace/bundles/plan-marshall/skills/extension-api/standards/ext-point-lane-element.md
  • marketplace/bundles/plan-marshall/skills/manage-findings/standards/jsonl-format.md
  • marketplace/bundles/plan-marshall/skills/marshall-steward/references/landing-cycle.md
  • marketplace/bundles/plan-marshall/skills/marshall-steward/references/wizard-flow.md
  • marketplace/bundles/plan-marshall/skills/phase-6-finalize/standards/branch-cleanup.md
  • marketplace/bundles/plan-marshall/skills/phase-6-finalize/workflow/create-pr.md
  • marketplace/bundles/plan-marshall/skills/plan-marshall/workflow/verification-feedback.md
  • marketplace/bundles/plan-marshall/skills/workflow-integration-github/SKILL.md
  • marketplace/bundles/plan-marshall/skills/workflow-integration-github/scripts/_github_pr.py
  • marketplace/bundles/plan-marshall/skills/workflow-integration-github/scripts/github_ops.py
  • marketplace/bundles/plan-marshall/skills/workflow-integration-github/scripts/github_pr.py
  • marketplace/bundles/plan-marshall/skills/workflow-integration-github/scripts/github_re_review.py
  • marketplace/bundles/pm-dev-frontend/skills/ext-triage-js/standards/pr-comment-disposition.md
  • marketplace/bundles/pm-dev-java/skills/ext-triage-java/standards/pr-comment-disposition.md
  • marketplace/bundles/pm-dev-oci/skills/ext-triage-oci/standards/pr-comment-disposition.md
  • marketplace/bundles/pm-dev-python/skills/ext-triage-python/standards/pr-comment-disposition.md
  • marketplace/bundles/pm-documents/skills/ext-triage-docs/standards/pr-comment-disposition.md
  • marketplace/bundles/pm-plugin-development/skills/ext-triage-plugin/standards/pr-comment-disposition.md
  • marketplace/bundles/pm-plugin-development/skills/plugin-doctor/scripts/_analyze_markdown.py
  • marketplace/bundles/pm-requirements/skills/ext-triage-reqs/standards/pr-comment-disposition.md
  • test/plan-marshall/automatic-review/test_bot_registry.py
  • test/plan-marshall/automatic-review/test_review_completeness.py
  • test/plan-marshall/finalize-step-review-retrospective/test_review_retrospective.py
  • test/plan-marshall/manage-findings/test_findings_store.py
  • test/plan-marshall/manage-findings/test_manage_findings.py
  • test/plan-marshall/workflow-integration-github/test_comments_stage.py
  • test/plan-marshall/workflow-integration-github/test_github_ops.py
  • test/plan-marshall/workflow-integration-github/test_github_pr.py
  • test/plan-marshall/workflow-integration-github/test_re_review_strategy.py

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Sorry @cuioss-oliver, your pull request is larger than the review limit of 150000 diff characters

@cuioss-oliver

Copy link
Copy Markdown
Collaborator Author

Triage dispositions

In reply to comment_id: PRR_kwDOQ3xasM8AAAABHSNU5w

Not a code review. Sourcery declined to review because the diff exceeds its 150000-character limit. No defect identified and no change requested. Nothing to fix. Acknowledging the capacity limitation rather than claiming a reviewed and cleared finding.

@cuioss-oliver
cuioss-oliver added this pull request to the merge queue Jul 27, 2026
Merged via the queue into main with commit b7a2242 Jul 27, 2026
12 checks passed
@cuioss-oliver
cuioss-oliver deleted the feature/retire-gemini-registry-ground-pr-agent-standard branch July 27, 2026 06:05
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.

1 participant