+17
-9
@@ -35,7 +35,7 @@ function providerModel(provider: string, id: string): ModelInfo {
|
||||
providerID: Provider.ID.make(provider),
|
||||
};
|
||||
}
|
||||
const allModels = ["gpt-6-luna", "gpt-6-sol", "gpt-6-astra"].map(reasoningModel);
|
||||
const allModels = ["gpt-6-luna", "gpt-6.1-sol", "gpt-6-astra"].map(reasoningModel);
|
||||
type CustomAssignment = {
|
||||
model: string;
|
||||
effort: "none" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max";
|
||||
@@ -387,12 +387,20 @@ async function host(
|
||||
|
||||
test("orchestration inherits deep-lo and falls back to good-lo with available worker sets", async () => {
|
||||
const full = await host();
|
||||
expect(full.agents.get("good-lo")?.model).toMatchObject({
|
||||
id: "gpt-6.1-sol",
|
||||
variant: "low",
|
||||
});
|
||||
expect(full.agents.get("good-hi")?.model).toMatchObject({
|
||||
id: "gpt-6.1-sol",
|
||||
variant: "high",
|
||||
});
|
||||
expect(full.agents.has("deep-hi")).toBe(true);
|
||||
expect(String(full.agents.get("coordinate")?.model?.id)).toBe("gpt-6-astra");
|
||||
expect(String(full.agents.get("coordinate")?.model?.variant)).toBe("low");
|
||||
const reduced = await host(allModels.slice(0, 2));
|
||||
expect(reduced.agents.has("deep-hi")).toBe(false);
|
||||
expect(String(reduced.agents.get("coordinate")?.model?.id)).toBe("gpt-6-sol");
|
||||
expect(String(reduced.agents.get("coordinate")?.model?.id)).toBe("gpt-6.1-sol");
|
||||
expect(String(reduced.agents.get("coordinate")?.model?.variant)).toBe("low");
|
||||
expect(reduced.agents.get("coordinate")?.system).toContain("Deep agents are unavailable");
|
||||
expect((await host([])).agents.has("coordinate")).toBe(false);
|
||||
@@ -445,7 +453,7 @@ test("custom deep assignments are optional and a partial deep tier falls back to
|
||||
for (const name of omitted) delete agents[name];
|
||||
const result = await host(allModels, { mode: "custom", agents });
|
||||
expect(result.agents.get("coordinate")?.model).toMatchObject({
|
||||
id: "gpt-6-sol",
|
||||
id: "gpt-6.1-sol",
|
||||
variant: "low",
|
||||
});
|
||||
expect(result.agents.get("coordinate")?.system).toContain("Deep agents are unavailable");
|
||||
@@ -492,13 +500,13 @@ test("custom assignments resolve duplicate model IDs by provider and refresh pro
|
||||
const base = [
|
||||
providerModel("alpha", "shared"),
|
||||
providerModel("beta", "shared"),
|
||||
providerModel("alpha", "gpt-6-sol"),
|
||||
providerModel("alpha", "gpt-6.1-sol"),
|
||||
providerModel("alpha", "gpt-6-astra"),
|
||||
];
|
||||
const result = await host(base, { mode: "custom", agents });
|
||||
expect(String(result.agents.get("fast-lo")?.model?.providerID)).toBe("beta");
|
||||
expect(String(result.agents.get("fast-hi")?.model?.providerID)).toBe("alpha");
|
||||
expect(String(result.agents.get("coordinate")?.model?.id)).toBe("gpt-6-sol");
|
||||
expect(String(result.agents.get("coordinate")?.model?.id)).toBe("gpt-6.1-sol");
|
||||
expect(result.agents.has("deep-lo")).toBe(false);
|
||||
|
||||
await result.refresh([...base, providerModel("beta", "deep")]);
|
||||
@@ -900,7 +908,7 @@ test("reasoning settings and Luna priority use native advertised or official sup
|
||||
};
|
||||
const openaiModels = [
|
||||
luna,
|
||||
providerModel("openai", "gpt-6-sol"),
|
||||
providerModel("openai", "gpt-6.1-sol"),
|
||||
providerModel("openai", "gpt-6-astra"),
|
||||
];
|
||||
const ordinary = await host([providerModel("openai", "gpt-6-luna"), ...openaiModels.slice(1)], {
|
||||
@@ -959,7 +967,7 @@ test("coordinator uses inherited effort and ignores the legacy custom assignment
|
||||
|
||||
const fallback = await host(allModels.slice(0, 2));
|
||||
expect(fallback.agents.get("coordinate")?.model).toMatchObject({
|
||||
id: "gpt-6-sol",
|
||||
id: "gpt-6.1-sol",
|
||||
variant: "low",
|
||||
});
|
||||
expect(fallback.agents.get("coordinate")?.request.settings.reasoningEffort).toBeUndefined();
|
||||
@@ -980,7 +988,7 @@ test("coordinator uses inherited effort and ignores the legacy custom assignment
|
||||
|
||||
test("the current host model API filters discovery and reloads changed availability", async () => {
|
||||
const disabled = { ...reasoningModel("gpt-6-luna"), enabled: false };
|
||||
const other = { ...reasoningModel("gpt-6-sol"), providerID: Provider.ID.make("other") };
|
||||
const other = { ...reasoningModel("gpt-6.1-sol"), providerID: Provider.ID.make("other") };
|
||||
expect((await host([disabled, other, ...allModels.slice(1)])).agents.has("coordinate")).toBe(
|
||||
false,
|
||||
);
|
||||
@@ -991,7 +999,7 @@ test("the current host model API filters discovery and reloads changed availabil
|
||||
expect(result.agents.get("coordinate")?.request.settings.reasoningEffort).toBeUndefined();
|
||||
await result.refresh(allModels.slice(0, 2));
|
||||
expect(result.agents.has("deep-lo")).toBe(false);
|
||||
expect(String(result.agents.get("coordinate")?.model?.id)).toBe("gpt-6-sol");
|
||||
expect(String(result.agents.get("coordinate")?.model?.id)).toBe("gpt-6.1-sol");
|
||||
expect(String(result.agents.get("coordinate")?.model?.variant)).toBe("low");
|
||||
expect(result.agents.get("coordinate")?.request.settings.reasoningEffort).toBeUndefined();
|
||||
await result.refresh([]);
|
||||
|
||||
Reference in New Issue
Block a user