Repository navigation
fix: address open review findings from PR #102 - #108
Conversation
|
Warning Rate limit exceeded
You’ve run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (4)
📝 WalkthroughWalkthroughThe PR adds Gemini CLI availability validation to two workflow branches and updates documentation across scripts and setup guides to clarify the primary-engine-fallback configuration and secret naming conventions. ChangesGemini CLI Validation and Engine Documentation
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 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 |
There was a problem hiding this comment.
Code Review
This pull request updates the documentation and script comments to support the Gemini engine and clarify the 'rubber duck' review logic. Key changes include a new secret naming reference table and updated fallback chain descriptions. Review feedback recommends including the GOOGLE_API_KEY in the documentation for completeness and points out that the Gemini case in the run_duck function is currently unreachable, suggesting it be utilized to improve review diversity.
There was a problem hiding this comment.
Pull request overview
This PR addresses outstanding review findings from earlier Gemini-engine work by aligning comments/docs with the current 3-engine (Claude/Gemini/Copilot) support and improving CI observability when optional Gemini tooling isn’t available.
Changes:
- Update
scripts/review-batch.shenv docs to reflect the Claude → Gemini → Copilot fallback chain. - Clarify
scripts/engine.shduck-engine comments/docstring for the 3-engine setup. - Add workflow warnings when best-effort Gemini CLI installation doesn’t result in an available
geminicommand. - Add a secret naming reference table to the machine-user setup docs.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| scripts/review-batch.sh | Updates header docs to include Gemini in REVIEW_ENGINE and the fallback chain. |
| scripts/engine.sh | Updates duck-engine comments/docstring to reflect actual cross-engine selection. |
| .github/workflows/pr-review.yml | Warns when gemini CLI is still unavailable after best-effort install paths. |
| docs/pr-review-agent/machine-user-setup.md | Adds a concise table clarifying PAT/secret naming and usage. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
donpetry-bot
left a comment
There was a problem hiding this comment.
Automated review — APPROVED ✓
Risk: LOW
Reviewed commit: 5d97227b392284890eff0665d76f5a09594aa74c
Review mode: triage-approved (single reviewer)
Summary
Documentation and comment updates across 4 files to align with 3-engine (Claude/Gemini/Copilot) support. No runtime logic changes. Adds a GitHub Actions ::warning:: annotation when the Gemini CLI is unavailable after best-effort install, and a secret naming reference table to the machine-user setup docs.
Linked issue analysis
No closing issues linked. PR body references PR #102 (Gemini Pro integration) and #105 (prior version with merge conflict) for context — this is a clean rebase of #105 onto current main.
Findings
No issues found. All changes are strictly documentation, comments, or non-destructive CI observability improvements:
scripts/review-batch.sh— Header comment updated to listgeminias a validREVIEW_ENGINEvalue and describe the fallback chain. Comment-only.scripts/engine.sh— Four comment/docstring lines updated to clarify duck-engine selection logic per primary engine. Comment-only..github/workflows/pr-review.yml— Addscommand -v geminicheck after best-effort install in two engine cases (claudeandcopilot). Emits a::warning::annotation if unavailable. Safe, non-blocking, follows the existing pattern used for the Copilot CLI check immediately below.docs/pr-review-agent/machine-user-setup.md— Adds a secret naming reference table documentingDON_PETRY_BOT_GH_PATandGH_PATpurposes. No secrets exposed — names and usage descriptions only.
CI status
| Check | Status |
|---|---|
| CodeQL (actions) | ✅ Passed |
| SonarCloud | ✅ Passed (0 issues, 0 hotspots) |
| AgentShield | ✅ Passed |
| Dependency audit | ✅ Passed (ecosystems skipped — none detected) |
| CodeRabbit | ✅ Passed |
Reviewed automatically by the PR-review agent (single-reviewer mode: opus 4.6). Reply if you need a human review.
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
scripts/engine.sh (1)
1-1:⚠️ Potential issue | 🟠 Major | ⚡ Quick winAdd strict shell mode to this script.
set -euo pipefailis missing inscripts/engine.sh, which violates the repository shell-script standard and weakens failure handling.Suggested patch
#!/usr/bin/env bash +set -euo pipefail # Engine abstraction layer for LLM invocations.As per coding guidelines,
scripts/**/*.{sh,bash}: Scripts must be POSIX-compatible shell with#!/usr/bin/env bashshebang andset -euo pipefail.🤖 Prompt for 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. In `@scripts/engine.sh` at line 1, Add strict shell mode to the script by inserting set -euo pipefail immediately after the existing shebang (#!/usr/bin/env bash) in scripts/engine.sh so the script exits on errors, treats unset variables as errors, and fails on pipeline errors; ensure this placement is the first executable line and remains POSIX-/bash-compatible.
🤖 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 @.github/workflows/pr-review.yml:
- Around line 132-134: The warning about the missing gemini CLI is misleading
for REVIEW_ENGINE=copilot; update the gemini check so the echo only warns when
REVIEW_ENGINE is not "copilot" (or change the message to accurately state
limited impact for copilot). Locate the shell block that tests command -v gemini
and the echo line, reference the REVIEW_ENGINE variable there, and either skip
emitting the warning when REVIEW_ENGINE=copilot or adjust the text to explicitly
say copilot is unaffected while Gemini-dependent paths will be skipped for other
engines.
---
Outside diff comments:
In `@scripts/engine.sh`:
- Line 1: Add strict shell mode to the script by inserting set -euo pipefail
immediately after the existing shebang (#!/usr/bin/env bash) in
scripts/engine.sh so the script exits on errors, treats unset variables as
errors, and fails on pipeline errors; ensure this placement is the first
executable line and remains POSIX-/bash-compatible.
🪄 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: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 8030808b-1161-4788-a00f-4fe04d89bfda
📒 Files selected for processing (4)
.github/workflows/pr-review.ymldocs/pr-review-agent/machine-user-setup.mdscripts/engine.shscripts/review-batch.sh
Superseded by automated re-review at
|
|
Auto-rebase failed — merge conflict — this branch has conflicts with Please resolve the conflicts and push: |
43eb421 to
3c32eaa
Compare
Review — fix requested (cycle 3/3)The automated review identified the following issues. Please address each one: Findings to fix[Findings would be inserted here] Additional tasks
The review cascade will automatically re-review after new commits are pushed. |
Automated review — human attention neededThis PR has been through 3 automated review cycles (cap: 3) without converging on an approval-and-merge state. Further automated review has been paused to avoid infinite loops. Please take a look manually, or close this PR if it's no longer needed. Once a human review resolves the situation, remove the Posted by the donpetry-bot PR-review cascade. |
- docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1c7b1a8 to
1b85647
Compare
Dev-lead review — all findings addressedI've reviewed the open CodeRabbit
The CodeRabbit CHANGES_REQUESTED review was based on commits SonarQube quality gate passed. No remaining valid blockers identified. Removing |
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Auto-rebase failed — merge conflict — this branch has conflicts with Claude will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with Claude will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with Claude will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
* fix: address open review findings from PR #102 Re-apply the intended PR #105 changes on top of current main without the unrelated doc rewrites. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(reviews): address PR #108 review feedback - docs: add GOOGLE_API_KEY to secret naming reference table - engine.sh: wire gemini as DUCK_ENGINE for copilot primary (removes dead gemini case in run_duck, enables 3-engine cross-engine diversity); update run_duck docstring and ENGINE_LABEL to reflect new routing - workflow: fix misleading gemini CLI warning messages — claude branch now says "fallback paths" only, copilot branch now says "duck review" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Clarify run_duck docstring in engine.sh to make explicit that all three engine branches (claude, gemini, copilot) are reachable — the gemini branch runs when REVIEW_ENGINE=copilot (copilot primary → gemini duck). This addresses the reviewer concern that the gemini case was dead code. All other open threads were already resolved in the prior commit: - GOOGLE_API_KEY added to machine-user-setup.md secret reference table - pr-review.yml claude-block warning updated to "Gemini-based fallback paths will be skipped" - pr-review.yml copilot-block warning updated to "Gemini duck review will be skipped" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(pr): address review feedback on PR #108 Reword the gemini CLI warning in the claude engine branch to accurately reflect that only the Gemini rate-limit fallback is affected, not a duck review path (claude uses copilot as DUCK_ENGINE, not gemini). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Gemini CLI <gemini-cli@example.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Claude Code <bot@anthropic.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Dev-Lead Agent <bot@petry-projects.github>
Rebased version of #105. Addresses review findings from the Gemini Pro PR (#102):
scripts/review-batch.sh: update engine comment to includegeminiscripts/engine.sh: updaterun_duck()docstring and duck-engine comments to reflect 3-engine support.github/workflows/pr-review.yml: warn when Gemini CLI is unavailable after best-effort installsdocs/pr-review-agent/machine-user-setup.md: add explicit secret naming reference tableReplaces #105 (had merge conflict with main).
Summary by CodeRabbit