fix: skip Phase 4b2 legacy pr_review recovery when AI lifecycle is active#2108
fix: skip Phase 4b2 legacy pr_review recovery when AI lifecycle is active#2108marcusquinn merged 1 commit intomainfrom
Conversation
Summary of ChangesHello @marcusquinn, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request addresses an issue where an older, legacy Highlights
Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
|
No actionable comments were generated in the recent review. 🎉 WalkthroughPhase 4b2 stale pr_review recovery in pulse.sh now conditionally gates based on SUPERVISOR_AI_LIFECYCLE flag. AI-enabled paths skip legacy pr_lifecycle retry logic, while non-AI paths retain existing behavior with enhanced logging for status transitions and failure visibility. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
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. Comment |
🔍 Code Quality Report�[0;35m[MONITOR]�[0m Code Review Monitoring Report �[0;34m[INFO]�[0m Latest Quality Status: �[0;34m[INFO]�[0m Recent monitoring activity: 📈 Current Quality Metrics
Generated on: Sat Feb 21 15:26:56 UTC 2026 Generated by AI DevOps Framework Code Review Monitoring |
|
There was a problem hiding this comment.
Code Review
The pull request correctly implements a guard to skip legacy pr_review recovery when the AI lifecycle is active, preventing conflicts between the two systems. I have identified a style guide violation regarding error suppression that should be addressed for consistency and safety.
| log_warn " Stale pr_review: $spr_id (last updated: ${spr_updated:-unknown}, >${pr_review_stale_seconds}s) — re-attempting lifecycle (t1208)" | ||
| if cmd_pr_lifecycle "$spr_id" 2>>"$SUPERVISOR_LOG"; then | ||
| local spr_new_status | ||
| spr_new_status=$(db "$SUPERVISOR_DB" "SELECT status FROM tasks WHERE id = '$(sql_escape "$spr_id")';" 2>/dev/null || echo "") |
There was a problem hiding this comment.
Avoid blanket suppression of errors with 2>/dev/null. If the database query fails, the error should be visible for debugging purposes.
| spr_new_status=$(db "$SUPERVISOR_DB" "SELECT status FROM tasks WHERE id = '$(sql_escape "$spr_id")';" 2>/dev/null || echo "") | |
| spr_new_status=$(db "$SUPERVISOR_DB" "SELECT status FROM tasks WHERE id = '$(sql_escape "$spr_id")';" || echo "") |
References
- Avoid using '2>/dev/null' for blanket suppression of command errors in shell scripts to ensure that authentication, syntax, or system issues remain visible for debugging.



Summary
cmd_pr_lifecycleon tasks that Phase 3's AI lifecycle had already processedSUPERVISOR_AI_LIFECYCLEguard used for Phase 3.5/3.6Evidence
3 of 6 awards app tasks (t005.2, t007.8, t010) were re-blocked by Phase 4b2 with "Merge failed" immediately after the AI lifecycle correctly processed them in Phase 3.
Summary by CodeRabbit
Bug Fixes
Chores