Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
dist-1.7.0.tar.gz | 2025-09-23 | 290.9 kB | |
dist-1.7.0.zip | 2025-09-23 | 465.9 kB | |
sbom.cdx.json | 2025-09-23 | 2.6 MB | |
README.md | 2025-09-23 | 2.8 kB | |
v1.7.0 source code.tar.gz | 2025-09-23 | 522.6 kB | |
v1.7.0 source code.zip | 2025-09-23 | 719.7 kB | |
Totals: 6 Items | 4.6 MB | 2 |
Minor Changes
Implements intelligent retry logic with the following features: - Exponential backoff with jitter to prevent thundering herd - Circuit breaker pattern per endpoint to prevent cascade failures - Retry budget management to limit resource consumption - Respect for Retry-After headers from the API - Automatic handling of transient failures (network, 502, 503, 504) - Rate-limited requests (429) are automatically retried with appropriate delays
Configuration via environment variables:
- RETRY_MAX_ATTEMPTS
: Maximum retry attempts (default: 3)
- RETRY_BASE_DELAY_MS
: Base delay for exponential backoff (default: 1000ms)
- RETRY_MAX_DELAY_MS
: Maximum delay between retries (default: 30000ms)
- RETRY_BUDGET_PER_MINUTE
: Max retries per minute (default: 10)
- CIRCUIT_BREAKER_THRESHOLD
: Failures before opening circuit (default: 5)
- CIRCUIT_BREAKER_TIMEOUT_MS
: Recovery timeout (default: 30000ms)
Safety features: - Only retries idempotent operations (queries/GET requests) - Never retries mutations (update operations) - Transparent to MCP clients - no user-visible errors during transient failures
Patch Changes
- #180
4da304e
- Fix all DeepSource code quality issues - JS-0356: Remove unused import in exponential-backoff test file
- JS-0339: Replace non-null assertions with proper null checks and error handling in circuit-breaker and retry-budget modules
- JS-0054: Fix lexical declaration scoping in switch case statements by adding block scope braces
- JS-0105: Make isAxiosError method static in base-client.ts since it doesn't use 'this'
- JS-0047: Add default cases to switch statements in recordSuccess and recordFailure methods
- JS-0045: Add explicit return statement in extractRetryAfter arrow function for consistency
- Update test expectations to match corrected circuit breaker behavior
-
Fix unhandled promise rejection in retry-executor test
- Updated packageManager field in package.json
- Updated pnpm version across all GitHub Actions workflows
- Ensures consistency and uses latest bug fixes