@luckydraw/cumulus 1.0.7 → 1.0.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.
Files changed (44) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/gateway/adapters/webchat.d.ts.map +1 -1
  3. package/dist/gateway/adapters/webchat.js +173 -2
  4. package/dist/gateway/adapters/webchat.js.map +1 -1
  5. package/dist/gateway/gateway-agents-mcp.js +50 -0
  6. package/dist/gateway/gateway-agents-mcp.js.map +1 -1
  7. package/dist/gateway/server.d.ts +65 -0
  8. package/dist/gateway/server.d.ts.map +1 -1
  9. package/dist/gateway/server.js +222 -14
  10. package/dist/gateway/server.js.map +1 -1
  11. package/dist/gateway/static/widget.js +581 -66
  12. package/dist/lib/config.d.ts +34 -0
  13. package/dist/lib/config.d.ts.map +1 -1
  14. package/dist/lib/config.js +43 -0
  15. package/dist/lib/config.js.map +1 -1
  16. package/dist/lib/content-store.d.ts +64 -1
  17. package/dist/lib/content-store.d.ts.map +1 -1
  18. package/dist/lib/content-store.js +161 -48
  19. package/dist/lib/content-store.js.map +1 -1
  20. package/dist/lib/embeddings.d.ts +11 -1
  21. package/dist/lib/embeddings.d.ts.map +1 -1
  22. package/dist/lib/embeddings.js +301 -40
  23. package/dist/lib/embeddings.js.map +1 -1
  24. package/dist/lib/gateway.d.ts +18 -1
  25. package/dist/lib/gateway.d.ts.map +1 -1
  26. package/dist/lib/gateway.js +37 -5
  27. package/dist/lib/gateway.js.map +1 -1
  28. package/dist/lib/retriever.d.ts +34 -2
  29. package/dist/lib/retriever.d.ts.map +1 -1
  30. package/dist/lib/retriever.js +9 -2
  31. package/dist/lib/retriever.js.map +1 -1
  32. package/dist/lib/tool-inventory.d.ts.map +1 -1
  33. package/dist/lib/tool-inventory.js +2 -0
  34. package/dist/lib/tool-inventory.js.map +1 -1
  35. package/dist/mcp/index.js +7 -1
  36. package/dist/mcp/index.js.map +1 -1
  37. package/dist/mcp/server.d.ts +4 -1
  38. package/dist/mcp/server.d.ts.map +1 -1
  39. package/dist/mcp/server.js +4 -2
  40. package/dist/mcp/server.js.map +1 -1
  41. package/dist/mcp/tool-handler.d.ts.map +1 -1
  42. package/dist/mcp/tool-handler.js +11 -0
  43. package/dist/mcp/tool-handler.js.map +1 -1
  44. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-agents-mcp.js","sourceRoot":"","sources":["../../src/gateway/gateway-agents-mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway-agents-mcp.js","sourceRoot":"","sources":["../../src/gateway/gateway-agents-mcp.ts"],"names":[],"mappings":"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"}
@@ -86,6 +86,61 @@ export interface GatewayServerHandle {
86
86
  /** Set federation router — enables cross-gateway agent messaging */
87
87
  setFederationRouter: (router: import('./federation.js').FederationRouter) => void;
88
88
  }
89
+ export interface QueuedUserMessage {
90
+ id: string;
91
+ text: string;
92
+ images?: Array<{
93
+ mimeType: string;
94
+ base64: string;
95
+ }>;
96
+ timestamp: number;
97
+ }
98
+ /**
99
+ * Delivers a drained batch of user messages as a real turn. Registered by the
100
+ * webchat adapter at startup, because only it can stream the turn back to the
101
+ * WebSocket clients watching the thread (same shape as `broadcastToThread` and
102
+ * `setFederationRouter`, both also set by an adapter after startup).
103
+ */
104
+ type UserQueueDelivery = (threadName: string, batch: QueuedUserMessage[]) => void;
105
+ export declare function setUserQueueDelivery(fn: UserQueueDelivery): void;
106
+ /** Queue a deferred user message. Returns the full pending list for the thread. */
107
+ export declare function enqueueUserMessage(threadName: string, msg: Omit<QueuedUserMessage, 'id'> & {
108
+ id?: string;
109
+ }): QueuedUserMessage[];
110
+ /** Pending deferred user messages for a thread (empty array when none). */
111
+ export declare function getUserQueue(threadName: string): QueuedUserMessage[];
112
+ /** Edit a queued message's text in place. Returns the updated pending list. */
113
+ export declare function editUserMessage(threadName: string, id: string, text: string): QueuedUserMessage[];
114
+ /**
115
+ * Remove one queued message and return it — the shared half of "cancel" and
116
+ * "send now". Send-now is cancel plus an ordinary send, so it cannot leave a
117
+ * copy behind in the queue.
118
+ */
119
+ export declare function takeUserMessage(threadName: string, id: string): {
120
+ taken?: QueuedUserMessage;
121
+ remaining: QueuedUserMessage[];
122
+ };
123
+ /**
124
+ * Render a drained batch as the text of one turn.
125
+ *
126
+ * A single message delivers as its bare text — indistinguishable from one sent
127
+ * normally, because on the common case a wrapper is pure noise. Several deliver
128
+ * as one turn (Karl's choice over one-at-a-time: the model sees the whole
129
+ * picture before it starts answering).
130
+ *
131
+ * Deliberately carries no `[sender → recipient]` framing and no reply hint:
132
+ * this is the user talking, not an agent.
133
+ */
134
+ export declare function formatQueuedUserBatch(batch: QueuedUserMessage[]): string;
135
+ /**
136
+ * Attempt a drain outside the busy→idle transition.
137
+ *
138
+ * Needed because delivery can decline: with no client watching the thread there
139
+ * is nobody to stream the turn to, so the batch is put back. Without this, those
140
+ * messages would wait for the *next* busy→idle — which may never come on an
141
+ * idle thread. A client re-opening the thread calls this.
142
+ */
143
+ export declare function flushUserQueue(threadName: string): boolean;
89
144
  /**
90
145
  * Mark a thread as busy/idle from any transport (SSE turns, webchat adapter,
91
146
  * agent injects). Busy→idle is THE drain point for queued agent messages —
@@ -161,7 +216,17 @@ export declare function formatAgentMessageForRecipient(messageText: string, send
161
216
  /** Task 110: false ⇒ sender is a script/webhook, not a repliable thread. */
162
217
  senderIsAgent?: boolean;
163
218
  }): string;
219
+ /**
220
+ * Render several drained agent messages as one turn.
221
+ *
222
+ * Exported because the widget has to RECOGNISE this shape to render it as an
223
+ * agent message rather than a user bubble (task 144) — and a hand-copied
224
+ * fixture of it is exactly what task 103 got wrong: the tests passed against a
225
+ * shape that never occurs in production. The widget test drives this function.
226
+ */
227
+ export declare function formatAgentBatch(queue: AgentQueuedMessage[]): string;
164
228
  /** Override the threads directory (used by tests to isolate from production) */
165
229
  export declare function setThreadsDir(dir: string): void;
166
230
  export declare function startGatewayServer(options: GatewayServerOptions): Promise<GatewayServerHandle>;
231
+ export {};
167
232
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/gateway/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/gateway/server.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ import * as fs from 'fs';
20
20
  import * as http from 'http';
21
21
  import * as os from 'os';
22
22
  import * as path from 'path';
23
- import { loadGlobalConfig, loadThreadConfig, mergeConfigs, saveThreadConfig, setConfigThreadsDir, } from '../lib/config.js';
23
+ import { loadGlobalConfig, loadThreadConfig, loadThreadConfigExact, mergeConfigs, resolveCoThreadMaster, saveThreadConfig, setConfigThreadsDir, } from '../lib/config.js';
24
24
  import { loadEmbeddings, generateMissingEmbeddings } from '../lib/embeddings.js';
25
25
  import { sendMessage, getOrCreateThread, clearThreadCache, canRunBackgroundWork, getActiveSubprocessCount, setGatewayThreadsDir, } from '../lib/gateway.js';
26
26
  import { verifyLicense, majorOf, LICENSE_CONTACT } from '../lib/license.js';
@@ -40,6 +40,98 @@ import { isAutomatedSender } from './senders.js';
40
40
  import { validateTranscriptFlush, ingestTranscriptFlush } from './transcript-ingest.js';
41
41
  const threadQueues = new Map();
42
42
  const threadBusy = new Map();
43
+ const userQueues = new Map();
44
+ let userQueueDelivery;
45
+ export function setUserQueueDelivery(fn) {
46
+ userQueueDelivery = fn;
47
+ }
48
+ /** Queue a deferred user message. Returns the full pending list for the thread. */
49
+ export function enqueueUserMessage(threadName, msg) {
50
+ const queue = userQueues.get(threadName) ?? [];
51
+ queue.push({ ...msg, id: msg.id ?? `q_${Math.random().toString(36).slice(2, 10)}` });
52
+ userQueues.set(threadName, queue);
53
+ console.log(`[Gateway] User message queued for busy thread "${threadName}" (position ${queue.length})`);
54
+ return queue;
55
+ }
56
+ /** Pending deferred user messages for a thread (empty array when none). */
57
+ export function getUserQueue(threadName) {
58
+ return userQueues.get(threadName) ?? [];
59
+ }
60
+ /** Edit a queued message's text in place. Returns the updated pending list. */
61
+ export function editUserMessage(threadName, id, text) {
62
+ const queue = userQueues.get(threadName) ?? [];
63
+ const item = queue.find(m => m.id === id);
64
+ if (item)
65
+ item.text = text;
66
+ return queue;
67
+ }
68
+ /**
69
+ * Remove one queued message and return it — the shared half of "cancel" and
70
+ * "send now". Send-now is cancel plus an ordinary send, so it cannot leave a
71
+ * copy behind in the queue.
72
+ */
73
+ export function takeUserMessage(threadName, id) {
74
+ const queue = userQueues.get(threadName) ?? [];
75
+ const idx = queue.findIndex(m => m.id === id);
76
+ const taken = idx >= 0 ? queue.splice(idx, 1)[0] : undefined;
77
+ if (queue.length === 0)
78
+ userQueues.delete(threadName);
79
+ return { taken, remaining: queue };
80
+ }
81
+ /**
82
+ * Render a drained batch as the text of one turn.
83
+ *
84
+ * A single message delivers as its bare text — indistinguishable from one sent
85
+ * normally, because on the common case a wrapper is pure noise. Several deliver
86
+ * as one turn (Karl's choice over one-at-a-time: the model sees the whole
87
+ * picture before it starts answering).
88
+ *
89
+ * Deliberately carries no `[sender → recipient]` framing and no reply hint:
90
+ * this is the user talking, not an agent.
91
+ */
92
+ export function formatQueuedUserBatch(batch) {
93
+ if (batch.length === 1)
94
+ return batch[0].text;
95
+ const lines = [
96
+ `[${batch.length} messages queued while you were responding — all from the user, in order]`,
97
+ '',
98
+ ];
99
+ batch.forEach((m, i) => {
100
+ lines.push(`(${i + 1}) ${m.text}`);
101
+ lines.push('');
102
+ });
103
+ return lines.join('\n').trimEnd();
104
+ }
105
+ /**
106
+ * Attempt a drain outside the busy→idle transition.
107
+ *
108
+ * Needed because delivery can decline: with no client watching the thread there
109
+ * is nobody to stream the turn to, so the batch is put back. Without this, those
110
+ * messages would wait for the *next* busy→idle — which may never come on an
111
+ * idle thread. A client re-opening the thread calls this.
112
+ */
113
+ export function flushUserQueue(threadName) {
114
+ return drainUserQueue(threadName);
115
+ }
116
+ /**
117
+ * Deliver every pending user message for a thread as one turn.
118
+ *
119
+ * Returns true when it took the thread — the caller must NOT also drain the
120
+ * agent queue, or the two turns run concurrently (the task 120 class).
121
+ */
122
+ function drainUserQueue(threadName) {
123
+ const queue = userQueues.get(threadName);
124
+ if (!queue || queue.length === 0)
125
+ return false;
126
+ if (threadBusy.get(threadName))
127
+ return false;
128
+ if (!userQueueDelivery)
129
+ return false;
130
+ userQueues.delete(threadName);
131
+ console.log(`[Gateway] Draining ${queue.length} queued user message(s) for "${threadName}"`);
132
+ userQueueDelivery(threadName, queue);
133
+ return true;
134
+ }
43
135
  const bridgeContexts = new Map();
44
136
  async function buildBridgeContextBlock(threadName, executorUrl) {
45
137
  const ctx = bridgeContexts.get(threadName);
@@ -108,7 +200,15 @@ export function markThreadBusy(threadName, busy) {
108
200
  // User-queued messages take priority: their drain pass toggles busy and
109
201
  // lands back here when the user queue is empty.
110
202
  const pendingUser = threadQueues.get(threadName);
111
- if (!pendingUser?.length && agentPipelineOpts) {
203
+ if (pendingUser?.length)
204
+ return;
205
+ // Deferred user messages (task 144) outrank agent messages for the same
206
+ // reason the SSE queue does. If this takes the thread it returns true, and we
207
+ // must NOT also start an agent turn — that is two concurrent turns on one
208
+ // thread (task 120).
209
+ if (drainUserQueue(threadName))
210
+ return;
211
+ if (agentPipelineOpts) {
112
212
  drainAgentQueue(threadName, agentPipelineOpts);
113
213
  }
114
214
  }
@@ -718,6 +818,28 @@ export function formatAgentMessageForRecipient(messageText, senderName, recipien
718
818
  : automatedNote;
719
819
  return `${prefix}\n${messageText}\n\n${replyHint}`;
720
820
  }
821
+ /**
822
+ * Render several drained agent messages as one turn.
823
+ *
824
+ * Exported because the widget has to RECOGNISE this shape to render it as an
825
+ * agent message rather than a user bubble (task 144) — and a hand-copied
826
+ * fixture of it is exactly what task 103 got wrong: the tests passed against a
827
+ * shape that never occurs in production. The widget test drives this function.
828
+ */
829
+ export function formatAgentBatch(queue) {
830
+ const lines = [`[While you were busy, ${queue.length} messages arrived]\n`];
831
+ for (const msg of queue) {
832
+ const time = new Date(msg.timestamp).toLocaleTimeString();
833
+ // Task 110: don't call a script an agent
834
+ const kind = isAgentSender(msg.sender) ? 'agent' : 'automated sender';
835
+ lines.push(`[From ${kind} "${msg.sender}"] (${time}):`);
836
+ lines.push(msg.text);
837
+ lines.push('');
838
+ }
839
+ lines.push('(Review the above messages. Reply only if actionable work is needed.');
840
+ lines.push('Use send_to_agent("name", response) to respond to a specific agent — automated senders are scripts and cannot be replied to.)');
841
+ return lines.join('\n');
842
+ }
721
843
  function drainAgentQueue(threadName, pipelineOpts) {
722
844
  // Another turn may have grabbed the thread between busy→false and this call
723
845
  if (threadBusy.get(threadName))
@@ -739,18 +861,7 @@ function drainAgentQueue(threadName, pipelineOpts) {
739
861
  });
740
862
  }
741
863
  else {
742
- const lines = [`[While you were busy, ${queue.length} messages arrived]\n`];
743
- for (const msg of queue) {
744
- const time = new Date(msg.timestamp).toLocaleTimeString();
745
- // Task 110: don't call a script an agent
746
- const kind = isAgentSender(msg.sender) ? 'agent' : 'automated sender';
747
- lines.push(`[From ${kind} "${msg.sender}"] (${time}):`);
748
- lines.push(msg.text);
749
- lines.push('');
750
- }
751
- lines.push('(Review the above messages. Reply only if actionable work is needed.');
752
- lines.push('Use send_to_agent("name", response) to respond to a specific agent — automated senders are scripts and cannot be replied to.)');
753
- formatted = lines.join('\n');
864
+ formatted = formatAgentBatch(queue);
754
865
  }
755
866
  // Fire-and-forget: send the batched message as a new turn
756
867
  threadBusy.set(threadName, true);
@@ -973,6 +1084,15 @@ async function handleListThreads(res, scopeNs, namespaces) {
973
1084
  if (tc.projectDir) {
974
1085
  entry.projectDir = tc.projectDir;
975
1086
  }
1087
+ // Co-thread membership, so the sidebar can nest (task 143). Deliberately
1088
+ // the authoritative predicate and NOT a name-prefix test: every visitor
1089
+ // thread (`pursuit-<deviceId>`) looks like a co-thread by name, and
1090
+ // grouping those under their app would claim a relationship that does
1091
+ // not exist. `resolveCoThreadMaster` requires actual membership.
1092
+ const master = resolveCoThreadMaster(name);
1093
+ if (master) {
1094
+ entry.master = master;
1095
+ }
976
1096
  threads.push(entry);
977
1097
  }
978
1098
  // Sort by last activity descending
@@ -1355,6 +1475,84 @@ async function handleUpdatePipeline(threadName, req, res) {
1355
1475
  jsonResponse(res, 500, { error: String(err) });
1356
1476
  }
1357
1477
  }
1478
+ // ─── Co-thread handlers (task 143) ─────────────────────────
1479
+ /** A co-thread label: one path-safe segment, no separators of its own. */
1480
+ const CO_THREAD_LABEL = /^[a-zA-Z0-9_]+$/;
1481
+ async function handleListCoThreads(threadName, res) {
1482
+ try {
1483
+ const config = await loadThreadConfigExact(threadName);
1484
+ jsonResponse(res, 200, {
1485
+ thread: threadName,
1486
+ master: resolveCoThreadMaster(threadName) ?? null,
1487
+ coThreads: config.coThreads ?? [],
1488
+ });
1489
+ }
1490
+ catch (err) {
1491
+ jsonResponse(res, 500, { error: String(err) });
1492
+ }
1493
+ }
1494
+ /**
1495
+ * Create a co-thread of `threadName`: a sibling that shares this thread's
1496
+ * content store but keeps its own conversation history.
1497
+ *
1498
+ * Creation is MASTER-ONLY (Karl, 2026-08-16). A co-thread cannot mint siblings,
1499
+ * so the tree stays exactly one level deep and ownership of the project
1500
+ * checkout is never ambiguous.
1501
+ */
1502
+ async function handleCreateCoThread(threadName, req, res) {
1503
+ let body;
1504
+ try {
1505
+ body = JSON.parse(await readBody(req));
1506
+ }
1507
+ catch {
1508
+ jsonResponse(res, 400, { error: 'Invalid JSON body' });
1509
+ return;
1510
+ }
1511
+ const label = (body.label ?? '').trim();
1512
+ if (!label || !CO_THREAD_LABEL.test(label)) {
1513
+ jsonResponse(res, 400, {
1514
+ error: 'label must be letters, numbers or underscores (no hyphens, spaces or slashes)',
1515
+ });
1516
+ return;
1517
+ }
1518
+ const master = resolveCoThreadMaster(threadName);
1519
+ if (master) {
1520
+ jsonResponse(res, 409, {
1521
+ error: `"${threadName}" is itself a co-thread of "${master}". Co-threads are created from the master only.`,
1522
+ });
1523
+ return;
1524
+ }
1525
+ const coThreadName = `${threadName}-${label}`;
1526
+ const coThreadPath = path.join(THREADS_DIR, `${coThreadName}.jsonl`);
1527
+ try {
1528
+ const config = await loadThreadConfigExact(threadName);
1529
+ const existing = config.coThreads ?? [];
1530
+ if (existing.includes(coThreadName)) {
1531
+ jsonResponse(res, 200, { created: false, thread: coThreadName, master: threadName });
1532
+ return;
1533
+ }
1534
+ if (fs.existsSync(coThreadPath)) {
1535
+ jsonResponse(res, 409, {
1536
+ error: `Thread "${coThreadName}" already exists and is not a co-thread. Pick another label.`,
1537
+ });
1538
+ return;
1539
+ }
1540
+ // Register FIRST: an unregistered thread that already has a history file
1541
+ // would come up with a private store, and its first turn's memory would
1542
+ // land somewhere the master can never see.
1543
+ await saveThreadConfig(threadName, { coThreads: [...existing, coThreadName] });
1544
+ // The thread exists once its history file does — that is what every
1545
+ // listing (`/api/threads`, `/api/agents`, the web UI) enumerates.
1546
+ fs.mkdirSync(THREADS_DIR, { recursive: true });
1547
+ fs.writeFileSync(coThreadPath, '', { flag: 'a' });
1548
+ // Drop any cached state so the next turn resolves the shared store.
1549
+ clearThreadCache(coThreadName);
1550
+ jsonResponse(res, 201, { created: true, thread: coThreadName, master: threadName });
1551
+ }
1552
+ catch (err) {
1553
+ jsonResponse(res, 500, { error: String(err) });
1554
+ }
1555
+ }
1358
1556
  // ─── Schedule handlers ─────────────────────────────────────
1359
1557
  async function handleListSchedules(threadName, res) {
1360
1558
  try {
@@ -2227,6 +2425,16 @@ export async function startGatewayServer(options) {
2227
2425
  await handleUpdatePipeline(params.name, req, res);
2228
2426
  return;
2229
2427
  }
2428
+ // GET /api/thread/:name/co-threads — list co-threads (task 143)
2429
+ if (routePath === '/api/thread/:name/co-threads' && req.method === 'GET') {
2430
+ await handleListCoThreads(params.name, res);
2431
+ return;
2432
+ }
2433
+ // POST /api/thread/:name/co-threads — create a co-thread (master only)
2434
+ if (routePath === '/api/thread/:name/co-threads' && req.method === 'POST') {
2435
+ await handleCreateCoThread(params.name, req, res);
2436
+ return;
2437
+ }
2230
2438
  // GET /api/thread/:name/schedules — list schedules
2231
2439
  if (routePath === '/api/thread/:name/schedules' && req.method === 'GET') {
2232
2440
  await handleListSchedules(params.name, res);