Python resilience patterns including automatic retries, exponential backoff, timeouts, and fault-tolerant decorators. Use when adding retry logic, implementing timeouts, building fault-tolerant services, or handling transient failures.
88
82%
Does it follow best practices?
Impact
100%
1.16xAverage score across 3 eval scenarios
Passed
No known issues
Tenacity retry with exception filtering
Tenacity library used
100%
100%
Exponential jitter wait
0%
100%
Dual stop condition
100%
100%
Transient exception whitelist
100%
100%
No retry on ValueError/TypeError
100%
100%
No retry on auth/4xx errors
100%
100%
httpx for HTTP calls
100%
100%
Timeout on HTTP call
100%
100%
Retry on decorator
100%
100%
Before-sleep logging
100%
100%
HTTP status code retry with combined conditions
retry_if_result for status codes
100%
100%
Correct retry status codes
100%
100%
Combined retry conditions
50%
100%
structlog for logging
100%
100%
Before-sleep logging
100%
100%
Jitter in wait strategy
100%
100%
httpx for HTTP calls
0%
100%
Timeout on HTTP call
100%
100%
Network exceptions whitelisted
60%
100%
Design doc covers both conditions
100%
100%
Decorator stacking, fail-safe, and dependency injection
asyncio.wait_for in timeout decorator
100%
100%
@wraps preserves metadata
100%
100%
Fail-safe decorator implemented
100%
100%
Fail-safe returns empty list default
100%
100%
Stacked decorators on method
100%
100%
Dataclass for service
100%
100%
Logger injected via constructor
100%
100%
Metrics client injected via constructor
100%
100%
Protocol-based type hints
0%
100%
Test vs production instantiation
100%
100%
Fail-safe logs failure
100%
100%
03d0b4b
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.