ExLLM.Retry.CircuitBreaker (ex_llm v0.5.0)

View Source

Circuit breaker to prevent cascading failures.

Summary

Types

state()

@type state() :: :closed | :open | :half_open

t()

@type t() :: %ExLLM.Retry.CircuitBreaker{
  failure_count: non_neg_integer(),
  failure_threshold: non_neg_integer(),
  half_open_requests: non_neg_integer(),
  last_failure_time: DateTime.t() | nil,
  reset_timeout: non_neg_integer(),
  state: state(),
  success_count: non_neg_integer()
}