Skip to content

Harden Rust CLI download retries - #2663

Merged
stephentoub merged 1 commit into
mainfrom
gimenete-harden-cli-download-retries
Sep 16, 2026
Merged

stephentoub merged 1 commit into
mainfrom
gimenete-harden-cli-download-retries

Conversation

@gimenete

Copy link
Copy Markdown
Contributor

Summary

  • increase transient Copilot CLI download retries from 3 to 5 in both Rust build modes
  • extend the bounded exponential-backoff window from 7 seconds to 31 seconds while preserving fail-fast behavior for non-transient failures

Fixes the transient download failure observed in github/github-app CI run 34929070862.

Validation

  • cd rust && cargo +nightly-2026-04-14 fmt --check
  • cd rust && cargo clippy --all-features --all-targets -- -D warnings
  • cd rust && cargo test --all-features --lib (248 passed)
  • cd rust && cargo test --all-features reached the E2E target; 371 E2E tests could not initialize because tsx is not installed in the local workspace (sh: tsx: command not found)

Increase transient download retries from three to five so short GitHub release outages have a 31-second bounded backoff window in both build modes.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@gimenete
gimenete requested a review from a team as a code owner September 15, 2026 06:46
Copilot AI balanced review requested due to automatic review settings September 15, 2026 06:46

Copilot AI 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.

Copilot review overview

🟢 Approval recommended

The retry math and error classification match the stated behavior consistently in both build modes.

Review tier: Balanced (auto)
Findings: None

Note

Copilot is running an experiment and ran this review at Balanced.

What changed in this PR

Raises transient CLI download retries from three to five, extending exponential backoff to 31 seconds while preserving fail-fast handling.

Changes:

  • Increased retry limits consistently across both Rust build modes.
  • Clarified that the limit excludes the initial attempt.
File Description
rust/​build/​out_of_process.rs Raises out-of-process download retries to five.
rust/​build/​in_process.rs Raises in-process download retries to five.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@ArshVermaGit ArshVermaGit 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.

Looks good to me. The retry count is updated consistently for both in-process and out-of-process builds, and the existing fail-fast behavior for non-transient errors is preserved. The checks are passing as well. No issues from my side.

@stephentoub
stephentoub added this pull request to the merge queue Sep 16, 2026
Merged via the queue into main with commit 7f86a90 Sep 16, 2026
36 checks passed
@stephentoub
stephentoub deleted the gimenete-harden-cli-download-retries branch September 16, 2026 01:58
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.

4 participants