feat: refine mobile master agent sync and chat rendering

This commit is contained in:
kris
2026-04-18 04:51:50 +08:00
parent e0c0ea1814
commit 449f84fcbc
61 changed files with 7051 additions and 1075 deletions

View File

@@ -131,6 +131,28 @@ test("master-agent 会话可保存并读取模型与推理强度覆盖", async (
assert.equal(detail?.agentControls?.reasoningEffortOverride, "high");
});
test("master-agent 会话可保存并读取快速反应与深度思考模型映射", async () => {
await setup();
await updateProjectAgentControls("master-agent", {
fastModelOverride: "gpt-4.1",
deepModelOverride: "gpt-5.1",
});
const controls = await getProjectAgentControls("master-agent");
assert.equal(controls?.fastModelOverride, "gpt-4.1");
assert.equal(controls?.deepModelOverride, "gpt-5.1");
const state = await readState();
const project = state.projects.find((item) => item.id === "master-agent");
assert.equal(project?.agentControls?.fastModelOverride, "gpt-4.1");
assert.equal(project?.agentControls?.deepModelOverride, "gpt-5.1");
const detail = getProjectDetailView(state, "master-agent");
assert.equal(detail?.agentControls?.fastModelOverride, "gpt-4.1");
assert.equal(detail?.agentControls?.deepModelOverride, "gpt-5.1");
});
test("master-agent 对话控制路由可读写并回显到项目详情", async () => {
await setup();
const tempDir = await mkdtemp(path.join(os.tmpdir(), "boss-claw-agent-controls-"));
@@ -167,6 +189,8 @@ test("master-agent 对话控制路由可读写并回显到项目详情", async (
body: JSON.stringify({
modelOverride: "gpt-5.4",
reasoningEffortOverride: "medium",
fastModelOverride: "gpt-4.1",
deepModelOverride: "gpt-5.1",
backendOverride: "claw-runtime",
}),
}),
@@ -179,6 +203,8 @@ test("master-agent 对话控制路由可读写并回显到项目详情", async (
controls: {
modelOverride?: string;
reasoningEffortOverride?: string;
fastModelOverride?: string;
deepModelOverride?: string;
backendOverride?: string;
updatedAt: string;
} | null;
@@ -186,6 +212,8 @@ test("master-agent 对话控制路由可读写并回显到项目详情", async (
assert.equal(postPayload.ok, true);
assert.equal(postPayload.controls?.modelOverride, "gpt-5.4");
assert.equal(postPayload.controls?.reasoningEffortOverride, "medium");
assert.equal(postPayload.controls?.fastModelOverride, "gpt-4.1");
assert.equal(postPayload.controls?.deepModelOverride, "gpt-5.1");
assert.equal(postPayload.controls?.backendOverride, "claw-runtime");
const getResponse = await getAgentControlsRoute(
@@ -202,6 +230,8 @@ test("master-agent 对话控制路由可读写并回显到项目详情", async (
controls: {
modelOverride?: string;
reasoningEffortOverride?: string;
fastModelOverride?: string;
deepModelOverride?: string;
backendOverride?: string;
updatedAt: string;
} | null;
@@ -209,6 +239,8 @@ test("master-agent 对话控制路由可读写并回显到项目详情", async (
assert.equal(getPayload.ok, true);
assert.equal(getPayload.controls?.modelOverride, "gpt-5.4");
assert.equal(getPayload.controls?.reasoningEffortOverride, "medium");
assert.equal(getPayload.controls?.fastModelOverride, "gpt-4.1");
assert.equal(getPayload.controls?.deepModelOverride, "gpt-5.1");
assert.equal(getPayload.controls?.backendOverride, "claw-runtime");
const projectResponse = await getProjectRoute(
@@ -225,6 +257,8 @@ test("master-agent 对话控制路由可读写并回显到项目详情", async (
agentControls: {
modelOverride?: string;
reasoningEffortOverride?: string;
fastModelOverride?: string;
deepModelOverride?: string;
backendOverride?: string;
updatedAt: string;
} | null;
@@ -232,6 +266,8 @@ test("master-agent 对话控制路由可读写并回显到项目详情", async (
assert.equal(projectPayload.ok, true);
assert.equal(projectPayload.agentControls?.modelOverride, "gpt-5.4");
assert.equal(projectPayload.agentControls?.reasoningEffortOverride, "medium");
assert.equal(projectPayload.agentControls?.fastModelOverride, "gpt-4.1");
assert.equal(projectPayload.agentControls?.deepModelOverride, "gpt-5.1");
assert.equal(projectPayload.agentControls?.backendOverride, "claw-runtime");
} finally {
if (previousEnv.BOSS_CLAW_ENABLED === undefined) delete process.env.BOSS_CLAW_ENABLED;