CircuitBreaker
Defined in: src/pattern/CircuitBreaker.ts:40
Three-state circuit breaker. Wraps calls that might fail — when enough fail in a row the breaker “opens” and refuses further calls for a timeout window. The first call after the timeout probes the upstream (“half-open”); if it succeeds, the breaker closes and normal operation resumes.
Not tied to actors — works with any () => Promise<T> factory. For
actor-based usage, wrap ask(target, msg, timeout) in the factory.
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new CircuitBreaker(
settings):CircuitBreaker
Defined in: src/pattern/CircuitBreaker.ts:46
Parameters
Section titled “Parameters”settings
Section titled “settings”Returns
Section titled “Returns”CircuitBreaker
Properties
Section titled “Properties”settings
Section titled “settings”
readonlysettings:CircuitBreakerSettings
Defined in: src/pattern/CircuitBreaker.ts:46
Accessors
Section titled “Accessors”Get Signature
Section titled “Get Signature”get state():
CircuitState
Defined in: src/pattern/CircuitBreaker.ts:55
Returns
Section titled “Returns”Methods
Section titled “Methods”call()
Section titled “call()”call<
T>(factory):Promise<T>
Defined in: src/pattern/CircuitBreaker.ts:58
Call factory under breaker supervision. Throws CircuitBreakerOpenError when open.
Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”factory
Section titled “factory”() => Promise<T>
Returns
Section titled “Returns”Promise<T>
onStateChange()
Section titled “onStateChange()”onStateChange(
listener): () =>void
Defined in: src/pattern/CircuitBreaker.ts:79
Observe state transitions — useful for logging/metrics.
Parameters
Section titled “Parameters”listener
Section titled “listener”StateListener
Returns
Section titled “Returns”() => void
setState()
Section titled “setState()”setState(
next):void
Defined in: src/pattern/CircuitBreaker.ts:85
Force the breaker into a specific state (mostly for tests / admin).
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void