Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/workflows/dev-lead-reusable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,15 @@
fi

case "$DEV_LEAD_ENGINE" in
claude)
npm install -g @google/gemini-cli || true

Check warning on line 137 in .github/workflows/dev-lead-reusable.yml

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Omitting "--ignore-scripts" can lead to the execution of shell scripts. Make sure it is safe here.

See more on https://sonarcloud.io/project/issues?id=petry-projects_.github-private&issues=AZ42qRZdiLpuLITvE2MF&open=AZ42qRZdiLpuLITvE2MF&pullRequest=220

Check warning on line 137 in .github/workflows/dev-lead-reusable.yml

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Using dependencies without locking resolved versions is security-sensitive.

See more on https://sonarcloud.io/project/issues?id=petry-projects_.github-private&issues=AZ42qRZdiLpuLITvE2MG&open=AZ42qRZdiLpuLITvE2MG&pullRequest=220

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Surface Gemini install failures before fallback

If the npm install fails here (registry outage, package error, or runner/network issue), || true lets the workflow continue with no gemini binary. In the fix-ci path, a later Claude rate limit calls run_writer_with_fallback, which tries Gemini next; a missing binary returns 127 from the Gemini branch in scripts/engine.sh, and because that helper only continues on exit 2, the run aborts instead of reaching the newly installed Copilot fallback. Either fail this setup step or explicitly skip unavailable engines before trying them.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Use a Gemini model when enabling Gemini fallback

With this new install, Claude-primary runs can now reach the Gemini fallback, but run_writer_with_fallback captures the default model before switching engines (ENGINE_ACTION_MODEL is still claude-sonnet-4-6 from sourcing scripts/engine.sh) and then the Gemini branch invokes gemini --model "$model". In any Claude-rate-limit scenario this makes the fallback call Gemini with a Claude model name, so the newly enabled fallback fails as a CLI error instead of applying the fix.

Useful? React with 👍 / 👎.

if ! gh copilot --version >/dev/null 2>&1; then
gh extension install github/gh-copilot || true
fi ;;
gemini)
npm install -g @google/gemini-cli || true ;;
copilot)
npm install -g @google/gemini-cli || true

Check warning on line 144 in .github/workflows/dev-lead-reusable.yml

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Omitting "--ignore-scripts" can lead to the execution of shell scripts. Make sure it is safe here.

See more on https://sonarcloud.io/project/issues?id=petry-projects_.github-private&issues=AZ42qRZdiLpuLITvE2MH&open=AZ42qRZdiLpuLITvE2MH&pullRequest=220

Check warning on line 144 in .github/workflows/dev-lead-reusable.yml

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Using dependencies without locking resolved versions is security-sensitive.

See more on https://sonarcloud.io/project/issues?id=petry-projects_.github-private&issues=AZ42qRZdiLpuLITvE2MI&open=AZ42qRZdiLpuLITvE2MI&pullRequest=220
if ! gh copilot --version >/dev/null 2>&1; then
gh extension install github/gh-copilot || true
fi ;;
Expand Down
Loading