Repository navigation
Check active bots' pinned OpenRouter hosts every 6 hours - #381
Open
CodexVeritas wants to merge 1 commit into
Open
CodexVeritas wants to merge 1 commit into
CodexVeritas wants to merge 1 commit into
Conversation
Adds a scheduled workflow that runs the live pin test, so a host dropping a model (or OpenRouter delisting it) fails a run within hours. A 429 from the pinned host now skips that pin instead of failing, since the host is still routed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Open-weight AIB bots are pinned to a single OpenRouter host with fallbacks disabled, so when a host stops serving a model (or OpenRouter delists it) every call from that bot 404s. The live pin test catches this, but it only ran by hand. This PR runs it on a schedule so an outage fails a workflow run within hours.
check-openrouter-pins.yamlrunscode_tests/integration_tests/test_run_bots_live.pyevery 6 hours (27 */6 * * *) and onworkflow_dispatch. It uses the existing repo-levelOPENROUTER_API_KEYsecret, the same one the bot jobs use.-rfEs).--tb=short. Long tracebacks print each frame's arguments, which include the request'sAuthorizationheader. GitHub masks the secret, but this keeps it out of the logs in the first place.What fails a run
Any non-429 error on the one-word test call to a pinned LLM of an active bot:
No endpoints found ... Filter by Fallback removed <host><model> is no longer available on OpenRouterRuntimeErrorfrom the pinned-provider checkA failed scheduled run sends GitHub's standard failed-workflow email to the user who last changed the workflow's
cronline, provided their notification settings include failed Actions runs.What it does not catch
Cost
Measured at $0.0049 per run across 24 working pins. Calls that 404 cost nothing. At 4 runs a day that is about $0.60/month on the bots' OpenRouter key.
Verification
.env, only an OpenRouter key set, as in CI): 24 passed and 3 failed. The 3 failures are pins that are broken onmainright now:thinkingmachines/inkling@deepinfra/fp8(host dropped the model) anddeepseek/deepseek-r1/deepseek/deepseek-r1:online(delisted). Deprecate DeepSeek R1 bots and re-pin Inkling to together #379 fixes all three, so this check will fail on every run until Deprecate DeepSeek R1 bots and re-pin Inkling to together #379 merges.litellm.RateLimitErrormakes the test skip.workflow_dispatchcan't run before merge: GitHub only dispatches workflows that exist on the default branch, so the first CI run has to happen after merge.🤖 Generated with Claude Code