feat: prepend openrouter model fallbacks#3709
Conversation
… qwen3.6-flash, etc.)
|
Thank you for your contribution! Before we can merge this PR, we need you to sign our Contributor License Agreement (CLA). To sign the CLA, please comment on this PR with: This is a one-time requirement. Once signed, all your future contributions will be automatically accepted. I have read the CLA Document and I hereby sign the CLA Sisyphus seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. |
There was a problem hiding this comment.
1 issue found across 1 file
Confidence score: 3/5
- There is a concrete medium-severity risk in
src/shared/model-requirements.ts: duplicate requirement keys can silently overwrite earlierfallbackChainentries, which can change effective model selection order at runtime. - Because this behavior is deterministic but non-obvious, it increases regression risk for users relying on earlier fallback configuration; this is why the score is a 3 rather than a safer 4-5.
- Pay close attention to
src/shared/model-requirements.ts- duplicate keys can mask dead config and alter fallback precedence.
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="src/shared/model-requirements.ts">
<violation number="1" location="src/shared/model-requirements.ts:123">
P2: Duplicate requirement keys silently overwrite earlier fallbackChain blocks, leaving dead config and making the effective model selection order depend on the last duplicate.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
| @@ -20,6 +20,7 @@ export type ModelRequirement = { | |||
| export const AGENT_MODEL_REQUIREMENTS: Record<string, ModelRequirement> = { | |||
There was a problem hiding this comment.
P2: Duplicate requirement keys silently overwrite earlier fallbackChain blocks, leaving dead config and making the effective model selection order depend on the last duplicate.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At src/shared/model-requirements.ts, line 123:
<comment>Duplicate requirement keys silently overwrite earlier fallbackChain blocks, leaving dead config and making the effective model selection order depend on the last duplicate.</comment>
<file context>
@@ -74,9 +96,33 @@ export const AGENT_MODEL_REQUIREMENTS: Record<string, ModelRequirement> = {
+ { providers: ["openai", "opencode", "vercel"], model: "gpt-5.4-nano" },
+ ],
+ },
+ explore: {
+ fallbackChain: [
+ { providers: ["openrouter"], model: "qwen/qwen3.6-flash" },
</file context>
|
Hi @THVrYXNE, thanks for your contribution! This PR is being closed because the CLA check has been failing and the PR has been inactive for 7+ days. The CLA is a requirement for all contributions to this project. To resolve this:
If you believe this was closed in error, feel free to comment and we'll take another look. Thanks again for your time and contribution! |
Summary
openrouterprovider as first fallback for all agents and categories insrc/shared/model-requirements.tsreasoningEffortsupport toFallbackEntrytypeModel Mapping
Need help on this PR? Tag
@codesmithwith what you need.Summary by cubic
Prepended
openroutermodels as the first fallback across all agents and categories for faster, more flexible routing. AddedreasoningEffortsupport and kept existing fallbacks as secondary options.openroutermodels per role (examples): sisyphus/prometheus/metis → deepseek/deepseek-v4-pro; librarian/explore → qwen/qwen3.6-flash; oracle → moonshotai/kimi-k2.6; visual-engineering/writing → ~google/gemini-pro-latest; ultrabrain → openai/gpt-5.5 (xhigh).reasoningEffortto fallback entries; applied xhigh for momus and ultrabrain.Written for commit ffd3e9e. Summary will update on new commits. Review in cubic