@mclawnet/mcp-server 0.1.6 → 0.1.8
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/dist/inbox-touch-relay.d.ts +23 -0
- package/dist/inbox-touch-relay.d.ts.map +1 -0
- package/dist/inbox-touch-relay.js +41 -0
- package/dist/inbox-touch-relay.js.map +1 -0
- package/dist/log-setup.d.ts +2 -0
- package/dist/log-setup.d.ts.map +1 -0
- package/dist/log-setup.js +8 -0
- package/dist/log-setup.js.map +1 -0
- package/dist/server.d.ts +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +113 -0
- package/dist/server.js.map +1 -1
- package/dist/tools/inbox.d.ts +165 -2
- package/dist/tools/inbox.d.ts.map +1 -1
- package/dist/tools/inbox.js +246 -1
- package/dist/tools/inbox.js.map +1 -1
- package/dist/tools/index.d.ts +180 -45
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/task.d.ts +27 -0
- package/dist/tools/task.d.ts.map +1 -1
- package/dist/tools/task.js +299 -11
- package/dist/tools/task.js.map +1 -1
- package/package.json +10 -6
package/dist/tools/task.d.ts
CHANGED
|
@@ -56,6 +56,10 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
56
56
|
};
|
|
57
57
|
description: string;
|
|
58
58
|
};
|
|
59
|
+
planTaskId: {
|
|
60
|
+
type: string;
|
|
61
|
+
description: string;
|
|
62
|
+
};
|
|
59
63
|
sourceMessageId?: undefined;
|
|
60
64
|
sourceInstanceId?: undefined;
|
|
61
65
|
taskId?: undefined;
|
|
@@ -113,6 +117,10 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
113
117
|
};
|
|
114
118
|
description: string;
|
|
115
119
|
};
|
|
120
|
+
planTaskId: {
|
|
121
|
+
type: string;
|
|
122
|
+
description: string;
|
|
123
|
+
};
|
|
116
124
|
sourceMessageId: {
|
|
117
125
|
type: string;
|
|
118
126
|
description: string;
|
|
@@ -156,6 +164,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
156
164
|
owner?: undefined;
|
|
157
165
|
from?: undefined;
|
|
158
166
|
blockedBy?: undefined;
|
|
167
|
+
planTaskId?: undefined;
|
|
159
168
|
sourceMessageId?: undefined;
|
|
160
169
|
sourceInstanceId?: undefined;
|
|
161
170
|
status?: undefined;
|
|
@@ -199,6 +208,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
199
208
|
description?: undefined;
|
|
200
209
|
from?: undefined;
|
|
201
210
|
blockedBy?: undefined;
|
|
211
|
+
planTaskId?: undefined;
|
|
202
212
|
sourceMessageId?: undefined;
|
|
203
213
|
sourceInstanceId?: undefined;
|
|
204
214
|
taskId?: undefined;
|
|
@@ -240,6 +250,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
240
250
|
owner?: undefined;
|
|
241
251
|
from?: undefined;
|
|
242
252
|
blockedBy?: undefined;
|
|
253
|
+
planTaskId?: undefined;
|
|
243
254
|
sourceMessageId?: undefined;
|
|
244
255
|
sourceInstanceId?: undefined;
|
|
245
256
|
author?: undefined;
|
|
@@ -281,6 +292,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
281
292
|
description?: undefined;
|
|
282
293
|
swarmId?: undefined;
|
|
283
294
|
blockedBy?: undefined;
|
|
295
|
+
planTaskId?: undefined;
|
|
284
296
|
sourceMessageId?: undefined;
|
|
285
297
|
sourceInstanceId?: undefined;
|
|
286
298
|
status?: undefined;
|
|
@@ -333,6 +345,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
333
345
|
owner?: undefined;
|
|
334
346
|
from?: undefined;
|
|
335
347
|
blockedBy?: undefined;
|
|
348
|
+
planTaskId?: undefined;
|
|
336
349
|
sourceMessageId?: undefined;
|
|
337
350
|
sourceInstanceId?: undefined;
|
|
338
351
|
status?: undefined;
|
|
@@ -369,6 +382,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
369
382
|
owner?: undefined;
|
|
370
383
|
from?: undefined;
|
|
371
384
|
blockedBy?: undefined;
|
|
385
|
+
planTaskId?: undefined;
|
|
372
386
|
sourceMessageId?: undefined;
|
|
373
387
|
sourceInstanceId?: undefined;
|
|
374
388
|
taskId?: undefined;
|
|
@@ -413,6 +427,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
413
427
|
owner?: undefined;
|
|
414
428
|
from?: undefined;
|
|
415
429
|
blockedBy?: undefined;
|
|
430
|
+
planTaskId?: undefined;
|
|
416
431
|
sourceMessageId?: undefined;
|
|
417
432
|
sourceInstanceId?: undefined;
|
|
418
433
|
taskId?: undefined;
|
|
@@ -453,6 +468,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
453
468
|
owner?: undefined;
|
|
454
469
|
from?: undefined;
|
|
455
470
|
blockedBy?: undefined;
|
|
471
|
+
planTaskId?: undefined;
|
|
456
472
|
sourceMessageId?: undefined;
|
|
457
473
|
sourceInstanceId?: undefined;
|
|
458
474
|
taskId?: undefined;
|
|
@@ -502,6 +518,7 @@ export declare function getTaskToolDefinitions(): ({
|
|
|
502
518
|
owner?: undefined;
|
|
503
519
|
from?: undefined;
|
|
504
520
|
blockedBy?: undefined;
|
|
521
|
+
planTaskId?: undefined;
|
|
505
522
|
sourceMessageId?: undefined;
|
|
506
523
|
sourceInstanceId?: undefined;
|
|
507
524
|
taskId?: undefined;
|
|
@@ -523,4 +540,14 @@ export declare function handleTaskToolCall(name: string, args: Record<string, un
|
|
|
523
540
|
}>;
|
|
524
541
|
isError?: boolean;
|
|
525
542
|
}>;
|
|
543
|
+
/**
|
|
544
|
+
* Infer a plan task id from a task subject prefix. Matches patterns like
|
|
545
|
+
* `t1: ...`, `t2.5 - ...`, `[t1] ...`, `[t2.5]: ...`. Returns lowercased
|
|
546
|
+
* id (e.g. `t1`, `t2.5`) on hit, undefined otherwise.
|
|
547
|
+
*
|
|
548
|
+
* Deliberately conservative — requires the t-prefix to be followed by `:`,
|
|
549
|
+
* whitespace, or be inside `[...]`. This avoids misclassifying titles like
|
|
550
|
+
* "Test123 do thing" or "t9999_some_label" as plan ids.
|
|
551
|
+
*/
|
|
552
|
+
export declare function inferPlanTaskIdFromSubject(subject: string): string | undefined;
|
|
526
553
|
//# sourceMappingURL=task.d.ts.map
|
package/dist/tools/task.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/tools/task.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/tools/task.ts"],"names":[],"mappings":"AAqBA,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpE;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,KAAK,CAAC,EAAE,oBAAoB,CAAC;CAC9B;AAED,eAAO,MAAM,eAAe,aAa1B,CAAC;AAeH,wBAAgB,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAoOrC;AAED,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA0ChF;AAucD;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAM9E"}
|
package/dist/tools/task.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { existsSync, readFileSync } from "node:fs";
|
|
1
|
+
import { existsSync, readFileSync, promises as fsp } from "node:fs";
|
|
2
2
|
import { join } from "node:path";
|
|
3
|
-
import { randomUUID } from "node:crypto";
|
|
3
|
+
import { randomUUID, randomBytes } from "node:crypto";
|
|
4
4
|
import { createLogger } from "@mclawnet/logger";
|
|
5
5
|
import { TaskStore, classifyBlockers, computeLeadBriefing, computeMemberBriefing, computeTaskBriefing, formatLeadBriefing, formatMemberBriefing, formatTaskBriefing, projectRoot, } from "@mclawnet/task";
|
|
6
|
-
import { InboxStore } from "@mclawnet/swarm";
|
|
6
|
+
import { InboxStore, pickStrongestStatus } from "@mclawnet/swarm";
|
|
7
7
|
const log = createLogger({ module: "mcp-server/tools/task" });
|
|
8
8
|
export const TASK_TOOL_NAMES = new Set([
|
|
9
9
|
"task_create",
|
|
@@ -49,6 +49,10 @@ export function getTaskToolDefinitions() {
|
|
|
49
49
|
items: { type: "string" },
|
|
50
50
|
description: "Task ids this task is blocked by (optional)",
|
|
51
51
|
},
|
|
52
|
+
planTaskId: {
|
|
53
|
+
type: "string",
|
|
54
|
+
description: "Plan task id (e.g. 't1', 't2.5') linking this live task back to a plan node.",
|
|
55
|
+
},
|
|
52
56
|
},
|
|
53
57
|
required: ["workDir", "teamName", "subject", "from"],
|
|
54
58
|
},
|
|
@@ -71,6 +75,10 @@ export function getTaskToolDefinitions() {
|
|
|
71
75
|
items: { type: "string" },
|
|
72
76
|
description: "Task ids this task is blocked by (optional)",
|
|
73
77
|
},
|
|
78
|
+
planTaskId: {
|
|
79
|
+
type: "string",
|
|
80
|
+
description: "Plan task id (e.g. 't1', 't2.5') linking this live task back to a plan node.",
|
|
81
|
+
},
|
|
74
82
|
sourceMessageId: { type: "string", description: "Inbox message id this task is spun off from" },
|
|
75
83
|
sourceInstanceId: { type: "string", description: "Instance id that owned the source message" },
|
|
76
84
|
},
|
|
@@ -307,20 +315,40 @@ function getStore(args, context) {
|
|
|
307
315
|
}
|
|
308
316
|
async function handleTaskCreate(args, context) {
|
|
309
317
|
assertQueenCaller(args, "task_create");
|
|
310
|
-
const
|
|
318
|
+
const requestedTeamName = args.teamName;
|
|
311
319
|
const subject = args.subject;
|
|
312
|
-
if (!
|
|
320
|
+
if (!requestedTeamName)
|
|
313
321
|
throw new Error("teamName is required");
|
|
314
322
|
if (!subject)
|
|
315
323
|
throw new Error("subject is required");
|
|
324
|
+
const swarmId = args.swarmId ?? null;
|
|
325
|
+
const explicitPlanTaskId = args.planTaskId;
|
|
326
|
+
// Subject infer: if queen forgot planTaskId but tagged the subject with
|
|
327
|
+
// `[t1]` / `t2.5: ...`, fold the inference back into the persisted task.
|
|
328
|
+
// Reversal of PR#91 Fix 1C: that PR demoted infer to response-only because
|
|
329
|
+
// a mis-inferred id (e.g. "t1: 修 t2 的 bug") could silently corrupt the
|
|
330
|
+
// plan-progress UI. But the queen has been retrained to prefix subjects on
|
|
331
|
+
// purpose, and not persisting means plan-sync still finds zero matches —
|
|
332
|
+
// we restore the writeback and surface the inferred id in the response so
|
|
333
|
+
// the queen can spot a bad guess and re-issue task_create.
|
|
334
|
+
const inferredPlanTaskId = explicitPlanTaskId ?? inferPlanTaskIdFromSubject(subject);
|
|
335
|
+
const effectivePlanTaskId = explicitPlanTaskId ?? inferredPlanTaskId;
|
|
336
|
+
// teamName consistency: when this task belongs to a swarm, its teamName
|
|
337
|
+
// must match the swarm's. Queens have a habit of passing the project's
|
|
338
|
+
// topic (e.g. "game-dev") instead of the actual template id (e.g.
|
|
339
|
+
// "dev-team"), which then breaks any UI that joins tasks-by-team. Override
|
|
340
|
+
// silently and surface a warning so the caller learns.
|
|
341
|
+
const teamWarning = await reconcileTeamName(args.workDir, swarmId, requestedTeamName, context);
|
|
342
|
+
const teamName = teamWarning?.effective ?? requestedTeamName;
|
|
316
343
|
const store = getStore(args, context);
|
|
317
344
|
const task = await store.create({
|
|
318
345
|
teamName,
|
|
319
346
|
subject,
|
|
320
347
|
description: args.description,
|
|
321
|
-
swarmId
|
|
348
|
+
swarmId,
|
|
322
349
|
owner: args.owner ?? null,
|
|
323
350
|
blockedBy: args.blockedBy ?? [],
|
|
351
|
+
planTaskId: effectivePlanTaskId,
|
|
324
352
|
});
|
|
325
353
|
if (task.swarmId && task.owner) {
|
|
326
354
|
const msg = {
|
|
@@ -338,17 +366,25 @@ async function handleTaskCreate(args, context) {
|
|
|
338
366
|
};
|
|
339
367
|
await appendInboxBestEffort(args.workDir, task.swarmId, task.owner, msg, context);
|
|
340
368
|
}
|
|
369
|
+
const text = await appendPlanLinkAnnotations(JSON.stringify(task), {
|
|
370
|
+
workDir: args.workDir,
|
|
371
|
+
swarmId,
|
|
372
|
+
explicitPlanTaskId,
|
|
373
|
+
inferredPlanTaskId,
|
|
374
|
+
teamWarning: teamWarning?.warning,
|
|
375
|
+
context,
|
|
376
|
+
});
|
|
341
377
|
return {
|
|
342
|
-
content: [{ type: "text", text
|
|
378
|
+
content: [{ type: "text", text }],
|
|
343
379
|
};
|
|
344
380
|
}
|
|
345
381
|
async function handleTaskCreateFromMessage(args, context) {
|
|
346
382
|
assertQueenCaller(args, "task_create_from_message");
|
|
347
|
-
const
|
|
383
|
+
const requestedTeamName = args.teamName;
|
|
348
384
|
const subject = args.subject;
|
|
349
385
|
const sourceMessageId = args.sourceMessageId;
|
|
350
386
|
const sourceInstanceId = args.sourceInstanceId;
|
|
351
|
-
if (!
|
|
387
|
+
if (!requestedTeamName)
|
|
352
388
|
throw new Error("teamName is required");
|
|
353
389
|
if (!subject)
|
|
354
390
|
throw new Error("subject is required");
|
|
@@ -356,14 +392,22 @@ async function handleTaskCreateFromMessage(args, context) {
|
|
|
356
392
|
throw new Error("sourceMessageId is required");
|
|
357
393
|
if (!sourceInstanceId)
|
|
358
394
|
throw new Error("sourceInstanceId is required");
|
|
395
|
+
const swarmId = args.swarmId ?? null;
|
|
396
|
+
const explicitPlanTaskId = args.planTaskId;
|
|
397
|
+
// Subject infer is persisted; see comment in handleTaskCreate.
|
|
398
|
+
const inferredPlanTaskId = explicitPlanTaskId ?? inferPlanTaskIdFromSubject(subject);
|
|
399
|
+
const effectivePlanTaskId = explicitPlanTaskId ?? inferredPlanTaskId;
|
|
400
|
+
const teamWarning = await reconcileTeamName(args.workDir, swarmId, requestedTeamName, context);
|
|
401
|
+
const teamName = teamWarning?.effective ?? requestedTeamName;
|
|
359
402
|
const store = getStore(args, context);
|
|
360
403
|
const task = await store.create({
|
|
361
404
|
teamName,
|
|
362
405
|
subject,
|
|
363
406
|
description: args.description,
|
|
364
|
-
swarmId
|
|
407
|
+
swarmId,
|
|
365
408
|
owner: args.owner ?? null,
|
|
366
409
|
blockedBy: args.blockedBy ?? [],
|
|
410
|
+
planTaskId: effectivePlanTaskId,
|
|
367
411
|
});
|
|
368
412
|
await store.addComment(task.id, {
|
|
369
413
|
id: randomUUID(),
|
|
@@ -372,8 +416,16 @@ async function handleTaskCreateFromMessage(args, context) {
|
|
|
372
416
|
body: `Spun off from message ${sourceMessageId} (instance ${sourceInstanceId})`,
|
|
373
417
|
});
|
|
374
418
|
const fresh = store.get(task.id);
|
|
419
|
+
const text = await appendPlanLinkAnnotations(JSON.stringify(fresh), {
|
|
420
|
+
workDir: args.workDir,
|
|
421
|
+
swarmId,
|
|
422
|
+
explicitPlanTaskId,
|
|
423
|
+
inferredPlanTaskId,
|
|
424
|
+
teamWarning: teamWarning?.warning,
|
|
425
|
+
context,
|
|
426
|
+
});
|
|
375
427
|
return {
|
|
376
|
-
content: [{ type: "text", text
|
|
428
|
+
content: [{ type: "text", text }],
|
|
377
429
|
};
|
|
378
430
|
}
|
|
379
431
|
async function handleTaskGet(args, context) {
|
|
@@ -464,6 +516,14 @@ async function handleTaskSetStatus(args, context) {
|
|
|
464
516
|
if (status === "completed" && current.status !== "completed") {
|
|
465
517
|
await notifyUnblockedAfterCompletion(store, updated, args, context);
|
|
466
518
|
}
|
|
519
|
+
// Re-sync plan.tasks[].status in recovery.json so the swarm's plan view
|
|
520
|
+
// reflects this status change immediately. The coordinator's own
|
|
521
|
+
// syncPlanStatusFromTasks only runs on persistSwarm (swarm-level events),
|
|
522
|
+
// so without this MCP-side write-back the plan would stay stale until the
|
|
523
|
+
// next role spawn / member change / etc. Best-effort.
|
|
524
|
+
if (current.swarmId) {
|
|
525
|
+
await syncPlanStatusInRecoveryFile(args.workDir, current.swarmId, context.inbox?.rootDir ?? context.rootDir, store);
|
|
526
|
+
}
|
|
467
527
|
// Re-read to reflect any link cleanup we may have done above.
|
|
468
528
|
const fresh = store.tryGet(taskId) ?? updated;
|
|
469
529
|
return {
|
|
@@ -607,6 +667,234 @@ async function handleTaskBriefing(args, context) {
|
|
|
607
667
|
content: [{ type: "text", text }],
|
|
608
668
|
};
|
|
609
669
|
}
|
|
670
|
+
/**
|
|
671
|
+
* Infer a plan task id from a task subject prefix. Matches patterns like
|
|
672
|
+
* `t1: ...`, `t2.5 - ...`, `[t1] ...`, `[t2.5]: ...`. Returns lowercased
|
|
673
|
+
* id (e.g. `t1`, `t2.5`) on hit, undefined otherwise.
|
|
674
|
+
*
|
|
675
|
+
* Deliberately conservative — requires the t-prefix to be followed by `:`,
|
|
676
|
+
* whitespace, or be inside `[...]`. This avoids misclassifying titles like
|
|
677
|
+
* "Test123 do thing" or "t9999_some_label" as plan ids.
|
|
678
|
+
*/
|
|
679
|
+
export function inferPlanTaskIdFromSubject(subject) {
|
|
680
|
+
if (!subject)
|
|
681
|
+
return undefined;
|
|
682
|
+
const m = subject.match(/^\[(t\d+(?:\.\d+)*)\]\s*[:\-]?\s*\S|^(t\d+(?:\.\d+)*)\s*[:\-]\s*\S/i);
|
|
683
|
+
if (!m)
|
|
684
|
+
return undefined;
|
|
685
|
+
const id = (m[1] ?? m[2] ?? "").toLowerCase();
|
|
686
|
+
return id || undefined;
|
|
687
|
+
}
|
|
688
|
+
/**
|
|
689
|
+
* Read the swarm's teamName from its `recovery.json` snapshot. Returns null
|
|
690
|
+
* when the snapshot is missing, malformed, or has no `teamName` field.
|
|
691
|
+
* Used to reconcile task_create's `args.teamName` against the swarm's truth.
|
|
692
|
+
*/
|
|
693
|
+
async function readSwarmTeamName(workDir, swarmId, rootDir) {
|
|
694
|
+
try {
|
|
695
|
+
const snapshotPath = join(projectRoot(workDir, rootDir), "swarms", swarmId, "recovery.json");
|
|
696
|
+
try {
|
|
697
|
+
await fsp.access(snapshotPath);
|
|
698
|
+
}
|
|
699
|
+
catch {
|
|
700
|
+
return null;
|
|
701
|
+
}
|
|
702
|
+
const raw = await fsp.readFile(snapshotPath, "utf-8");
|
|
703
|
+
const snapshot = JSON.parse(raw);
|
|
704
|
+
return typeof snapshot.teamName === "string" && snapshot.teamName.length > 0
|
|
705
|
+
? snapshot.teamName
|
|
706
|
+
: null;
|
|
707
|
+
}
|
|
708
|
+
catch (err) {
|
|
709
|
+
log.warn({ err, swarmId }, "readSwarmTeamName failed");
|
|
710
|
+
return null;
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
/**
|
|
714
|
+
* When a task is scoped to a swarm, force its teamName to match the swarm's
|
|
715
|
+
* authoritative teamName from recovery.json. Queens commonly mis-pass the
|
|
716
|
+
* project topic (e.g. "game-dev") instead of the template id (e.g.
|
|
717
|
+
* "dev-team"), which then breaks any UI joining tasks-by-team.
|
|
718
|
+
*
|
|
719
|
+
* Returns `{ effective, warning? }`:
|
|
720
|
+
* - `effective` is the teamName to actually persist (swarm's value when
|
|
721
|
+
* resolved, otherwise the caller's).
|
|
722
|
+
* - `warning` is a human-readable note appended to the response when the
|
|
723
|
+
* caller's value was overridden.
|
|
724
|
+
*
|
|
725
|
+
* Graceful fallback: when swarmId is null or the snapshot can't be read, the
|
|
726
|
+
* caller's teamName is used verbatim and no warning is emitted.
|
|
727
|
+
*/
|
|
728
|
+
async function reconcileTeamName(workDir, swarmId, requested, context) {
|
|
729
|
+
if (!swarmId)
|
|
730
|
+
return null;
|
|
731
|
+
const swarmTeam = await readSwarmTeamName(workDir, swarmId, context.rootDir);
|
|
732
|
+
if (!swarmTeam)
|
|
733
|
+
return null;
|
|
734
|
+
if (swarmTeam === requested)
|
|
735
|
+
return { effective: swarmTeam };
|
|
736
|
+
return {
|
|
737
|
+
effective: swarmTeam,
|
|
738
|
+
warning: `⚠ teamName 已校正:你传 '${requested}' 但 swarm 实际是 '${swarmTeam}',已用 swarm 的值。`,
|
|
739
|
+
};
|
|
740
|
+
}
|
|
741
|
+
/**
|
|
742
|
+
* `recovery.json` snapshot. Returns the set of plan task ids when a plan
|
|
743
|
+
* with phases is found, or null when no plan / no snapshot / unparseable.
|
|
744
|
+
*
|
|
745
|
+
* Used by `task_create` / `task_create_from_message` to emit a warning when
|
|
746
|
+
* a derived task is missing a `planTaskId` link, or references an id the
|
|
747
|
+
* plan doesn't contain.
|
|
748
|
+
*/
|
|
749
|
+
async function readPlanTaskIds(workDir, swarmId, rootDir) {
|
|
750
|
+
try {
|
|
751
|
+
const snapshotPath = join(projectRoot(workDir, rootDir), "swarms", swarmId, "recovery.json");
|
|
752
|
+
try {
|
|
753
|
+
await fsp.access(snapshotPath);
|
|
754
|
+
}
|
|
755
|
+
catch {
|
|
756
|
+
return null;
|
|
757
|
+
}
|
|
758
|
+
const raw = await fsp.readFile(snapshotPath, "utf-8");
|
|
759
|
+
const snapshot = JSON.parse(raw);
|
|
760
|
+
const plan = snapshot.plan;
|
|
761
|
+
if (!plan || !Array.isArray(plan.phases) || plan.phases.length === 0)
|
|
762
|
+
return null;
|
|
763
|
+
const ids = new Set();
|
|
764
|
+
for (const phase of plan.phases) {
|
|
765
|
+
if (!Array.isArray(phase?.tasks))
|
|
766
|
+
continue;
|
|
767
|
+
for (const task of phase.tasks) {
|
|
768
|
+
if (typeof task?.id === "string")
|
|
769
|
+
ids.add(task.id);
|
|
770
|
+
}
|
|
771
|
+
}
|
|
772
|
+
return ids.size > 0 ? ids : null;
|
|
773
|
+
}
|
|
774
|
+
catch (err) {
|
|
775
|
+
log.warn({ err, swarmId }, "readPlanTaskIds failed");
|
|
776
|
+
return null;
|
|
777
|
+
}
|
|
778
|
+
}
|
|
779
|
+
/**
|
|
780
|
+
* Re-sync plan.tasks[].status in the swarm's recovery.json from the live
|
|
781
|
+
* TaskStore. Mirrors SwarmCoordinator.syncPlanStatusFromTasks but written
|
|
782
|
+
* for the MCP server side so task_set_status changes are immediately
|
|
783
|
+
* visible to anyone reading recovery.json (UI / CLI / user inspection).
|
|
784
|
+
*
|
|
785
|
+
* Read-modify-write on the entire snapshot file, mutating only plan task
|
|
786
|
+
* statuses. Atomic via tmp + rename. Tight critical section minimises the
|
|
787
|
+
* race window vs the coordinator's own persistSwarm; either side's next
|
|
788
|
+
* write will re-sync from the task store, so eventual consistency holds.
|
|
789
|
+
*
|
|
790
|
+
* Best-effort: any failure logged but never throws back to the tool caller.
|
|
791
|
+
*/
|
|
792
|
+
async function syncPlanStatusInRecoveryFile(workDir, swarmId, rootDir, store) {
|
|
793
|
+
const swarmDir = join(projectRoot(workDir, rootDir), "swarms", swarmId);
|
|
794
|
+
const snapshotPath = join(swarmDir, "recovery.json");
|
|
795
|
+
try {
|
|
796
|
+
try {
|
|
797
|
+
await fsp.access(snapshotPath);
|
|
798
|
+
}
|
|
799
|
+
catch {
|
|
800
|
+
return;
|
|
801
|
+
}
|
|
802
|
+
const raw = await fsp.readFile(snapshotPath, "utf-8");
|
|
803
|
+
const snapshot = JSON.parse(raw);
|
|
804
|
+
const plan = snapshot.plan;
|
|
805
|
+
if (!plan || !Array.isArray(plan.phases) || plan.phases.length === 0)
|
|
806
|
+
return;
|
|
807
|
+
const liveTasks = store.listBySwarm(swarmId);
|
|
808
|
+
const byPlanId = new Map();
|
|
809
|
+
for (const t of liveTasks) {
|
|
810
|
+
if (!t.planTaskId)
|
|
811
|
+
continue;
|
|
812
|
+
const arr = byPlanId.get(t.planTaskId) ?? [];
|
|
813
|
+
arr.push(t.status);
|
|
814
|
+
byPlanId.set(t.planTaskId, arr);
|
|
815
|
+
}
|
|
816
|
+
let mutated = false;
|
|
817
|
+
for (const phase of plan.phases) {
|
|
818
|
+
if (!Array.isArray(phase?.tasks))
|
|
819
|
+
continue;
|
|
820
|
+
for (const task of phase.tasks) {
|
|
821
|
+
if (typeof task?.id !== "string")
|
|
822
|
+
continue;
|
|
823
|
+
const statuses = byPlanId.get(task.id);
|
|
824
|
+
if (!statuses || statuses.length === 0)
|
|
825
|
+
continue;
|
|
826
|
+
const next = pickStrongestStatus(statuses);
|
|
827
|
+
if (task.status !== next) {
|
|
828
|
+
task.status = next;
|
|
829
|
+
mutated = true;
|
|
830
|
+
}
|
|
831
|
+
}
|
|
832
|
+
}
|
|
833
|
+
if (!mutated)
|
|
834
|
+
return;
|
|
835
|
+
const tmpPath = join(swarmDir, `recovery.${randomBytes(6).toString("hex")}.tmp`);
|
|
836
|
+
await fsp.writeFile(tmpPath, JSON.stringify(snapshot, null, 2));
|
|
837
|
+
try {
|
|
838
|
+
await fsp.rename(tmpPath, snapshotPath);
|
|
839
|
+
}
|
|
840
|
+
catch (err) {
|
|
841
|
+
await fsp.unlink(tmpPath).catch(() => { });
|
|
842
|
+
throw err;
|
|
843
|
+
}
|
|
844
|
+
}
|
|
845
|
+
catch (err) {
|
|
846
|
+
log.warn({ err, swarmId }, "syncPlanStatusInRecoveryFile failed");
|
|
847
|
+
}
|
|
848
|
+
}
|
|
849
|
+
/**
|
|
850
|
+
* Compose the text body for a task_create / task_create_from_message
|
|
851
|
+
* response, appending up to two notices after the task JSON:
|
|
852
|
+
*
|
|
853
|
+
* - "ℹ Inferred planTaskId" — when caller didn't pass planTaskId but the
|
|
854
|
+
* subject prefix matched (so the queen can spot a wrong inference).
|
|
855
|
+
* - "⚠ Plan link warning" — when the swarm has a plan and either
|
|
856
|
+
* planTaskId is missing OR the supplied id isn't in the plan.
|
|
857
|
+
*
|
|
858
|
+
* Both notices are suppressed when planTaskId is supplied AND matches a
|
|
859
|
+
* plan node (the happy path).
|
|
860
|
+
*
|
|
861
|
+
* Degrades gracefully: if the swarm has no readable plan, the warning is
|
|
862
|
+
* suppressed too — we don't yell at queens for ad-hoc swarms.
|
|
863
|
+
*/
|
|
864
|
+
async function appendPlanLinkAnnotations(baseText, opts) {
|
|
865
|
+
const notes = [];
|
|
866
|
+
if (opts.teamWarning) {
|
|
867
|
+
notes.push(opts.teamWarning);
|
|
868
|
+
}
|
|
869
|
+
if (!opts.explicitPlanTaskId && opts.inferredPlanTaskId) {
|
|
870
|
+
// Writeback semantics (reversal of PR#91 Fix 1C): the inferred id IS
|
|
871
|
+
// persisted on the task, so plan-sync finds it. Surface a ✅ note in
|
|
872
|
+
// the response so the queen can spot a wrong guess and re-issue
|
|
873
|
+
// task_create with an explicit planTaskId.
|
|
874
|
+
notes.push(`✅ 已从 subject 推断 planTaskId='${opts.inferredPlanTaskId}',已写入 store。若不正确请用 task_set_status 或重新创建。`);
|
|
875
|
+
}
|
|
876
|
+
if (opts.swarmId) {
|
|
877
|
+
const planIds = await readPlanTaskIds(opts.workDir, opts.swarmId, opts.context.rootDir);
|
|
878
|
+
if (planIds) {
|
|
879
|
+
// Effective planTaskId for warning purposes = explicit ?? inferred.
|
|
880
|
+
// Once inference is persisted, a successful infer should silence the
|
|
881
|
+
// "missing planTaskId" warning — the task IS linked.
|
|
882
|
+
const effective = opts.explicitPlanTaskId ?? opts.inferredPlanTaskId;
|
|
883
|
+
if (!effective) {
|
|
884
|
+
notes.push("⚠ Plan link warning: this task was not linked to any plan node (planTaskId 未传)。" +
|
|
885
|
+
" Plan progress UI 不会显示该 task。如果这是 plan 派生任务,请补传 planTaskId。");
|
|
886
|
+
}
|
|
887
|
+
else if (!planIds.has(effective)) {
|
|
888
|
+
const source = opts.explicitPlanTaskId ? "" : " (inferred from subject)";
|
|
889
|
+
notes.push(`⚠ Plan link warning: planTaskId '${effective}'${source} 未在 plan 中找到。` +
|
|
890
|
+
" 请确认 plan 节点 id 拼写是否正确。");
|
|
891
|
+
}
|
|
892
|
+
}
|
|
893
|
+
}
|
|
894
|
+
if (notes.length === 0)
|
|
895
|
+
return baseText;
|
|
896
|
+
return `${baseText}\n\n${notes.join("\n")}`;
|
|
897
|
+
}
|
|
610
898
|
/**
|
|
611
899
|
* Resolve the queen instance id for a swarm by reading the swarm snapshot
|
|
612
900
|
* (`recovery.json`) from disk. Returns null when the snapshot is missing,
|
package/dist/tools/task.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/tools/task.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/tools/task.ts"],"names":[],"mappings":"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"}
|