Skip to content

fix: handle HTTP-date in Retry-After header during 429 retries - #387

Open
Yugenjr wants to merge 1 commit into
interviewstreet:mainfrom
Yugenjr:fix/rate-limit-retry-after-parsing
Open

fix: handle HTTP-date in Retry-After header during 429 retries#387
Yugenjr wants to merge 1 commit into
interviewstreet:mainfrom
Yugenjr:fix/rate-limit-retry-after-parsing

Conversation

@Yugenjr

@Yugenjr Yugenjr commented Aug 2, 2026

Copy link
Copy Markdown

fixes #386

This PR wraps the conversion to float in a try...except ValueError block. If parsing the header fails (due to it being a date string), the provider falls back safely to the pre-calculated exponential backoff delay instead of crashing.

Files Involved
hiring-agent/models.py
(inside OpenAICompatibleProvider.chat)

Changes Made :

        if response.status_code == 429 and attempt < MAX_RETRIES - 1:
            retry_after = response.headers.get("Retry-After")
            exp_delay = min(BASE_DELAY * (2 ** attempt), MAX_DELAY)
            try:
                delay = float(retry_after) if retry_after else exp_delay
            except ValueError:
                delay = exp_delay

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

fix: handle HTTP-date in Retry-After header during 429 retries

1 participant