@open-multi-agent/core 1.7.0 → 1.8.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/README.md +49 -21
- package/dist/dashboard/render-team-run-dashboard.d.ts.map +1 -1
- package/dist/dashboard/render-team-run-dashboard.js +5 -1
- package/dist/dashboard/render-team-run-dashboard.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/llm/bedrock.d.ts +1 -1
- package/dist/llm/bedrock.d.ts.map +1 -1
- package/dist/llm/bedrock.js +58 -25
- package/dist/llm/bedrock.js.map +1 -1
- package/dist/memory/checkpoint.d.ts +28 -0
- package/dist/memory/checkpoint.d.ts.map +1 -0
- package/dist/memory/checkpoint.js +95 -0
- package/dist/memory/checkpoint.js.map +1 -0
- package/dist/memory/shared.d.ts +25 -1
- package/dist/memory/shared.d.ts.map +1 -1
- package/dist/memory/shared.js +74 -1
- package/dist/memory/shared.js.map +1 -1
- package/dist/orchestrator/orchestrator.d.ts +44 -19
- package/dist/orchestrator/orchestrator.d.ts.map +1 -1
- package/dist/orchestrator/orchestrator.js +357 -78
- package/dist/orchestrator/orchestrator.js.map +1 -1
- package/dist/task/queue.d.ts +18 -1
- package/dist/task/queue.d.ts.map +1 -1
- package/dist/task/queue.js +100 -0
- package/dist/task/queue.js.map +1 -1
- package/dist/types.d.ts +140 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -3
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Durable checkpoint persistence over the public MemoryStore API.
|
|
3
|
+
*
|
|
4
|
+
* Checkpoints are stored as JSON under a reserved key namespace. The module
|
|
5
|
+
* intentionally depends only on {@link MemoryStore}, so in-memory, Redis,
|
|
6
|
+
* SQLite, or any custom backend work without extra hooks.
|
|
7
|
+
*/
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
// Constants
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
export const CHECKPOINT_KEY_PREFIX = '__oma_checkpoint__/';
|
|
12
|
+
export const DEFAULT_CHECKPOINT_KEY = `${CHECKPOINT_KEY_PREFIX}latest`;
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
// Helpers
|
|
15
|
+
// ---------------------------------------------------------------------------
|
|
16
|
+
export function checkpointKey(runId) {
|
|
17
|
+
if (!runId)
|
|
18
|
+
return DEFAULT_CHECKPOINT_KEY;
|
|
19
|
+
return `${CHECKPOINT_KEY_PREFIX}${runId}/latest`;
|
|
20
|
+
}
|
|
21
|
+
export function isCheckpointKey(key) {
|
|
22
|
+
return key.startsWith(CHECKPOINT_KEY_PREFIX);
|
|
23
|
+
}
|
|
24
|
+
// ---------------------------------------------------------------------------
|
|
25
|
+
// Checkpoint
|
|
26
|
+
// ---------------------------------------------------------------------------
|
|
27
|
+
export class Checkpoint {
|
|
28
|
+
store;
|
|
29
|
+
key;
|
|
30
|
+
runId;
|
|
31
|
+
constructor(store, options = {}) {
|
|
32
|
+
this.store = store;
|
|
33
|
+
this.key = options.key ?? checkpointKey(options.runId);
|
|
34
|
+
this.runId = options.runId;
|
|
35
|
+
}
|
|
36
|
+
/** Persist `snapshot` as the latest checkpoint. */
|
|
37
|
+
async save(snapshot) {
|
|
38
|
+
const stored = {
|
|
39
|
+
...snapshot,
|
|
40
|
+
...(snapshot.runId !== undefined || this.runId === undefined
|
|
41
|
+
? {}
|
|
42
|
+
: { runId: this.runId }),
|
|
43
|
+
};
|
|
44
|
+
await this.store.set(this.key, JSON.stringify(stored), {
|
|
45
|
+
namespace: 'checkpoint',
|
|
46
|
+
version: stored.version,
|
|
47
|
+
...(stored.runId !== undefined ? { runId: stored.runId } : {}),
|
|
48
|
+
createdAt: stored.createdAt,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/** Load the latest checkpoint, or `null` when no checkpoint exists. */
|
|
52
|
+
async loadLatest() {
|
|
53
|
+
const entry = await this.store.get(this.key);
|
|
54
|
+
if (entry === null)
|
|
55
|
+
return null;
|
|
56
|
+
let parsed;
|
|
57
|
+
try {
|
|
58
|
+
parsed = JSON.parse(entry.value);
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
throw new Error(`Checkpoint: stored value at "${this.key}" is not valid JSON.`);
|
|
62
|
+
}
|
|
63
|
+
if (!Checkpoint.isSnapshot(parsed)) {
|
|
64
|
+
throw new Error(`Checkpoint: stored value at "${this.key}" is not a checkpoint snapshot.`);
|
|
65
|
+
}
|
|
66
|
+
return parsed;
|
|
67
|
+
}
|
|
68
|
+
/** Alias for {@link loadLatest}. */
|
|
69
|
+
async load() {
|
|
70
|
+
return this.loadLatest();
|
|
71
|
+
}
|
|
72
|
+
/** Delete the persisted checkpoint key. */
|
|
73
|
+
async delete() {
|
|
74
|
+
await this.store.delete(this.key);
|
|
75
|
+
}
|
|
76
|
+
static isSnapshot(value) {
|
|
77
|
+
if (value === null || typeof value !== 'object')
|
|
78
|
+
return false;
|
|
79
|
+
const snapshot = value;
|
|
80
|
+
if (snapshot['version'] !== 1)
|
|
81
|
+
return false;
|
|
82
|
+
if (snapshot['mode'] !== 'runTeam' && snapshot['mode'] !== 'runTasks')
|
|
83
|
+
return false;
|
|
84
|
+
if (typeof snapshot['createdAt'] !== 'string')
|
|
85
|
+
return false;
|
|
86
|
+
if (!Array.isArray(snapshot['completedTaskResults']))
|
|
87
|
+
return false;
|
|
88
|
+
const queue = snapshot['queue'];
|
|
89
|
+
if (queue === null || typeof queue !== 'object')
|
|
90
|
+
return false;
|
|
91
|
+
const queueRecord = queue;
|
|
92
|
+
return queueRecord['version'] === 1 && Array.isArray(queueRecord['tasks']);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=checkpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkpoint.js","sourceRoot":"","sources":["../../src/memory/checkpoint.ts"],"names":[],"mappings":"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"}
|
package/dist/memory/shared.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* {@link SharedMemory.getSummary} method produces a human-readable digest
|
|
7
7
|
* suitable for injecting into an agent's context window.
|
|
8
8
|
*/
|
|
9
|
-
import type { MemoryStore, SharedMemoryEntry, SharedMemoryValue, SharedMemoryWriteOptions } from '../types.js';
|
|
9
|
+
import type { MemoryStore, SharedMemorySnapshot, SharedMemoryEntry, SharedMemoryValue, SharedMemoryWriteOptions } from '../types.js';
|
|
10
10
|
/**
|
|
11
11
|
* Namespaced shared memory for a team of agents.
|
|
12
12
|
*
|
|
@@ -60,6 +60,28 @@ export declare class SharedMemory {
|
|
|
60
60
|
advanceTurn(): void;
|
|
61
61
|
/** Current turn count. Useful for tests and observability. */
|
|
62
62
|
getTurnCount(): number;
|
|
63
|
+
/**
|
|
64
|
+
* Restore the turn counter without rehydrating entries. Used on checkpoint
|
|
65
|
+
* resume when the shared-memory store is reused: the entries are already
|
|
66
|
+
* durable in the store, so only the counter needs restoring to keep TTL
|
|
67
|
+
* expiry correct.
|
|
68
|
+
*/
|
|
69
|
+
setTurnCount(turnCount: number): void;
|
|
70
|
+
/** Returns a serializable snapshot of all non-expired shared-memory entries. */
|
|
71
|
+
snapshot(): Promise<SharedMemorySnapshot>;
|
|
72
|
+
/**
|
|
73
|
+
* Rebuilds a {@link SharedMemory} instance from a snapshot.
|
|
74
|
+
*
|
|
75
|
+
* Snapshot entry values remain string-only at the {@link MemoryStore}
|
|
76
|
+
* boundary; structured values are recovered through their metadata when read.
|
|
77
|
+
*/
|
|
78
|
+
static fromSnapshot(snapshot: SharedMemorySnapshot, store?: MemoryStore): Promise<SharedMemory>;
|
|
79
|
+
/**
|
|
80
|
+
* Restores this instance from a snapshot. Existing non-checkpoint entries in
|
|
81
|
+
* the backing store are replaced; reserved checkpoint records are preserved
|
|
82
|
+
* so the same store can hold both agent memory and checkpoints.
|
|
83
|
+
*/
|
|
84
|
+
restore(snapshot: SharedMemorySnapshot): Promise<void>;
|
|
63
85
|
/**
|
|
64
86
|
* Write `value` under the namespaced key `<agentName>/<key>`.
|
|
65
87
|
*
|
|
@@ -147,6 +169,8 @@ export declare class SharedMemory {
|
|
|
147
169
|
*/
|
|
148
170
|
getStore(): MemoryStore;
|
|
149
171
|
private static namespaceKey;
|
|
172
|
+
private static isReservedStoreKey;
|
|
173
|
+
private static entryToSnapshot;
|
|
150
174
|
private static serializeValue;
|
|
151
175
|
private static cleanMetadata;
|
|
152
176
|
private static parseEntry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/memory/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/memory/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAGV,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,aAAa,CAAA;AA8BpB;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC;;;;;OAKG;IACH,OAAO,CAAC,SAAS,CAAI;IAErB;;;;;;;;;;;OAWG;gBACS,KAAK,CAAC,EAAE,WAAW;IAc/B;;;;;;;;OAQG;IACH,WAAW,IAAI,IAAI;IAInB,8DAA8D;IAC9D,YAAY,IAAI,MAAM;IAItB;;;;;OAKG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQrC,gFAAgF;IAC1E,QAAQ,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAQ/C;;;;;OAKG;WACU,YAAY,CACvB,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,YAAY,CAAC;IAMxB;;;;OAIG;IACG,OAAO,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B5D;;;;;;;;;;;OAWG;IACG,KAAK,CAAC,MAAM,SAAS,iBAAiB,EAC1C,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,IAAI,CAAC;IAUhB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,IAAI,CAAC;IAuBhB;;;;;;;;;OASG;IACG,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAY1D,gFAAgF;IAC1E,OAAO,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAI7C;;;OAGG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAWlE;;;;;;;;;;;;;;;;;;;OAmBG;IACG,UAAU,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAkDlE;;;;OAIG;IACH,QAAQ,IAAI,WAAW;IAQvB,OAAO,CAAC,MAAM,CAAC,YAAY;IAI3B,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAIjC,OAAO,CAAC,MAAM,CAAC,eAAe;IAU9B,OAAO,CAAC,MAAM,CAAC,cAAc;IAuB7B,OAAO,CAAC,MAAM,CAAC,aAAa;IAW5B,OAAO,CAAC,MAAM,CAAC,UAAU;IAazB,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAIpC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAIrC,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAwC1C,mEAAmE;IACnE,OAAO,CAAC,SAAS;IAIjB;;;;;;;;OAQG;IACH,OAAO,CAAC,aAAa;CAGtB"}
|
package/dist/memory/shared.js
CHANGED
|
@@ -13,6 +13,7 @@ import { InMemoryStore } from './store.js';
|
|
|
13
13
|
const STORE_METHODS = ['get', 'set', 'list', 'delete', 'clear'];
|
|
14
14
|
const STRUCTURED_VALUE_ENCODING = 'json';
|
|
15
15
|
const STRUCTURED_VALUE_METADATA_KEY = 'sharedMemoryValueEncoding';
|
|
16
|
+
const RESERVED_STORE_PREFIXES = ['__oma_checkpoint__/'];
|
|
16
17
|
/**
|
|
17
18
|
* Returns true when `v` structurally implements {@link MemoryStore}.
|
|
18
19
|
*
|
|
@@ -95,6 +96,64 @@ export class SharedMemory {
|
|
|
95
96
|
getTurnCount() {
|
|
96
97
|
return this.turnCount;
|
|
97
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Restore the turn counter without rehydrating entries. Used on checkpoint
|
|
101
|
+
* resume when the shared-memory store is reused: the entries are already
|
|
102
|
+
* durable in the store, so only the counter needs restoring to keep TTL
|
|
103
|
+
* expiry correct.
|
|
104
|
+
*/
|
|
105
|
+
setTurnCount(turnCount) {
|
|
106
|
+
this.turnCount = turnCount;
|
|
107
|
+
}
|
|
108
|
+
// ---------------------------------------------------------------------------
|
|
109
|
+
// Snapshot / restore
|
|
110
|
+
// ---------------------------------------------------------------------------
|
|
111
|
+
/** Returns a serializable snapshot of all non-expired shared-memory entries. */
|
|
112
|
+
async snapshot() {
|
|
113
|
+
return {
|
|
114
|
+
version: 1,
|
|
115
|
+
turnCount: this.turnCount,
|
|
116
|
+
entries: this.filterExpired(await this.store.list()).map(SharedMemory.entryToSnapshot),
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Rebuilds a {@link SharedMemory} instance from a snapshot.
|
|
121
|
+
*
|
|
122
|
+
* Snapshot entry values remain string-only at the {@link MemoryStore}
|
|
123
|
+
* boundary; structured values are recovered through their metadata when read.
|
|
124
|
+
*/
|
|
125
|
+
static async fromSnapshot(snapshot, store) {
|
|
126
|
+
const memory = new SharedMemory(store);
|
|
127
|
+
await memory.restore(snapshot);
|
|
128
|
+
return memory;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Restores this instance from a snapshot. Existing non-checkpoint entries in
|
|
132
|
+
* the backing store are replaced; reserved checkpoint records are preserved
|
|
133
|
+
* so the same store can hold both agent memory and checkpoints.
|
|
134
|
+
*/
|
|
135
|
+
async restore(snapshot) {
|
|
136
|
+
if (snapshot.version !== 1) {
|
|
137
|
+
throw new Error(`SharedMemory.restore: unsupported snapshot version ${String(snapshot.version)}.`);
|
|
138
|
+
}
|
|
139
|
+
const existing = await this.store.list();
|
|
140
|
+
for (const entry of existing) {
|
|
141
|
+
if (!SharedMemory.isReservedStoreKey(entry.key)) {
|
|
142
|
+
await this.store.delete(entry.key);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
for (const entry of snapshot.entries) {
|
|
146
|
+
if (SharedMemory.isReservedStoreKey(entry.key))
|
|
147
|
+
continue;
|
|
148
|
+
if (entry.expiresAtTurn !== undefined && typeof this.store.setWithExpiry === 'function') {
|
|
149
|
+
await this.store.setWithExpiry(entry.key, entry.value, entry.expiresAtTurn, entry.metadata);
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
await this.store.set(entry.key, entry.value, entry.metadata);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
this.turnCount = snapshot.turnCount;
|
|
156
|
+
}
|
|
98
157
|
// ---------------------------------------------------------------------------
|
|
99
158
|
// Write
|
|
100
159
|
// ---------------------------------------------------------------------------
|
|
@@ -175,6 +234,8 @@ export class SharedMemory {
|
|
|
175
234
|
* without the risk of stomping on a fresh write to the same key.
|
|
176
235
|
*/
|
|
177
236
|
async read(key) {
|
|
237
|
+
if (SharedMemory.isReservedStoreKey(key))
|
|
238
|
+
return null;
|
|
178
239
|
const entry = await this.store.get(key);
|
|
179
240
|
if (entry === null)
|
|
180
241
|
return null;
|
|
@@ -281,6 +342,18 @@ export class SharedMemory {
|
|
|
281
342
|
static namespaceKey(agentName, key) {
|
|
282
343
|
return `${agentName}/${key}`;
|
|
283
344
|
}
|
|
345
|
+
static isReservedStoreKey(key) {
|
|
346
|
+
return RESERVED_STORE_PREFIXES.some((prefix) => key.startsWith(prefix));
|
|
347
|
+
}
|
|
348
|
+
static entryToSnapshot(entry) {
|
|
349
|
+
return {
|
|
350
|
+
key: entry.key,
|
|
351
|
+
value: entry.value,
|
|
352
|
+
...(entry.metadata !== undefined ? { metadata: { ...entry.metadata } } : {}),
|
|
353
|
+
createdAt: entry.createdAt.toISOString(),
|
|
354
|
+
...(entry.expiresAtTurn !== undefined ? { expiresAtTurn: entry.expiresAtTurn } : {}),
|
|
355
|
+
};
|
|
356
|
+
}
|
|
284
357
|
static serializeValue(value, options) {
|
|
285
358
|
if (options?.schema) {
|
|
286
359
|
const result = options.schema.safeParse(value);
|
|
@@ -371,7 +444,7 @@ export class SharedMemory {
|
|
|
371
444
|
* `expiresAtTurn` are always kept.
|
|
372
445
|
*/
|
|
373
446
|
filterExpired(entries) {
|
|
374
|
-
return entries.filter((entry) => !this.isExpired(entry));
|
|
447
|
+
return entries.filter((entry) => !SharedMemory.isReservedStoreKey(entry.key) && !this.isExpired(entry));
|
|
375
448
|
}
|
|
376
449
|
}
|
|
377
450
|
//# sourceMappingURL=shared.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/memory/shared.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/memory/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
* - **Progress callbacks** — Callers can pass `onProgress` in the config to receive
|
|
41
41
|
* structured {@link OrchestratorEvent}s without polling.
|
|
42
42
|
*/
|
|
43
|
-
import type { AgentConfig, AgentRunResult, ConsensusOptions, ConsensusResult,
|
|
43
|
+
import type { AgentConfig, AgentRunResult, ConsensusOptions, ConsensusResult, PlanArtifact, OrchestratorConfig, RestoreOptions, RunTaskSpec, RunTasksOptions, RunTeamOptions, Task, TeamConfig, TeamRunResult } from '../types.js';
|
|
44
44
|
import { Team } from '../team/team.js';
|
|
45
45
|
/**
|
|
46
46
|
* Determine whether a goal is simple enough to skip coordinator decomposition.
|
|
@@ -106,6 +106,7 @@ export declare function executeWithRetry(run: () => Promise<AgentRunResult>, tas
|
|
|
106
106
|
export declare class OpenMultiAgent {
|
|
107
107
|
private readonly config;
|
|
108
108
|
private readonly teams;
|
|
109
|
+
private readonly fallbackCheckpointStore;
|
|
109
110
|
private completedTaskCount;
|
|
110
111
|
/**
|
|
111
112
|
* @param config - Optional top-level configuration.
|
|
@@ -176,12 +177,30 @@ export declare class OpenMultiAgent {
|
|
|
176
177
|
*
|
|
177
178
|
* Task IDs, dependencies, assignees, titles, and descriptions are used exactly
|
|
178
179
|
* as stored in the artifact. This is intentionally execution-only; it does not
|
|
179
|
-
* synthesize a coordinator final answer
|
|
180
|
-
*
|
|
180
|
+
* synthesize a coordinator final answer. Durable checkpoints are available
|
|
181
|
+
* through the same opt-in `checkpoint` option used by `runTasks`.
|
|
181
182
|
*/
|
|
182
|
-
runFromPlan(team: Team, plan: PlanArtifact, options?:
|
|
183
|
-
|
|
184
|
-
|
|
183
|
+
runFromPlan(team: Team, plan: PlanArtifact, options?: RunTasksOptions): Promise<TeamRunResult>;
|
|
184
|
+
/**
|
|
185
|
+
* Resume a checkpointed run, or start a fresh one when no checkpoint exists.
|
|
186
|
+
*
|
|
187
|
+
* Loads the latest checkpoint from the configured {@link MemoryStore}, rebuilds
|
|
188
|
+
* the task queue and shared memory, skips already-completed tasks, and runs the
|
|
189
|
+
* remainder. When no checkpoint is found the call falls back to a normal run of
|
|
190
|
+
* the provided tasks/plan (or a no-op when neither is given).
|
|
191
|
+
*
|
|
192
|
+
* A resumed `runTeam` run re-runs the coordinator synthesis so the result
|
|
193
|
+
* matches a fresh `runTeam` (a synthesized final answer under the
|
|
194
|
+
* `'coordinator'` key in `agentResults`, not just raw per-task outputs).
|
|
195
|
+
* Re-supply the coordinator via `options.coordinator` — the checkpoint cannot
|
|
196
|
+
* persist a live adapter. If no usable coordinator config is available or the
|
|
197
|
+
* synthesis call fails, restore falls back to raw outputs and emits an
|
|
198
|
+
* `onProgress` `synthesis_failed` event. A restored `runTasks`/`runFromPlan`
|
|
199
|
+
* run never synthesizes; pass the original tasks/plan to resume it unchanged.
|
|
200
|
+
*/
|
|
201
|
+
restore(team: Team, tasks: ReadonlyArray<RunTaskSpec>, options?: RestoreOptions): Promise<TeamRunResult>;
|
|
202
|
+
restore(team: Team, plan: PlanArtifact, options?: RestoreOptions): Promise<TeamRunResult>;
|
|
203
|
+
restore(team: Team, options?: RestoreOptions): Promise<TeamRunResult>;
|
|
185
204
|
/**
|
|
186
205
|
* Run a team with an explicitly provided task list.
|
|
187
206
|
*
|
|
@@ -192,19 +211,7 @@ export declare class OpenMultiAgent {
|
|
|
192
211
|
* @param team - A team created via {@link createTeam}.
|
|
193
212
|
* @param tasks - Array of task descriptors.
|
|
194
213
|
*/
|
|
195
|
-
runTasks(team: Team, tasks: ReadonlyArray<
|
|
196
|
-
title: string;
|
|
197
|
-
description: string;
|
|
198
|
-
assignee?: string;
|
|
199
|
-
dependsOn?: string[];
|
|
200
|
-
memoryScope?: 'dependencies' | 'all';
|
|
201
|
-
maxRetries?: number;
|
|
202
|
-
retryDelayMs?: number;
|
|
203
|
-
retryBackoff?: number;
|
|
204
|
-
role?: string;
|
|
205
|
-
priority?: 'low' | 'normal' | 'high' | 'critical';
|
|
206
|
-
verify?: ConsensusVerifyOptions;
|
|
207
|
-
}>, options?: RunTasksOptions): Promise<TeamRunResult>;
|
|
214
|
+
runTasks(team: Team, tasks: ReadonlyArray<RunTaskSpec>, options?: RunTasksOptions): Promise<TeamRunResult>;
|
|
208
215
|
/**
|
|
209
216
|
* Run a proposer→judge consensus over a single prompt.
|
|
210
217
|
*
|
|
@@ -249,10 +256,28 @@ export declare class OpenMultiAgent {
|
|
|
249
256
|
private buildCoordinatorSynthesisSection;
|
|
250
257
|
/** Build the decomposition prompt for the coordinator. */
|
|
251
258
|
private buildDecompositionPrompt;
|
|
259
|
+
/**
|
|
260
|
+
* Build the base coordinator {@link AgentConfig} shared by the decomposition
|
|
261
|
+
* and synthesis passes. Falls back to orchestrator defaults for any field the
|
|
262
|
+
* caller's {@link CoordinatorConfig} leaves unset.
|
|
263
|
+
*/
|
|
264
|
+
private buildCoordinatorBaseConfig;
|
|
265
|
+
/**
|
|
266
|
+
* Run the coordinator synthesis pass over completed task results. Returns the
|
|
267
|
+
* synthesis result plus updated cumulative usage, or `null` when synthesis is
|
|
268
|
+
* skipped (run aborted, or the token budget was already exhausted before the
|
|
269
|
+
* pass). Emits `budget_exceeded` (when synthesis tips over budget) and
|
|
270
|
+
* `agent_complete`, mirroring the inline `runTeam` path. Does not mutate
|
|
271
|
+
* `agentResults` — the caller records the `'coordinator'` entry.
|
|
272
|
+
*/
|
|
273
|
+
private runCoordinatorSynthesis;
|
|
252
274
|
/** Build the synthesis prompt shown to the coordinator after all tasks complete. */
|
|
253
275
|
private buildSynthesisPrompt;
|
|
254
276
|
private tasksFromPlan;
|
|
255
277
|
private executeExplicitTaskQueue;
|
|
278
|
+
private createActiveCheckpoint;
|
|
279
|
+
private agentResultsFromCheckpoint;
|
|
280
|
+
private isPlanArtifact;
|
|
256
281
|
/**
|
|
257
282
|
* Load a list of task specs into a queue.
|
|
258
283
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
|