docs: add autonomous PR monitoring prompt#299
Conversation
Captures the pattern for running an autonomous monitoring loop that: - Monitors PRs every 120 seconds - Fixes CI failures proactively - Resolves merge conflicts - Enforces ADR-014 (HANDOFF.md read-only) - Creates missing GitHub labels - Creates fix PRs for infrastructure issues 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
Note Other AI code review bot(s) detectedCodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review. 📝 WalkthroughWalkthroughAdds documentation file defining an autonomous PR monitoring system that continuously checks open PRs every 120 seconds, determines needed actions, and applies fixes or creates review branches with specific criteria for blocked PRs and priority issues. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Suggested reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🧰 Additional context used📓 Path-based instructions (15)**/*.md📄 CodeRabbit inference engine (.agents/architecture/ADR-001-markdown-linting.md)
Files:
⚙️ CodeRabbit configuration file
Files:
**/docs/**/*.md📄 CodeRabbit inference engine (.agents/skills/documentation.md)
Files:
docs/**/*.md📄 CodeRabbit inference engine (docs/markdown-linting.md)
Files:
**/*.{md,json,yml,yaml,ps1,sh,bash,toml,ini,cfg,config,txt}📄 CodeRabbit inference engine (.agents/retrospective/phase1-remediation-pr43.md)
Files:
**/*.{md,markdown}📄 CodeRabbit inference engine (.agents/retrospective/2025-12-17-session-failures.md)
Files:
**/*.{ps1,yml,yaml,md}📄 CodeRabbit inference engine (.agents/analysis/003-session-protocol-skill-gate.md)
Files:
**/*.{md,js,ts,tsx,jsx,json,yaml,yml,sh,ps1}📄 CodeRabbit inference engine (.agents/retrospective/2025-12-18-serena-memory-reference-migration.md)
Files:
**/*.{md,js,ts,tsx,jsx}📄 CodeRabbit inference engine (.agents/retrospective/2025-12-18-serena-memory-reference-migration.md)
Files:
**/*.{md,ts,tsx,js,jsx,py}📄 CodeRabbit inference engine (.agents/retrospective/2025-12-18-session-17-retrospective.md)
Files:
**/*.{js,ts,ps1,py,json,yaml,yml,md}📄 CodeRabbit inference engine (.agents/retrospective/2025-12-19-skill-extraction-summary.md)
Files:
**/*.{md,txt}📄 CodeRabbit inference engine (.agents/pr-batch-review-session-2025-12-20.md)
Files:
{**/*.md,.serena/**}📄 CodeRabbit inference engine (.agents/qa/002-pr-201-skills-clarity-fixes.md)
Files:
**/{SESSION-PROTOCOL,*-PROTOCOL,*.md}📄 CodeRabbit inference engine (.agents/archive/HANDOFF-2025-12-22.md)
Files:
**/!(node_modules)/**/*.{md,yml,json}📄 CodeRabbit inference engine (.agents/archive/HANDOFF-2025-12-22.md)
Files:
**/*.{md,yml,yaml}📄 CodeRabbit inference engine (.agents/analysis/156-pr-review-analysis.md)
Files:
🧠 Learnings (5)📚 Learning: 2025-12-16T06:26:21.783ZApplied to files:
📚 Learning: 2025-12-16T06:26:44.230ZApplied to files:
📚 Learning: 2025-12-16T06:26:44.208ZApplied to files:
📚 Learning: 2025-12-16T06:27:04.317ZApplied to files:
📚 Learning: 2025-12-16T08:00:20.752ZApplied to files:
🪛 LanguageTooldocs/autonomous-pr-monitor.md[style] ~3-~3: Consider using a different verb for a more formal wording. (FIX_RESOLVE) [style] ~113-~113: Consider using a different verb for a more formal wording. (FIX_RESOLVE) 🔍 Remote MCPAdditional Context from PR Changes
🔇 Additional comments (1)
Comment |
There was a problem hiding this comment.
Code Review
This pull request introduces a new documentation file, docs/autonomous-pr-monitor.md, which provides a detailed prompt template for running autonomous PR monitoring sessions. The document is well-written, clearly outlining the agent's tasks, key commands, and prerequisites.
My review focused on adherence to the repository's style guide. I have one suggestion to improve the documentation's portability by replacing a hardcoded, machine-specific example path with a generic, relative one that is more consistent with conventions found elsewhere in the repository.
Overall, this is a valuable addition that effectively documents a useful process.
There was a problem hiding this comment.
Pull request overview
This PR adds documentation for running autonomous PR monitoring sessions. The document captures the patterns and techniques developed during actual autonomous monitoring sessions, enabling users to replicate this workflow.
Key additions:
- Template prompt for starting 8-hour autonomous monitoring loops with 120-second check intervals
- Documentation of common CI failure patterns and automated fixes (cross-platform paths, exit codes, missing labels, ADR-014 violations)
- Key GitHub CLI commands for PR status checking, log retrieval, and label management
Expanded the prompt to include detailed monitoring strategies, aggressive problem-solving guidelines, and structured output formats for managing PRs effectively. Signed-off-by: Richard Murillo <6811113+rjmurillo@users.noreply.github.com>
Updated 6 out of 16 PRs that were behind main: ✅ PR #313 (copilot/investigate-workflow-failure): 4 commits behind → up to date ✅ PR #310 (docs/adr-017): 5 commits behind → up to date ✅ PR #269 (copilot/add-pre-pr-validation-workflow): 17 commits behind → up to date ✅ PR #246 (docs/ai-misses): 10 commits behind → up to date ✅ PR #245 (refactor/issue-239-memory-decomposition-analysis): 22 commits behind → up to date ✅ PR #199 (feat/pr-comment-responder-memory-protocol): 10 commits behind → up to date 10 PRs require manual conflict resolution:⚠️ PR #301, #300, #299, #285, #255, #247, #235, #202, #194, #143 Used gh pr update-branch to merge main into PR branches. Success rate: 37.5% (6/16 PRs updated without conflicts). Session log: .agents/sessions/2025-12-23-session-87-pr-branch-updates.md
…effort (#322) * feat: add implementation plan for PR review merge state verification Session 85 lessons learned implementation plan: - Add PR merge state verification to pr-review command (Skill-PR-Review-006) - Create Test-PRMerged.ps1 script for GraphQL merge state checking - Document Thread Resolution Protocol (Skills PR-Review-004, -005) - Update Completion Criteria with merge verification Prevents wasted effort on already-merged PRs where gh pr view returns stale data. Related: Session 85, PR #315, PR #320 * feat: implement PR merge state verification (Issue #321) Implements Session 85 lessons learned to prevent wasted effort on merged PRs. Changes: - Create Test-PRMerged.ps1 script to check PR merge state via GraphQL * Exit code 0 = not merged (safe to proceed) * Exit code 1 = merged (skip review work) * GraphQL API is source of truth (gh pr view may return stale data) - Update pr-review command (.claude/commands/pr-review.md): * Add PR merge state verification to Step 1 * Add Thread Resolution Protocol section (Skills PR-Review-004, -005) * Update Completion Criteria with PR merge check - Thread Resolution Protocol documentation: * Single thread resolution (Skill-PR-Review-004) * Batch thread resolution using GraphQL mutation aliases (Skill-PR-Review-005) * Verification commands Testing: - ✅ Test-PRMerged.ps1 with merged PR #315 (exit code 1) - ✅ Test-PRMerged.ps1 with open PR #320 (exit code 0) Benefits: - Prevents wasted effort when gh pr view returns stale state - Reduces API calls via batch thread resolution (N calls → 1 call) - Documents 2-step process: reply + resolve thread Related: Session 85, PR #315, PR #320 Fixes #321 * docs: add Session 86 implementation log Comprehensive documentation of PR review improvements implementation. Deliverables: - Issue #321 created - Test-PRMerged.ps1 PowerShell script - pr-review.md updates (merge verification + thread resolution protocol) - Implementation plan document - PR #322 created Benefits: - Prevents wasted effort on merged PRs - Reduces API calls via batch thread resolution - Documents critical 2-step process (reply + resolve thread) Session metrics: - 45 minutes implementation time - 3 skills implemented (PR-Review-004, -005, -006) - 2 tests executed (merged PR #315, open PR #320) - 182 lines of code Related: Session 85, Issue #321, PR #322 * docs: Session 87 - Update out-of-date PR branches Updated 6 out of 16 PRs that were behind main: ✅ PR #313 (copilot/investigate-workflow-failure): 4 commits behind → up to date ✅ PR #310 (docs/adr-017): 5 commits behind → up to date ✅ PR #269 (copilot/add-pre-pr-validation-workflow): 17 commits behind → up to date ✅ PR #246 (docs/ai-misses): 10 commits behind → up to date ✅ PR #245 (refactor/issue-239-memory-decomposition-analysis): 22 commits behind → up to date ✅ PR #199 (feat/pr-comment-responder-memory-protocol): 10 commits behind → up to date 10 PRs require manual conflict resolution:⚠️ PR #301, #300, #299, #285, #255, #247, #235, #202, #194, #143 Used gh pr update-branch to merge main into PR branches. Success rate: 37.5% (6/16 PRs updated without conflicts). Session log: .agents/sessions/2025-12-23-session-87-pr-branch-updates.md * fix: address PR #322 review comments Security fixes (gemini-code-assist[bot]): - Add $ErrorActionPreference = 'Stop' to Test-PRMerged.ps1 - Use parameterized GraphQL query to prevent injection vulnerability - Add try/catch for JSON parsing error handling Code quality fixes (Copilot): - Fix null reference on mergedBy (handle automated merges) - Fix string interpolation bug (use ${PullRequest} syntax) - Fix GraphQL mutation to use variables correctly Documentation fixes (Copilot): - Fix 'Skills' → 'Skill' capitalization consistency - Fix GraphQL variable inconsistency in mutation example - Add Owner/Repo fields to output object in planning doc - Fix 'gemini' → 'Gemini' capitalization - Clarify 182 lines = 96 (script) + 86 (docs) Addresses all review comments except #2644893439 (Pester tests). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix: address PR #322 Copilot review comments - Update planning document to match secure implementation: - Use parameterized GraphQL queries instead of string interpolation - Remove duplicate Owner/Repo property definitions - Fix unreachable code and consistent null handling - Add proper try/catch error handling - Fix pr-review.md issues: - Replace `continue` with `return` (valid outside loop context) - Complete GraphQL mutation example with threadId parameter 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix(naming): add numeric IDs to skill references per ADR-017 Update skill reference names to comply with ADR-017 format: - pr-review-merge-state-verification → pr-review-006-merge-state-verification - pr-review-thread-resolution-single → pr-review-004-thread-resolution-single - pr-review-thread-resolution-batch → pr-review-005-thread-resolution-batch 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * docs(memory): extract session learnings to Serena memories Recursive learning extraction from session - 5 rounds total: - 6 new skills created - 3 existing skills updated - 6 rejected as duplicates New skills: - agent-workflow-post-implementation-critic-validation - orchestration-recursive-learning-extraction - pr-review-007-merge-state-verification - pr-review-008-session-state-continuity - pr-review-bot-mention-side-effects - validation-domain-index-format Updated skills: - graphql-pr-operations (thread resolution anti-pattern) - pattern-agent-generation-three-platforms (Claude variant maintenance) - pr-template-requirement (REST API remediation) - skill-index-selection-decision-tree (orphan prevention) All skills validated with atomicity >75% and indexed in domain files. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * test: add Pester tests for Test-PRMerged.ps1 with 100% coverage (#383) * Initial plan * test: add comprehensive Pester tests for Test-PRMerged.ps1 with 100% coverage Co-authored-by: rjmurillo <6811113+rjmurillo@users.noreply.github.com> * fix: move Test-PRMerged.Tests.ps1 to correct location per governance standards Co-authored-by: rjmurillo <6811113+rjmurillo@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: rjmurillo <6811113+rjmurillo@users.noreply.github.com> * fix: address PR review comments - skill ID consistency and documentation - Fix unclosed code block in pr-review.md (cursor[bot] critical bug) - Update all Skill-PR-Review-006 references to 007 for consistency - Correct evidence PR number from #345 to #315 - Update planning document status from [PLANNING] to [IMPLEMENTED] - Update implementation checklist to reflect completed tasks Addresses review comments from cursor[bot] and Copilot on PR #322 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix: update test assertions to use Skill-PR-Review-007 Tests were checking for Skill-PR-Review-006 but script references 007. Addresses cursor[bot] comment on PR #322 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> --------- Signed-off-by: Richard Murillo <6811113+rjmurillo@users.noreply.github.com> Co-authored-by: rjmurillo-bot <rjmurillo-bot@users.noreply.github.com> Co-authored-by: Richard Murillo <6811113+rjmurillo@users.noreply.github.com> Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Summary
What This Enables
Users can start similar autonomous monitoring sessions using the documented prompt.
The prompt captures:
Test plan
🤖 Generated with Claude Code