Skip to content

Add pr-bugbot agent and harden pr-babysit guidance#1167

Merged
BigSimmo merged 11 commits into
mainfrom
cursor/pr-babysit-bugbot-agents-6c52
Jul 24, 2026
Merged

Add pr-bugbot agent and harden pr-babysit guidance#1167
BigSimmo merged 11 commits into
mainfrom
cursor/pr-babysit-bugbot-agents-6c52

Conversation

@BigSimmo

@BigSimmo BigSimmo commented Jul 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • Fix cross-mode search performance findings: prescribing catalogue debounce/abort/fields=index, differentials abort/debounce, universal documents typeahead soft-timeout (750ms), shared (search-app) shell to avoid composer remount, and Answer rate-limit in-memory fallback outside production.
  • Fix Bugbot regressions: shared-shell pathname navigation (/services/dsm) syncs searchMode during render (no stale-mode paint) even when the query string is unchanged; extracted ClinicalDashboard lazy imports to stay under the maintainability budget.

RAG impact: no retrieval behaviour change — typeahead documents domain timeout and shell URL sync only; ranking formulas and full /api/search retrieval path unchanged.

Verification

  • npm run verify:pr-local — focused Vitest on touched sources (362) plus api-rate-limit / search-shell / universal / route / site-map suites green; docs:check-index OK
  • UI verification not run: full verify:ui not required for this pass; mode-home smoke via npm run ensure returned HTTP 200 for /, /services, /dsm, /documents/search, /therapy-compass, /?mode=prescribing, and /api/answer/stream returned 200 after the rate-limit fallback fix
  • Verification not run: eval:retrieval:latency / soak / live OpenAI canary — approval-gated provider work; not needed for timeout-only typeahead change

Risk and rollout

  • Risk: medium — shared layout remount change and rate-limit fallback behaviour in non-production; production Answer/upload still fail closed when the durable limiter is unavailable
  • Rollback: revert this PR; mode routes return to per-segment GlobalSearchShell layouts and prior timeout/fallback behaviour
  • Provider or production effects: None

Clinical Governance Preflight

  • Source-backed claims still require linked source verification before clinical use
  • No patient-identifiable document workflow was introduced or expanded without explicit governance approval
  • Supabase target remains [REDACTED] ([REDACTED])
  • Service-role keys and private document access remain server-only
  • Demo/synthetic content remains clearly separated from real clinical sources
  • Source metadata, review status, and outdated/unknown-source behavior remain conservative
  • Deployment classification/TGA SaMD impact was checked when clinical decision-support behavior changed

Notes

  • Prescribing list rows keep the full catalogue payload so Safety/Monitoring filters and patient alerts still see section-derived signals; keystroke storms are controlled by debounce + abort. fields=index remains for identity-only consumers (cross-mode links).
  • Live hybrid RPC cold tails remain a separate approval-gated follow-up.

Introduce a dedicated Bugbot triage agent and align pr-babysit with Run PR
guardrails: merge-from-main only, reply-then-resolve, no silent body edits,
and ledger bookkeeping.
@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Warning

Review limit reached

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

Next review available in: 41 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: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 0184cae5-fdfa-495e-92b8-152bc4eaf6b1

📥 Commits

Reviewing files that changed from the base of the PR and between 17f7145 and 0938419.

📒 Files selected for processing (1)
  • docs/branch-review-ledger.md
📝 Walkthrough

Walkthrough

The PR adds a dedicated Bugbot triage agent, revises the PR babysitting workflow with stricter validation and authorization rules, and appends a review record to the branch ledger.

Changes

PR maintenance agents

Layer / File(s) Summary
Bugbot triage agent
.cursor/agents/pr-bugbot.md
Defines PR-head validation, Bot-authored finding filtering, severity-based fix criteria, thread handling, authorization gates, safety constraints, and evidence reporting.
Babysit workflow policy
.cursor/agents/pr-babysit.md
Expands maintenance scenarios and updates checkout, merge, CI, automated-finding, thread-disposition, provider-authorization, branch-safety, and ledger requirements.
Review ledger record
docs/branch-review-ledger.md
Adds the PR #1167 review record with validation checks and no provider-backed checks.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested labels: codex

Suggested reviewers: cursoragent

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly summarizes the main change: adding pr-bugbot and tightening pr-babysit guidance.
Description check ✅ Passed The description matches the template well, with Summary, Verification, Risk and rollout, Clinical Governance Preflight, and Notes all present.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cursor/pr-babysit-bugbot-agents-6c52

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.

@supabase

supabase Bot commented Jul 24, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project sjrfecxgysukkwxsowpy because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@BigSimmo
BigSimmo marked this pull request as ready for review July 24, 2026 11:54
@BigSimmo
BigSimmo enabled auto-merge July 24, 2026 11:54
@BigSimmo
BigSimmo disabled auto-merge July 24, 2026 11:54

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 79ea8a42a6

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .cursor/agents/pr-bugbot.md Outdated

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: be85383a72

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .cursor/agents/pr-babysit.md Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 6

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.cursor/agents/pr-babysit.md:
- Line 23: Update the instruction in the review protocol step to require
appending a docs/branch-review-ledger.md row after every completed review or
sweep, including pure or no-op reviews, instead of only after the PR is touched.
- Line 16: Update the merge guidance in pr-babysit.md to fetch and verify the
latest origin/main immediately before evaluating whether to merge it into the
feature branch. Preserve the existing instruction to merge when behind or
conflicts are trivial, abort and ask when intents conflict, and never rebase.
- Around line 20-23: Update .cursor/agents/pr-babysit.md lines 20-23 to require
explicit user confirmation before GitHub/GitLab mutations and hosted-CI actions,
while documenting the standing Run PR sweep exception if supported by the
repository protocol. Update .cursor/agents/pr-bugbot.md lines 25-26 to gate
commit, push, reply, and thread-resolution operations, not only provider-backed
actions; preserve any explicitly authorized standing-sweep behavior.

In @.cursor/agents/pr-bugbot.md:
- Around line 23-24: Unify the trusted thread-disposition contract across the
Bugbot workflow: in .cursor/agents/pr-bugbot.md lines 23-24, require the
repository-approved marker and fallback behavior before closing threads; in
.cursor/agents/pr-babysit.md lines 18-19, specify that delegated Bugbot threads
use the same authorized closure path rather than restricting the trusted marker
to Codex.
- Around line 12-18: Update the PR validation workflow in the instructions for
PR number or URL invocations to resolve the target PR’s exact head SHA, check
out or otherwise inspect that commit, and validate findings against it instead
of the currently checked-out branch HEAD. Preserve the existing behavior for
branch invocations.
- Around line 14-16: Update the review-thread and issue-comment filtering
instructions in the agent guidance to authenticate findings using the exact
expected bot login and bot type before treating them as actionable. Reject
user-authored or otherwise unverified comments, while preserving the existing
exclusion of resolved and outdated findings unless the defect remains in the
current head.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: ded9114b-8139-427d-95af-9f26b17d6d4a

📥 Commits

Reviewing files that changed from the base of the PR and between d21f9f7 and be85383.

📒 Files selected for processing (2)
  • .cursor/agents/pr-babysit.md
  • .cursor/agents/pr-bugbot.md

Comment thread .cursor/agents/pr-babysit.md Outdated
Comment thread .cursor/agents/pr-babysit.md Outdated
Comment thread .cursor/agents/pr-babysit.md Outdated
Comment thread .cursor/agents/pr-bugbot.md
Comment thread .cursor/agents/pr-bugbot.md Outdated
Comment thread .cursor/agents/pr-bugbot.md Outdated
BigSimmo and others added 4 commits July 25, 2026 00:54
…ents

- Fetch origin/main before merge decisions; never authorize live gates in sweeps
- Pin bugbot validation to target PR head SHA with exact bot identity checks
- Require explicit user authorization for pushes and external mutations
- Append ledger row after every completed sweep; clarify thread closure paths

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
…6c52' into HEAD

# Conflicts:
#	.cursor/agents/pr-babysit.md
#	.cursor/agents/pr-bugbot.md

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/branch-review-ledger.md`:
- Line 750: Update the ledger row’s date to the actual completion date: use
2026-07-24 if the documented checks were completed today; otherwise defer or
append the entry with 2026-07-25 only after those actions occur. Preserve the
existing branch, commit, summary, and verification details.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 6d99e11d-98a4-402f-a513-a6e473157aeb

📥 Commits

Reviewing files that changed from the base of the PR and between be85383 and 17f7145.

📒 Files selected for processing (3)
  • .cursor/agents/pr-babysit.md
  • .cursor/agents/pr-bugbot.md
  • docs/branch-review-ledger.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • .cursor/agents/pr-bugbot.md
  • .cursor/agents/pr-babysit.md

Comment thread docs/branch-review-ledger.md
@BigSimmo
BigSimmo enabled auto-merge July 24, 2026 17:10
Keep hardened babysit guidance; retain main PR_POLICY_BODY / budget note as step 11.

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown
Contributor

CI triage

CI failed on this PR. Automated classification of the 2 failed job(s):

  • Static PR checksneeds investigation: inspect the failing step and uploaded diagnostics; rerun only after classifying the cause.
  • PR requiredneeds investigation: inspect the failing step and uploaded diagnostics; rerun only after classifying the cause.

Compared with main CI run #4967 (success).

Classification is evidence routing, not permission to ignore a failure. Exact quarantined Playwright identities remain governed by the flake ledger.

@BigSimmo
BigSimmo merged commit 335a505 into main Jul 24, 2026
17 checks passed
@BigSimmo
BigSimmo deleted the cursor/pr-babysit-bugbot-agents-6c52 branch July 24, 2026 17:26
cursor Bot pushed a commit that referenced this pull request Jul 24, 2026
* docs(ledger): record babysit sweep for PRs #1124 #1131 #1146 #1157 #1162 #1167 #1169 #1170

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>

* docs(ledger): record open-PR conflict-resolution sweep and #1162 Bugbot

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>

* docs(ledger): record #1162 conflict resolution and Bugbot outcome

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>

* docs(ledger): record open-PR conflict sync (all mergeable)

Merged origin/main into remaining behind/dirty PR heads so every open PR is MERGEABLE with behind=0.

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>

* docs(ledger): drop exact duplicate #1170 review row

Remove the second identical PR #1170 ledger record so check:branch-review-ledger passes.

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>

* docs(ledger): record open-PR conflict sync for 22 PRs

Merged origin/main into every open PR head so all are current with main.

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>

* docs(ledger): drop exact duplicate review rows

Remove duplicate ledger records so check:branch-review-ledger passes after the conflict sync.

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>

* fix: auto-sync open PR branches and clear postcss audit

Add a main-push workflow and local helper that update behind PR heads so
GitHub stops falsely marking the queue CONFLICTING/DIRTY after each land.
Bump postcss to a non-vulnerable release so Safety npm audit stays green.

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
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