ruvnet/ruflo · error

arch router selection failed

Error message

arch router selection failed

What it means

Structured log emitted when arch route selection as a whole fails (HTTP error, unparsable model output, or unknown route name); the function returns the arch_router_failure marker route instead of a chosen route, letting callers fall back.

Source

Thrown at ruflo/src/ruvocal/src/lib/server/router/arch.ts:220

				routeName: "arch_router_failure",
				error: {
					message: errorMessage,
					statusCode: resp.status,
				},
			};
		}
		const data: { choices: { message: { content: string } }[] } = await resp.json();
		const text = (data?.choices?.[0]?.message?.content ?? "").toString().trim();
		const raw = parseRouteName(text);

		const other = config.LLM_ROUTER_OTHER_ROUTE || "casual_conversation";
		const chosen = raw === "other" ? other : raw || "casual_conversation";
		const exists = routes.some((r) => r.name === chosen);
		return { routeName: exists ? chosen : "casual_conversation" };
	} catch (e) {
		clearTimeout(to);
		const err = e as Error;
		logger.warn({ err: String(e), traceId }, "arch router selection failed");

		// Return error with context but no status code (network/timeout errors)
		return {
			routeName: "arch_router_failure",
			error: {
				message: err.message || String(e),
			},
		};
	}
}

View on GitHub (pinned to fa13ee4ad6)

Solutions

  1. Check the router's upstream model catalog is reachable and loaded; retry after the model list loads successfully.
  2. Inspect router logs for the underlying selection error and fix the failing candidate/endpoint.
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at ruflo/src/ruvocal/src/lib/server/router/arch.ts:220 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/f9169c3ecd9e9334. Report an issue: GitHub.