Integrate master agent runtime orchestration updates
This commit is contained in:
@@ -9,6 +9,8 @@ let runtimeRoot = "";
|
||||
let POST: (typeof import("../src/app/api/v1/projects/[projectId]/messages/route"))["POST"];
|
||||
let createAuthSession: (typeof import("../src/lib/boss-data"))["createAuthSession"];
|
||||
let createIndependentGroupChat: (typeof import("../src/lib/boss-data"))["createIndependentGroupChat"];
|
||||
let saveAiAccount: (typeof import("../src/lib/boss-data"))["saveAiAccount"];
|
||||
let updateProjectAgentControls: (typeof import("../src/lib/boss-data"))["updateProjectAgentControls"];
|
||||
let readState: (typeof import("../src/lib/boss-data"))["readState"];
|
||||
let writeState: (typeof import("../src/lib/boss-data"))["writeState"];
|
||||
let AUTH_SESSION_COOKIE: string;
|
||||
@@ -32,6 +34,8 @@ async function setup() {
|
||||
POST = routePost;
|
||||
createAuthSession = data.createAuthSession;
|
||||
createIndependentGroupChat = data.createIndependentGroupChat;
|
||||
saveAiAccount = data.saveAiAccount;
|
||||
updateProjectAgentControls = data.updateProjectAgentControls;
|
||||
readState = data.readState;
|
||||
writeState = data.writeState;
|
||||
baseState = structuredClone(await readState());
|
||||
@@ -151,6 +155,25 @@ async function ensureTwoSingleThreadProjects() {
|
||||
|
||||
test("POST /api/v1/projects/[projectId]/messages returns a dispatch plan for group text messages", async () => {
|
||||
await setup();
|
||||
await saveAiAccount({
|
||||
accountId: "master-codex-smart-policy",
|
||||
label: "主 GPT",
|
||||
role: "primary",
|
||||
provider: "master_codex_node",
|
||||
displayName: "Mac 上的 Master Codex Node",
|
||||
nodeId: "local-codex-node",
|
||||
nodeLabel: "本机 Codex",
|
||||
model: "gpt-5.4-mini",
|
||||
enabled: true,
|
||||
setActive: true,
|
||||
loginStatusNote: "用于深度任务模型策略测试。",
|
||||
});
|
||||
await updateProjectAgentControls("master-agent", {
|
||||
fastModelOverride: "gpt-5.4-mini",
|
||||
fastReasoningEffortOverride: "low",
|
||||
smartModelOverride: "gpt-5.4",
|
||||
smartReasoningEffortOverride: "high",
|
||||
});
|
||||
const memberProjects = await ensureTwoSingleThreadProjects();
|
||||
assert.ok(memberProjects.length >= 2, "expected seeded single-thread projects");
|
||||
|
||||
@@ -199,6 +222,8 @@ test("POST /api/v1/projects/[projectId]/messages returns a dispatch plan for gro
|
||||
1,
|
||||
"expected group messages to enqueue a master-agent dispatch recommendation task",
|
||||
);
|
||||
assert.equal(queuedGroupDispatchTasks[0]?.executionModel, "gpt-5.4");
|
||||
assert.equal(queuedGroupDispatchTasks[0]?.executionReasoningEffort, "high");
|
||||
});
|
||||
|
||||
test("POST /api/v1/projects/[projectId]/messages keeps dispatchPlan null for single-thread projects", async () => {
|
||||
|
||||
Reference in New Issue
Block a user