Module: I18nContextGenerator::LLM::RequestPolicy

Included in:
Client
Defined in:
lib/i18n_context_generator/llm/request_policy.rb

Overview

Shared retry and HTTP error handling for remote LLM providers.

Defined Under Namespace

Classes: RequestOutcome

Constant Summary collapse

MAX_RETRIES =
2
MAX_RETRY_DELAY =
30.0
RETRYABLE_STATUS_CODES =
[408, 409, 425, 429, 500, 502, 503, 504, 529].freeze
TRANSIENT_NETWORK_ERRORS =
[
  Net::OpenTimeout,
  Net::ReadTimeout,
  Timeout::Error,
  EOFError,
  SocketError,
  Errno::ECONNABORTED,
  Errno::ECONNREFUSED,
  Errno::ECONNRESET,
  Errno::EHOSTUNREACH,
  Errno::ENETUNREACH,
  Errno::ETIMEDOUT,
  OpenSSL::SSL::SSLError
].freeze