CircuitBreakerConfig
Defined in: src/policies/resilience/circuit-breaker.ts:137
Base configuration shared by all policies
Extends
Section titled “Extends”Properties
Section titled “Properties”failureOn?
Section titled “failureOn?”
optionalfailureOn:number[]
Defined in: src/policies/resilience/circuit-breaker.ts:145
Status codes considered failures. Default: [500, 502, 503, 504].
failureThreshold?
Section titled “failureThreshold?”
optionalfailureThreshold:number
Defined in: src/policies/resilience/circuit-breaker.ts:139
Number of failures before opening the circuit. Default: 5.
halfOpenMax?
Section titled “halfOpenMax?”
optionalhalfOpenMax:number
Defined in: src/policies/resilience/circuit-breaker.ts:143
Max concurrent probes allowed in half-open state. Default: 1.
key()?
Section titled “key()?”
optionalkey: (c) =>string
Defined in: src/policies/resilience/circuit-breaker.ts:149
Key extractor. Default: request URL pathname.
Parameters
Section titled “Parameters”Context
Returns
Section titled “Returns”string
onStateChange()?
Section titled “onStateChange()?”
optionalonStateChange: (key,from,to) =>void|Promise<void>
Defined in: src/policies/resilience/circuit-breaker.ts:162
Callback invoked on every state transition.
Called via safeCall so errors are swallowed - a failing callback
never blocks traffic. Useful for metrics, logging, or alerting.
Parameters
Section titled “Parameters”string
The circuit key that transitioned.
The previous circuit state.
The new circuit state.
Returns
Section titled “Returns”void | Promise<void>
openStatusCode?
Section titled “openStatusCode?”
optionalopenStatusCode:number
Defined in: src/policies/resilience/circuit-breaker.ts:151
HTTP status code when the circuit is open. Default: 503.
resetTimeoutMs?
Section titled “resetTimeoutMs?”
optionalresetTimeoutMs:number
Defined in: src/policies/resilience/circuit-breaker.ts:141
Time in ms before transitioning from open → half-open. Default: 30000.
skip()?
Section titled “skip()?”
optionalskip: (c) =>boolean|Promise<boolean>
Defined in: src/policies/types.ts:90
Skip this policy when condition returns true
Parameters
Section titled “Parameters”unknown
Returns
Section titled “Returns”boolean | Promise<boolean>
Inherited from
Section titled “Inherited from”store?
Section titled “store?”
optionalstore:CircuitBreakerStore
Defined in: src/policies/resilience/circuit-breaker.ts:147
Storage backend. Default: InMemoryCircuitBreakerStore.