import { Agent } from "@agentium/core";
import { custom, EvalSuite } from "@agentium/eval";
export async function evaluateRouting(agent: Agent) {
const result = await new EvalSuite({
name: "ticket-routing",
agent,
concurrency: 1,
timeoutMs: 10_000,
cases: [
{ name: "invoice", input: "Reply with only billing for an invoice question.", expected: "billing" },
{ name: "delivery", input: "Reply with only shipping for a delivery question.", expected: "shipping" },
],
scorers: [custom("correct-route", (_input, output, expected) => {
const actual = output.text.trim().toLowerCase();
const pass = typeof expected === "string" && actual === expected;
return { score: pass ? 1 : 0, pass, reason: `Expected ${expected}; received ${actual}` };
})],
}).run();
return { passed: result.passed, failed: result.failed, cases: result.results };
}