feat: queue master-agent chat replies

This commit is contained in:
kris
2026-03-31 19:59:08 +08:00
parent e741952295
commit 013d9566be
8 changed files with 930 additions and 17 deletions

View File

@@ -103,15 +103,26 @@ export async function POST(
accountId?: string;
requestId?: string;
taskId?: string;
masterReplyState?: "queued" | "running" | "completed";
task?: {
taskId: string;
taskType: "conversation_reply";
status: "queued" | "running" | "completed";
};
}
| undefined;
let task:
| {
taskId: string;
taskType: "conversation_reply";
status: "queued" | "completed";
status: "queued" | "running" | "completed";
}
| null = null;
let masterReplyState:
| "queued"
| "running"
| "completed"
| null = null;
if (shouldCreateDispatchPlan) {
try {
@@ -173,13 +184,13 @@ export async function POST(
requestedBy: session.displayName,
requestedByAccount: session.account,
currentSessionExpiresAt: session.expiresAt,
mode: "enqueue",
});
if (masterReply?.ok && masterReply.taskId) {
task = {
taskId: masterReply.taskId,
taskType: "conversation_reply",
status: masterReply.requestId ? "completed" : "queued",
};
task = masterReply.task ?? null;
masterReplyState = masterReply.masterReplyState ?? null;
} else {
masterReplyState = null;
}
}
@@ -192,6 +203,7 @@ export async function POST(
message,
masterReply,
task,
masterReplyState,
dispatchPlan,
dispatchRecommendation,
collaborationGate,