Skip to content

feat(github): add retry-with-backoff logic for repository update failures#682

Open
victorisiguzoruzoma874 wants to merge 1 commit into
StellerCraft:mainfrom
victorisiguzoruzoma874:feat/issue-072-github-repo-update-retry-backoff
Open

feat(github): add retry-with-backoff logic for repository update failures#682
victorisiguzoruzoma874 wants to merge 1 commit into
StellerCraft:mainfrom
victorisiguzoruzoma874:feat/issue-072-github-repo-update-retry-backoff

Conversation

@victorisiguzoruzoma874
Copy link
Copy Markdown

@victorisiguzoruzoma874 victorisiguzoruzoma874 commented May 27, 2026

Summary

  • Add exponential backoff retry with jitter for transient GitHub API failures
  • Distinguish retryable (5xx, 429, network) from non-retryable (4xx) errors
  • Integrate into GitHub repository update service for graceful failure handling
  • Fail fast on auth errors, retry only transient failures

Implementation Details

  • Retry configuration: 5 attempts, 200ms initial, 30s max delay, 5min total duration
  • Jitter (±10%) prevents thundering herd in concurrent scenarios
  • Error detection: HTTP status codes, network/timeout patterns
  • Full test coverage for retry behavior across error types

Key Design Decisions

  • Skip retry on 4xx (except 429) to fail fast on validation/auth errors
  • Jitter on backoff delays to prevent synchronized retries
  • Cap total duration to prevent indefinite retry loops

closes #608

🤖 Generated with Claude Code

…ures

- Add exponential backoff retry utility with jitter to prevent thundering herd
- Distinguish retryable (5xx, 429, network) from non-retryable (4xx auth) errors
- Integrate retry logic into GitHub repository update service
- Configure: 5 max attempts, 200ms initial delay, 30s max delay, 5min total duration
- Fail fast on auth errors without retry, only retry transient failures
- Add comprehensive test coverage for retry behavior and error handling
- Document retry policy in service JSDoc

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented May 27, 2026

@victorisiguzoruzoma874 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

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.

Architect Retry-with-Backoff Logic for GitHub Repository Update Service Failures

1 participant