ruvnet/ruflo · error
[router] configured tools model not found; falling back to A
Error message
[router] configured tools model not found; falling back to Arch routing
What it means
Log warning in pickToolsCapableModel: LLM_ROUTER_TOOLS_MODEL is set but no loaded model matches it by id or name, so the configured tools model is discarded and routing falls back to Arch selection.
Source
Thrown at ruflo/src/ruvocal/src/lib/server/router/toolsRoute.ts:43
return Boolean(byConfig || byName);
} catch {
return false;
}
}
export function pickToolsCapableModel(
models: ProcessedModel[] | undefined
): ProcessedModel | undefined {
const preferredRaw = (config as unknown as Record<string, string>).LLM_ROUTER_TOOLS_MODEL;
const preferred = preferredRaw?.trim();
if (!preferred) {
logger.warn("[router] tools bypass requested but LLM_ROUTER_TOOLS_MODEL is not set");
return undefined;
}
if (!models?.length) return undefined;
const found = models.find((m) => m.id === preferred || m.name === preferred);
if (!found) {
logger.warn(
{ configuredModel: preferred },
"[router] configured tools model not found; falling back to Arch routing"
);
return undefined;
}
logger.info({ model: found.id ?? found.name }, "[router] using configured tools model");
return found;
}
View on GitHub (pinned to fa13ee4ad6)
Solutions
- Correct LLM_ROUTER_TOOLS_MODEL to match a model present in the models configuration, or remove the setting to use Arch routing.
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at ruflo/src/ruvocal/src/lib/server/router/toolsRoute.ts:43 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruvnet/ruflo@fa13ee4ad6 (2026-08-18).
Data as JSON: /api/errors/1bb8df6b9dbc6c80.
Report an issue: GitHub.