diegosouzapw/OmniRoute · error · CircuitBreakerOpenError

Circuit breaker "${this.name}" is HALF_OPEN, no more probe r

Error message

Circuit breaker "${this.name}" is HALF_OPEN, no more probe requests allowed.

What it means

Error "Circuit breaker "${this.name}" is HALF_OPEN, no more probe requests allowed." thrown in diegosouzapw/OmniRoute.

Source

Thrown at src/shared/utils/circuitBreaker.ts:278

    return Math.min(
      this.resetTimeout * escalationFactor,
      this.resetTimeout * this.maxBackoffMultiplier
    );
  }

  async execute<T>(fn: () => Promise<T>): Promise<T> {
    this._refreshOpenState();

    if (this.state === STATE.OPEN) {
      throw new CircuitBreakerOpenError(
        `Circuit breaker "${this.name}" is OPEN. Try again later.`,
        this.name,
        this._timeUntilReset()
      );
    }

    if (this.state === STATE.HALF_OPEN && this.halfOpenAllowed <= 0) {
      throw new CircuitBreakerOpenError(
        `Circuit breaker "${this.name}" is HALF_OPEN, no more probe requests allowed.`,
        this.name,
        this._timeUntilReset()
      );
    }

    if (this.state === STATE.HALF_OPEN) {
      this.halfOpenAllowed--;
    }

    try {
      const result = await fn();
      this._onSuccess();
      return result;
    } catch (error) {
      if (this.isFailure(error)) {
        let kind: FailureKind | undefined;
        if (this.classifyError) {

View on GitHub (pinned to a179ffed5b)

When it happens

Trigger: Thrown at src/shared/utils/circuitBreaker.ts:278 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of diegosouzapw/OmniRoute@a179ffed5b (2026-08-25). Data as JSON: /api/errors/cb27553ed3cfcaef. Report an issue: GitHub.