taskchef 7.14.1 → 7.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/mcp.js CHANGED
@@ -22,7 +22,7 @@ const projectSchema = z.object({
22
22
 
23
23
  const taskSchema = z.object({
24
24
  schemaVersion: z.union([
25
- z.literal(4), z.literal(5), z.literal(6), z.literal(7), z.literal(8),
25
+ z.literal(4), z.literal(5), z.literal(6), z.literal(7), z.literal(8), z.literal(9),
26
26
  ]),
27
27
  id: z.string(),
28
28
  project: projectSchema,
@@ -32,10 +32,12 @@ const taskSchema = z.object({
32
32
  createdAt: z.string(),
33
33
  status: z.enum(["working", "needs_input", "completed", "failed"]),
34
34
  summary: z.string().nullable(),
35
+ turnRef: z.string().nullable(),
35
36
  turnId: z.string().nullable(),
36
37
  updatedAt: z.string(),
37
38
  updatedBy: z.enum(["dispatcher", "mcp"]),
38
39
  turns: z.array(z.object({
40
+ turnRef: z.string().nullable(),
39
41
  turnId: z.string().nullable(),
40
42
  requestSummary: z.string().nullable(),
41
43
  startedAt: z.string(),
@@ -46,6 +48,7 @@ const taskSchema = z.object({
46
48
  }).nullable(),
47
49
  })),
48
50
  latestTurn: z.object({
51
+ turnRef: z.string().nullable(),
49
52
  turnId: z.string().nullable(),
50
53
  requestSummary: z.string().nullable(),
51
54
  startedAt: z.string(),
@@ -58,12 +61,14 @@ const taskSchema = z.object({
58
61
  results: z.array(z.object({
59
62
  status: z.enum(["needs_input", "completed", "failed"]),
60
63
  summary: z.string(),
64
+ turnRef: z.string().nullable(),
61
65
  turnId: z.string().nullable(),
62
66
  updatedAt: z.string(),
63
67
  })),
64
68
  lastResult: z.object({
65
69
  status: z.enum(["needs_input", "completed", "failed"]),
66
70
  summary: z.string(),
71
+ turnRef: z.string().nullable(),
67
72
  turnId: z.string().nullable(),
68
73
  updatedAt: z.string(),
69
74
  }).nullable(),
@@ -225,10 +230,11 @@ export function createTaskChefMcpServer({
225
230
  {
226
231
  title: "Report TaskChef state",
227
232
  description:
228
- "Report this self-linked executor turn's lifecycle state. Use working before substantive work in a newly linked or follow-up turn, with summary omitted or null and a concise requestSummary. Preserve known repository context and delivered issues or pull requests as canonical GitHub URLs, including both child-repository and workspace pull requests when applicable. Before ending the same turn, report needs_input, completed, or failed with a concise semantic summary and requestSummary omitted. Exact retries are idempotent; stale or mismatched turns are rejected.",
233
+ "Report this self-linked executor turn's lifecycle state. Use one stable turnRef for working and its terminal report; pass the native Codex turn ID as both turnRef and turnId when available, otherwise pass a client-generated UUID turnRef and null turnId. Preserve known repository context and delivered links. Exact retries are idempotent; stale or mismatched turnRefs are rejected.",
229
234
  inputSchema: {
230
235
  taskId: z.string().min(1),
231
236
  threadId: z.string().min(1).nullable(),
237
+ turnRef: z.string().min(1).max(256).nullable().optional(),
232
238
  turnId: z.string().min(1).max(256).nullable(),
233
239
  status: z.enum(["working", "needs_input", "completed", "failed"]),
234
240
  summary: z.string().min(1).max(2_000).nullable().optional(),
@@ -256,6 +262,7 @@ export function createTaskChefMcpServer({
256
262
  inputSchema: {
257
263
  taskId: z.string().min(1),
258
264
  threadId: z.string().min(1).nullable(),
265
+ turnRef: z.string().min(1).max(256).nullable().optional(),
259
266
  turnId: z.string().min(1).max(256).nullable(),
260
267
  status: z.enum(["needs_input", "completed", "failed"]),
261
268
  summary: z.string().min(1).max(2_000),