feat: close AgentRun commander task plane gaps

This commit is contained in:
Codex
2026-06-09 00:06:53 +08:00
parent 96c8283574
commit 2f5cf8b3d4
15 changed files with 411 additions and 23 deletions
+8 -2
View File
@@ -19,6 +19,7 @@ const selfTest: SelfTestCase = async (context) => {
backendProfile: "codex",
providerId: "G14",
workspaceRef: { kind: "host-path", path: context.workspace },
sessionRef: { sessionId: "sess_queue_q1_selftest", metadata: { source: "queue-q1-self-test" } },
executionPolicy: null,
resourceBundleRef: null,
payload: { prompt: "hello" },
@@ -28,10 +29,15 @@ const selfTest: SelfTestCase = async (context) => {
};
const created = await client.post("/api/v1/queue/tasks", input) as QueueTaskRecord;
assert.equal(created.state, "pending");
assert.equal(created.sessionPath, null);
assert.equal(created.sessionRef?.sessionId, "sess_queue_q1_selftest");
assert.equal(created.sessionPath, "/api/v1/sessions/sess_queue_q1_selftest");
assert.equal(created.latestAttempt, null);
const duplicate = await client.post("/api/v1/queue/tasks", input) as QueueTaskRecord;
assert.equal(duplicate.id, created.id);
await assert.rejects(
() => client.post("/api/v1/queue/tasks", { ...input, sessionRef: { sessionId: "sess_queue_q1_other" } }),
(error) => error instanceof Error && error.message.includes("idempotency key reused"),
);
const listed = await client.get("/api/v1/queue/tasks?queue=dev&limit=10") as QueueTaskListResult;
assert.equal(listed.count, 1);
@@ -39,7 +45,7 @@ const selfTest: SelfTestCase = async (context) => {
const shown = await client.get(`/api/v1/queue/tasks/${created.id}`) as QueueTaskRecord;
assert.equal(shown.title, "Q1 queue task");
assert.equal(shown.sessionPath, null);
assert.equal(shown.sessionPath, "/api/v1/sessions/sess_queue_q1_selftest");
const stats = await client.get("/api/v1/queue/stats?queue=dev") as QueueStats;
assert.equal(stats.total, 1);