pilotswarm-sdk 0.3.1 → 0.3.2

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 (101) hide show
  1. package/dist/cms-migrations.d.ts.map +1 -1
  2. package/dist/cms-migrations.js +840 -1
  3. package/dist/cms-migrations.js.map +1 -1
  4. package/dist/cms.d.ts +31 -1
  5. package/dist/cms.d.ts.map +1 -1
  6. package/dist/cms.js +46 -1
  7. package/dist/cms.js.map +1 -1
  8. package/dist/index.d.ts +1 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/inspect-tools.d.ts.map +1 -1
  11. package/dist/inspect-tools.js +27 -0
  12. package/dist/inspect-tools.js.map +1 -1
  13. package/dist/managed-session.d.ts +1 -0
  14. package/dist/managed-session.d.ts.map +1 -1
  15. package/dist/managed-session.js +243 -21
  16. package/dist/managed-session.js.map +1 -1
  17. package/dist/management-client.d.ts +14 -1
  18. package/dist/management-client.d.ts.map +1 -1
  19. package/dist/management-client.js +49 -1
  20. package/dist/management-client.js.map +1 -1
  21. package/dist/orchestration/index.d.ts +2 -2
  22. package/dist/orchestration/index.js +1 -1
  23. package/dist/orchestration/lifecycle.d.ts.map +1 -1
  24. package/dist/orchestration/lifecycle.js +74 -4
  25. package/dist/orchestration/lifecycle.js.map +1 -1
  26. package/dist/orchestration/runtime.d.ts +1 -1
  27. package/dist/orchestration/state.d.ts +1 -0
  28. package/dist/orchestration/state.d.ts.map +1 -1
  29. package/dist/orchestration/state.js +1 -0
  30. package/dist/orchestration/state.js.map +1 -1
  31. package/dist/orchestration/turn.d.ts +11 -0
  32. package/dist/orchestration/turn.d.ts.map +1 -1
  33. package/dist/orchestration/turn.js +61 -4
  34. package/dist/orchestration/turn.js.map +1 -1
  35. package/dist/orchestration-registry.d.ts.map +1 -1
  36. package/dist/orchestration-registry.js +4 -2
  37. package/dist/orchestration-registry.js.map +1 -1
  38. package/dist/orchestration-version.d.ts +1 -1
  39. package/dist/orchestration-version.js +1 -1
  40. package/dist/orchestration.d.ts +2 -2
  41. package/dist/orchestration.js +1 -1
  42. package/dist/orchestration_1_0_46.d.ts +1 -1
  43. package/dist/orchestration_1_0_47.d.ts +1 -1
  44. package/dist/orchestration_1_0_48.d.ts +1 -1
  45. package/dist/orchestration_1_0_49.d.ts +1 -1
  46. package/dist/orchestration_1_0_50.d.ts +1 -1
  47. package/dist/orchestration_1_0_54/agents.d.ts +41 -0
  48. package/dist/orchestration_1_0_54/agents.d.ts.map +1 -0
  49. package/dist/orchestration_1_0_54/agents.js +758 -0
  50. package/dist/orchestration_1_0_54/agents.js.map +1 -0
  51. package/dist/orchestration_1_0_54/index.d.ts +24 -0
  52. package/dist/orchestration_1_0_54/index.d.ts.map +1 -0
  53. package/dist/orchestration_1_0_54/index.js +13 -0
  54. package/dist/orchestration_1_0_54/index.js.map +1 -0
  55. package/dist/orchestration_1_0_54/lifecycle.d.ts +41 -0
  56. package/dist/orchestration_1_0_54/lifecycle.d.ts.map +1 -0
  57. package/dist/orchestration_1_0_54/lifecycle.js +510 -0
  58. package/dist/orchestration_1_0_54/lifecycle.js.map +1 -0
  59. package/dist/orchestration_1_0_54/queue.d.ts +7 -0
  60. package/dist/orchestration_1_0_54/queue.d.ts.map +1 -0
  61. package/dist/orchestration_1_0_54/queue.js +644 -0
  62. package/dist/orchestration_1_0_54/queue.js.map +1 -0
  63. package/dist/orchestration_1_0_54/runtime.d.ts +29 -0
  64. package/dist/orchestration_1_0_54/runtime.d.ts.map +1 -0
  65. package/dist/orchestration_1_0_54/runtime.js +194 -0
  66. package/dist/orchestration_1_0_54/runtime.js.map +1 -0
  67. package/dist/orchestration_1_0_54/state.d.ts +125 -0
  68. package/dist/orchestration_1_0_54/state.d.ts.map +1 -0
  69. package/dist/orchestration_1_0_54/state.js +105 -0
  70. package/dist/orchestration_1_0_54/state.js.map +1 -0
  71. package/dist/orchestration_1_0_54/turn.d.ts +6 -0
  72. package/dist/orchestration_1_0_54/turn.d.ts.map +1 -0
  73. package/dist/orchestration_1_0_54/turn.js +864 -0
  74. package/dist/orchestration_1_0_54/turn.js.map +1 -0
  75. package/dist/orchestration_1_0_54/utils.d.ts +22 -0
  76. package/dist/orchestration_1_0_54/utils.d.ts.map +1 -0
  77. package/dist/orchestration_1_0_54/utils.js +226 -0
  78. package/dist/orchestration_1_0_54/utils.js.map +1 -0
  79. package/dist/session-manager.d.ts +4 -0
  80. package/dist/session-manager.d.ts.map +1 -1
  81. package/dist/session-manager.js +22 -0
  82. package/dist/session-manager.js.map +1 -1
  83. package/dist/session-proxy.d.ts +12 -0
  84. package/dist/session-proxy.d.ts.map +1 -1
  85. package/dist/session-proxy.js +137 -13
  86. package/dist/session-proxy.js.map +1 -1
  87. package/dist/sweeper-tools.d.ts +1 -1
  88. package/dist/sweeper-tools.d.ts.map +1 -1
  89. package/dist/sweeper-tools.js +20 -75
  90. package/dist/sweeper-tools.js.map +1 -1
  91. package/dist/system-agents.d.ts +2 -0
  92. package/dist/system-agents.d.ts.map +1 -1
  93. package/dist/system-agents.js +3 -0
  94. package/dist/system-agents.js.map +1 -1
  95. package/dist/types.d.ts +14 -1
  96. package/dist/types.d.ts.map +1 -1
  97. package/dist/types.js.map +1 -1
  98. package/package.json +2 -2
  99. package/plugins/mgmt/agents/agent-tuner.agent.md +36 -2
  100. package/plugins/mgmt/agents/sweeper.agent.md +7 -7
  101. package/plugins/system/agents/default.agent.md +3 -1
@@ -0,0 +1,510 @@
1
+ import { describeCronAt } from "../cron-at.js";
2
+ import { COMMAND_VERSION_KEY, RESPONSE_LATEST_KEY, RESPONSE_VERSION_KEY, commandResponseKey, } from "../types.js";
3
+ import { createSessionProxy } from "../session-proxy.js";
4
+ import { beginGracefulShutdown, } from "./agents.js";
5
+ import { FIRST_SUMMARIZE_DELAY, INTERNAL_SYSTEM_TURN_PROMPT, REPEAT_SUMMARIZE_DELAY, } from "./state.js";
6
+ import { appendSystemContext, extractPromptSystemContext, mergePrompt, } from "./utils.js";
7
+ // ─── Custom status / KV helpers ─────────────────────────────
8
+ export function publishStatus(runtime, status, extra = {}) {
9
+ const { state } = runtime;
10
+ const signal = {
11
+ status,
12
+ iteration: state.iteration,
13
+ ...(state.lastResponseVersion > 0 ? { responseVersion: state.lastResponseVersion } : {}),
14
+ ...(state.lastCommandVersion > 0 ? { commandVersion: state.lastCommandVersion } : {}),
15
+ ...(state.lastCommandId ? { commandId: state.lastCommandId } : {}),
16
+ ...(state.cronAtSchedule
17
+ ? {
18
+ cronActive: true,
19
+ cronKind: "wall-clock",
20
+ cronReason: state.cronAtSchedule.reason,
21
+ cronNextFireAt: state.cronAtSchedule.nextFireAtMs,
22
+ cronTimezone: state.cronAtSchedule.tz,
23
+ cronMaxFires: state.cronAtSchedule.maxFires,
24
+ cronFiresCompleted: state.cronAtSchedule.firesCompleted,
25
+ }
26
+ : state.cronSchedule
27
+ ? {
28
+ cronActive: true,
29
+ cronKind: "interval",
30
+ cronInterval: state.cronSchedule.intervalSeconds,
31
+ cronReason: state.cronSchedule.reason,
32
+ }
33
+ : { cronActive: false }),
34
+ ...(state.contextUsage ? { contextUsage: state.contextUsage } : {}),
35
+ ...extra,
36
+ };
37
+ runtime.ctx.setCustomStatus(JSON.stringify(signal));
38
+ }
39
+ function writeJsonValue(ctx, key, value) {
40
+ ctx.setValue(key, JSON.stringify(value));
41
+ }
42
+ export function readCounter(ctx, key) {
43
+ const raw = ctx.getValue(key);
44
+ if (raw == null)
45
+ return 0;
46
+ const parsed = Number(raw);
47
+ return Number.isFinite(parsed) ? parsed : 0;
48
+ }
49
+ function bumpCounter(ctx, key) {
50
+ const next = readCounter(ctx, key) + 1;
51
+ ctx.setValue(key, String(next));
52
+ return next;
53
+ }
54
+ export function* writeLatestResponse(runtime, payload) {
55
+ const version = bumpCounter(runtime.ctx, RESPONSE_VERSION_KEY);
56
+ const emittedAt = yield runtime.ctx.utcNow();
57
+ const responsePayload = {
58
+ schemaVersion: 1,
59
+ version,
60
+ emittedAt,
61
+ ...payload,
62
+ };
63
+ writeJsonValue(runtime.ctx, RESPONSE_LATEST_KEY, responsePayload);
64
+ runtime.state.lastResponseVersion = version;
65
+ return responsePayload;
66
+ }
67
+ export function* writeCommandResponse(runtime, response) {
68
+ const version = bumpCounter(runtime.ctx, COMMAND_VERSION_KEY);
69
+ const emittedAt = yield runtime.ctx.utcNow();
70
+ const payload = {
71
+ ...response,
72
+ schemaVersion: 1,
73
+ version,
74
+ emittedAt,
75
+ };
76
+ writeJsonValue(runtime.ctx, commandResponseKey(response.id), payload);
77
+ runtime.state.lastCommandVersion = version;
78
+ runtime.state.lastCommandId = response.id;
79
+ yield runtime.manager.recordSessionEvent(runtime.input.sessionId, [{
80
+ eventType: "session.command_completed",
81
+ data: { cmd: response.cmd, id: response.id },
82
+ }]);
83
+ return payload;
84
+ }
85
+ // ─── Hydration / dehydration / checkpointing ────────────────
86
+ export function wrapWithResumeContext(runtime, userPrompt, extra) {
87
+ const base = runtime.state.pendingRehydrationMessage ??
88
+ `The session was dehydrated and has been rehydrated on a new worker. ` +
89
+ `The LLM conversation history is preserved.`;
90
+ runtime.state.pendingRehydrationMessage = undefined;
91
+ const parts = [userPrompt, ``, `[SYSTEM: ${base}`];
92
+ if (extra)
93
+ parts.push(extra);
94
+ parts.push(`]`);
95
+ return parts.join("\n");
96
+ }
97
+ export function* dehydrateForNextTurn(runtime, reason, resetAffinity = true, eventData) {
98
+ const { ctx, state } = runtime;
99
+ if (state.needsHydration) {
100
+ ctx.traceInfo(`[orch] skipping dehydrate (reason=${reason}) because the session is already marked dehydrated`);
101
+ state.activeTimer = null;
102
+ return;
103
+ }
104
+ if (state.lastLiveSessionAction === "dehydrate") {
105
+ ctx.traceInfo(`[orch] skipping redundant dehydrate (reason=${reason}) because the last live-session action was already dehydrate`);
106
+ state.activeTimer = null;
107
+ return;
108
+ }
109
+ ctx.traceInfo(`[orch] dehydrating session (reason=${reason}, resetAffinity=${resetAffinity})`);
110
+ state.activeTimer = null;
111
+ state.lastLiveSessionAction = "dehydrate";
112
+ const dehydrateResult = yield runtime.session.dehydrate(reason, eventData);
113
+ const lossyHandoff = dehydrateResult?.lossyHandoff;
114
+ if (lossyHandoff && typeof lossyHandoff === "object") {
115
+ const lossyMessage = String(lossyHandoff.message || "dehydrate lost the live Copilot session state");
116
+ ctx.traceInfo(`[orch] ${lossyMessage}`);
117
+ state.needsHydration = false;
118
+ state.preserveAffinityOnHydrate = false;
119
+ if (resetAffinity) {
120
+ state.affinityKey = yield ctx.newGuid();
121
+ runtime.session = createSessionProxy(ctx, runtime.input.sessionId, state.affinityKey, state.config);
122
+ }
123
+ return;
124
+ }
125
+ state.needsHydration = true;
126
+ state.preserveAffinityOnHydrate = !resetAffinity;
127
+ if (resetAffinity) {
128
+ state.affinityKey = yield ctx.newGuid();
129
+ runtime.session = createSessionProxy(ctx, runtime.input.sessionId, state.affinityKey, state.config);
130
+ }
131
+ }
132
+ export function* maybeCheckpoint(runtime) {
133
+ if (!runtime.state.blobEnabled || runtime.options.checkpointInterval < 0)
134
+ return;
135
+ try {
136
+ runtime.ctx.traceInfo(`[orch] checkpoint (iteration=${runtime.state.iteration})`);
137
+ yield runtime.session.checkpoint();
138
+ }
139
+ catch (err) {
140
+ runtime.ctx.traceInfo(`[orch] checkpoint failed: ${err.message ?? err}`);
141
+ }
142
+ }
143
+ export function* maybeSummarize(runtime) {
144
+ if (runtime.options.isSystem)
145
+ return;
146
+ const now = yield runtime.ctx.utcNow();
147
+ if (runtime.state.nextSummarizeAt === 0) {
148
+ runtime.state.nextSummarizeAt = now + FIRST_SUMMARIZE_DELAY;
149
+ return;
150
+ }
151
+ if (now < runtime.state.nextSummarizeAt)
152
+ return;
153
+ try {
154
+ runtime.ctx.traceInfo(`[orch] summarizing session title`);
155
+ yield runtime.manager.summarizeSession(runtime.input.sessionId);
156
+ }
157
+ catch (err) {
158
+ runtime.ctx.traceInfo(`[orch] summarize failed: ${err.message}`);
159
+ }
160
+ runtime.state.nextSummarizeAt = now + REPEAT_SUMMARIZE_DELAY;
161
+ }
162
+ // ─── Task context / cron action helpers ─────────────────────
163
+ export function ensureTaskContext(runtime, sourcePrompt) {
164
+ if (runtime.state.taskContext || !sourcePrompt)
165
+ return;
166
+ runtime.state.taskContext = sourcePrompt.slice(0, 2000);
167
+ const base = typeof runtime.options.baseSystemMessage === "string"
168
+ ? runtime.options.baseSystemMessage ?? ""
169
+ : runtime.options.baseSystemMessage?.content ?? "";
170
+ runtime.state.config.systemMessage = base + (base ? "\n\n" : "") +
171
+ "[RECURRING TASK]\n" +
172
+ "Original user request (always remember, even if conversation history is truncated):\n\"" +
173
+ runtime.state.taskContext + "\"";
174
+ }
175
+ export function applyCronAction(runtime, action, sourcePrompt) {
176
+ runtime.state.interruptedCronTimer = null;
177
+ if (action.action === "cancel") {
178
+ runtime.ctx.traceInfo("[orch] cron cancelled");
179
+ runtime.state.cronSchedule = undefined;
180
+ runtime.state.cronAtSchedule = undefined;
181
+ return;
182
+ }
183
+ ensureTaskContext(runtime, sourcePrompt);
184
+ runtime.state.cronAtSchedule = undefined;
185
+ runtime.state.cronSchedule = {
186
+ intervalSeconds: action.intervalSeconds,
187
+ reason: action.reason,
188
+ };
189
+ runtime.ctx.traceInfo(`[orch] cron scheduled: every ${action.intervalSeconds}s (${action.reason})`);
190
+ }
191
+ export function* applyCronAtAction(runtime, action, sourcePrompt) {
192
+ runtime.state.interruptedCronTimer = null;
193
+ if (action.action === "cancel") {
194
+ runtime.ctx.traceInfo("[orch] cron_at cancelled");
195
+ runtime.state.cronAtSchedule = undefined;
196
+ runtime.state.cronSchedule = undefined;
197
+ yield runtime.manager.recordSessionEvent(runtime.input.sessionId, [{
198
+ eventType: "session.cron_at_cancelled",
199
+ data: {},
200
+ }]);
201
+ return;
202
+ }
203
+ ensureTaskContext(runtime, sourcePrompt);
204
+ const afterUtcMs = yield runtime.ctx.utcNow();
205
+ const nextFire = yield runtime.manager.computeCronAtNextFire(action.schedule, afterUtcMs, action.schedule.lastOccurrenceKey);
206
+ runtime.state.cronSchedule = undefined;
207
+ runtime.state.cronAtSchedule = {
208
+ ...action.schedule,
209
+ firesCompleted: action.schedule.firesCompleted ?? 0,
210
+ nextFireAtMs: nextFire.nextFireAtMs,
211
+ nextOccurrenceKey: nextFire.occurrenceKey,
212
+ };
213
+ runtime.ctx.traceInfo(`[orch] cron_at scheduled: ${describeCronAt(runtime.state.cronAtSchedule)} (${runtime.state.cronAtSchedule.reason})`);
214
+ yield runtime.manager.recordSessionEvent(runtime.input.sessionId, [{
215
+ eventType: "session.cron_at_scheduled",
216
+ data: {
217
+ ...runtime.state.cronAtSchedule,
218
+ nextFireAt: new Date(nextFire.nextFireAtMs).toISOString(),
219
+ localTime: nextFire.localTime,
220
+ skippedOccurrences: nextFire.skippedOccurrences,
221
+ },
222
+ }]);
223
+ }
224
+ export function* drainLeadingQueuedScheduleActions(runtime, sourcePrompt) {
225
+ while (runtime.state.pendingToolActions[0]?.type === "cron" || runtime.state.pendingToolActions[0]?.type === "cron_at") {
226
+ const action = runtime.state.pendingToolActions.shift();
227
+ if (action.type === "cron") {
228
+ applyCronAction(runtime, action, sourcePrompt);
229
+ }
230
+ else {
231
+ yield* applyCronAtAction(runtime, action, sourcePrompt);
232
+ }
233
+ }
234
+ }
235
+ export const drainLeadingQueuedCronActions = drainLeadingQueuedScheduleActions;
236
+ // ─── Cancellation tombstone helpers ─────────────────────────
237
+ export function promptIdsIntersectCancellation(runtime, ids) {
238
+ return ids.length > 0 && ids.some((id) => runtime.state.cancelledMessageIds.has(id));
239
+ }
240
+ export function* recordCancelledMessageIds(runtime, ids, reason) {
241
+ const nextIds = ids.filter((id) => id && !runtime.state.emittedCancelledMessageIds.has(id));
242
+ if (nextIds.length === 0)
243
+ return;
244
+ for (const id of nextIds)
245
+ runtime.state.emittedCancelledMessageIds.add(id);
246
+ yield runtime.manager.recordSessionEvent(runtime.input.sessionId, [{
247
+ eventType: "pending_messages.cancelled",
248
+ data: {
249
+ clientMessageIds: nextIds,
250
+ reason,
251
+ },
252
+ }]);
253
+ }
254
+ // ─── Pending child-digest accumulation ──────────────────────
255
+ export function bufferChildUpdate(runtime, update, observedAtMs) {
256
+ if (!runtime.state.pendingChildDigest) {
257
+ runtime.state.pendingChildDigest = {
258
+ startedAtMs: observedAtMs,
259
+ updates: [],
260
+ };
261
+ }
262
+ const nextEntry = {
263
+ sessionId: update.sessionId,
264
+ updateType: update.updateType,
265
+ ...(update.content ? { content: update.content.slice(0, 2000) } : {}),
266
+ ...(update.cycleOrigin ? { cycleOrigin: update.cycleOrigin } : {}),
267
+ ...(update.cycleStatus ? { cycleStatus: update.cycleStatus } : {}),
268
+ ...(update.verdict ? { verdict: update.verdict } : {}),
269
+ observedAtMs,
270
+ };
271
+ const existingIndex = runtime.state.pendingChildDigest.updates.findIndex((entry) => entry.sessionId === update.sessionId);
272
+ if (existingIndex >= 0) {
273
+ runtime.state.pendingChildDigest.updates[existingIndex] = nextEntry;
274
+ }
275
+ else {
276
+ runtime.state.pendingChildDigest.updates.push(nextEntry);
277
+ }
278
+ }
279
+ export function clearPendingChildDigest(runtime) {
280
+ runtime.state.pendingChildDigest = null;
281
+ }
282
+ export function buildPendingChildDigestSystemPrompt(runtime) {
283
+ const digest = runtime.state.pendingChildDigest;
284
+ if (!digest || digest.updates.length === 0)
285
+ return undefined;
286
+ const lines = digest.updates.map((update) => {
287
+ const agent = runtime.state.subAgents.find((entry) => entry.sessionId === update.sessionId);
288
+ const label = agent?.orchId ?? update.sessionId;
289
+ const task = agent?.task ? `Task: "${agent.task.slice(0, 120)}"\n` : "";
290
+ const status = agent?.status ?? update.updateType;
291
+ const resultText = String(update.content || agent?.result || "").trim();
292
+ const result = resultText ? resultText.slice(0, 240) : "(no summary)";
293
+ return ` - Agent ${label}\n` +
294
+ ` ${task}` +
295
+ ` Update: ${update.updateType}\n` +
296
+ ` Status: ${status}\n` +
297
+ ` Result: ${result}`;
298
+ });
299
+ return `Buffered child updates arrived during the last 30 seconds:\n${lines.join("\n")}\nReview the updates and continue your task.`;
300
+ }
301
+ export function flushPendingChildDigestIntoPrompt(runtime, rawPrompt) {
302
+ const childDigestPrompt = buildPendingChildDigestSystemPrompt(runtime);
303
+ if (!childDigestPrompt)
304
+ return rawPrompt;
305
+ clearPendingChildDigest(runtime);
306
+ return appendSystemContext(rawPrompt, childDigestPrompt);
307
+ }
308
+ // ─── Followup queueing ──────────────────────────────────────
309
+ export function queueFollowup(runtime, nextPrompt) {
310
+ let text = nextPrompt;
311
+ const trimmed = text.trim();
312
+ if (trimmed.startsWith("[SYSTEM:") && trimmed.endsWith("]")) {
313
+ text = trimmed.slice("[SYSTEM:".length, -1).trim();
314
+ }
315
+ runtime.state.pendingPrompt = mergePrompt(runtime.state.pendingPrompt, text);
316
+ }
317
+ // ─── Continue-as-new construction ───────────────────────────
318
+ export function buildContinueInput(runtime, overrides = {}) {
319
+ const { state, options, input } = runtime;
320
+ const { prompt: overridePrompt, requiredTool: overrideRequiredTool, systemPrompt: overrideSystemPrompt, cycleOrigin: overrideCycleOrigin, bootstrapPrompt: overrideBootstrapPrompt, rehydrationMessage: overrideRehydrationMessage, ...restOverrides } = overrides;
321
+ const carriedPrompt = overridePrompt ?? state.pendingPrompt;
322
+ const carriedRequiredTool = overrideRequiredTool ?? state.pendingRequiredTool;
323
+ const carriedSystemPrompt = overrideSystemPrompt ?? state.pendingSystemPrompt;
324
+ const carriedCycleOrigin = overrideCycleOrigin ?? state.pendingCycleOrigin;
325
+ const carriedRehydrationMessage = overrideRehydrationMessage ?? state.pendingRehydrationMessage;
326
+ const promptForInput = carriedPrompt
327
+ ?? (carriedSystemPrompt ? INTERNAL_SYSTEM_TURN_PROMPT : undefined);
328
+ const bootstrapForInput = overrideBootstrapPrompt
329
+ ?? (carriedPrompt ? state.bootstrapPrompt : carriedSystemPrompt ? true : undefined);
330
+ return {
331
+ sessionId: input.sessionId,
332
+ config: state.config,
333
+ iteration: state.iteration,
334
+ affinityKey: state.affinityKey,
335
+ preserveAffinityOnHydrate: state.preserveAffinityOnHydrate,
336
+ needsHydration: state.needsHydration,
337
+ blobEnabled: state.blobEnabled,
338
+ dehydrateThreshold: options.dehydrateThreshold,
339
+ idleTimeout: options.idleTimeout,
340
+ inputGracePeriod: options.inputGracePeriod,
341
+ checkpointInterval: options.checkpointInterval,
342
+ ...(carriedRehydrationMessage ? { rehydrationMessage: carriedRehydrationMessage } : {}),
343
+ nextSummarizeAt: state.nextSummarizeAt,
344
+ taskContext: state.taskContext,
345
+ baseSystemMessage: options.baseSystemMessage,
346
+ ...(state.cronSchedule ? { cronSchedule: state.cronSchedule } : {}),
347
+ ...(state.cronAtSchedule ? { cronAtSchedule: state.cronAtSchedule } : {}),
348
+ ...(state.contextUsage ? { contextUsage: state.contextUsage } : {}),
349
+ ...(carriedSystemPrompt ? { systemPrompt: carriedSystemPrompt } : {}),
350
+ ...(promptForInput ? { prompt: promptForInput } : {}),
351
+ ...(carriedRequiredTool ? { requiredTool: carriedRequiredTool } : {}),
352
+ ...(carriedCycleOrigin ? { cycleOrigin: carriedCycleOrigin } : {}),
353
+ ...(promptForInput && bootstrapForInput !== undefined ? { bootstrapPrompt: bootstrapForInput } : {}),
354
+ subAgents: state.subAgents,
355
+ ...(state.pendingToolActions.length > 0 ? { pendingToolActions: state.pendingToolActions } : {}),
356
+ parentSessionId: options.parentSessionId,
357
+ nestingLevel: options.nestingLevel,
358
+ ...(options.isSystem ? { isSystem: true } : {}),
359
+ ...(input.agentId ? { agentId: input.agentId } : {}),
360
+ retryCount: 0,
361
+ ...(state.pendingInputQuestion ? { pendingInputQuestion: state.pendingInputQuestion } : {}),
362
+ ...(state.waitingForAgentIds ? { waitingForAgentIds: state.waitingForAgentIds } : {}),
363
+ ...(state.interruptedWaitTimer ? { interruptedWaitTimer: state.interruptedWaitTimer } : {}),
364
+ ...(state.interruptedCronTimer ? { interruptedCronTimer: state.interruptedCronTimer } : {}),
365
+ ...(state.pendingChildDigest ? { pendingChildDigest: state.pendingChildDigest } : {}),
366
+ ...(state.pendingShutdown ? { pendingShutdown: state.pendingShutdown } : {}),
367
+ ...restOverrides,
368
+ };
369
+ }
370
+ export function buildContinueInputWithPrompt(runtime, nextPrompt, overrides = {}) {
371
+ const extracted = extractPromptSystemContext(nextPrompt);
372
+ const mergedPrompt = mergePrompt(runtime.state.pendingPrompt, extracted.prompt);
373
+ const mergedSystemPrompt = mergePrompt(runtime.state.pendingSystemPrompt, extracted.systemPrompt);
374
+ return buildContinueInput(runtime, {
375
+ ...(mergedPrompt ? { prompt: mergedPrompt } : {}),
376
+ ...(mergedSystemPrompt ? { systemPrompt: mergedSystemPrompt } : {}),
377
+ ...overrides,
378
+ });
379
+ }
380
+ function* checkpointBeforeWarmContinueAsNew(runtime) {
381
+ if (!runtime.state.blobEnabled)
382
+ return;
383
+ try {
384
+ runtime.ctx.traceInfo(`[orch] checkpoint before warm continueAsNew (iteration=${runtime.state.iteration})`);
385
+ yield runtime.session.checkpoint();
386
+ }
387
+ catch (err) {
388
+ runtime.ctx.traceInfo(`[orch] warm continueAsNew checkpoint failed: ${err.message ?? err}`);
389
+ }
390
+ }
391
+ /** Capture the active timer state into a continueAsNew input and yield the version-bumped CAN. */
392
+ export function* versionedContinueAsNew(runtime, canInput) {
393
+ const { state } = runtime;
394
+ if (state.activeTimer) {
395
+ const now = yield runtime.ctx.utcNow();
396
+ const remainingMs = Math.max(0, state.activeTimer.deadlineMs - now);
397
+ canInput.activeTimerState = {
398
+ remainingMs,
399
+ reason: state.activeTimer.reason,
400
+ type: state.activeTimer.type,
401
+ originalDurationMs: state.activeTimer.originalDurationMs,
402
+ ...(state.activeTimer.shouldRehydrate ? { shouldRehydrate: true } : {}),
403
+ ...(state.activeTimer.waitPlan ? { waitPlan: state.activeTimer.waitPlan } : {}),
404
+ ...(state.activeTimer.content ? { content: state.activeTimer.content } : {}),
405
+ ...(state.activeTimer.question ? { question: state.activeTimer.question } : {}),
406
+ ...(state.activeTimer.choices ? { choices: state.activeTimer.choices } : {}),
407
+ ...(state.activeTimer.allowFreeform !== undefined ? { allowFreeform: state.activeTimer.allowFreeform } : {}),
408
+ ...(state.activeTimer.agentIds ? { agentIds: state.activeTimer.agentIds } : {}),
409
+ };
410
+ }
411
+ if (!canInput.needsHydration) {
412
+ yield* checkpointBeforeWarmContinueAsNew(runtime);
413
+ }
414
+ canInput.sourceOrchestrationVersion = runtime.versions.currentVersion;
415
+ yield runtime.ctx.continueAsNewVersioned(canInput, runtime.versions.latestVersion);
416
+ }
417
+ export function continueInput(runtime, overrides = {}) {
418
+ return buildContinueInput(runtime, overrides);
419
+ }
420
+ export function continueInputWithPrompt(runtime, nextPrompt, overrides = {}) {
421
+ return buildContinueInputWithPrompt(runtime, nextPrompt, overrides);
422
+ }
423
+ // ─── Command handling ───────────────────────────────────────
424
+ export function* handleCommand(runtime, cmdMsg) {
425
+ runtime.ctx.traceInfo(`[orch-cmd] ${cmdMsg.cmd} id=${cmdMsg.id}`);
426
+ yield runtime.manager.recordSessionEvent(runtime.input.sessionId, [{
427
+ eventType: "session.command_received",
428
+ data: { cmd: cmdMsg.cmd, id: cmdMsg.id },
429
+ }]);
430
+ switch (cmdMsg.cmd) {
431
+ case "set_model": {
432
+ const newModel = String(cmdMsg.args?.model || "");
433
+ const oldModel = runtime.state.config.model || "(default)";
434
+ runtime.state.config = { ...runtime.state.config, model: newModel };
435
+ const resp = {
436
+ id: cmdMsg.id,
437
+ cmd: cmdMsg.cmd,
438
+ result: { ok: true, oldModel, newModel },
439
+ };
440
+ yield* writeCommandResponse(runtime, resp);
441
+ publishStatus(runtime, "idle");
442
+ yield* versionedContinueAsNew(runtime, continueInput(runtime));
443
+ return;
444
+ }
445
+ case "list_models": {
446
+ publishStatus(runtime, "idle", { cmdProcessing: cmdMsg.id });
447
+ let models;
448
+ try {
449
+ const raw = yield runtime.manager.listModels();
450
+ models = typeof raw === "string" ? JSON.parse(raw) : raw;
451
+ }
452
+ catch (err) {
453
+ const resp = {
454
+ id: cmdMsg.id,
455
+ cmd: cmdMsg.cmd,
456
+ error: err.message || String(err),
457
+ };
458
+ yield* writeCommandResponse(runtime, resp);
459
+ publishStatus(runtime, "idle");
460
+ return;
461
+ }
462
+ const resp = {
463
+ id: cmdMsg.id,
464
+ cmd: cmdMsg.cmd,
465
+ result: { models, currentModel: runtime.state.config.model },
466
+ };
467
+ yield* writeCommandResponse(runtime, resp);
468
+ publishStatus(runtime, "idle");
469
+ return;
470
+ }
471
+ case "get_info": {
472
+ const resp = {
473
+ id: cmdMsg.id,
474
+ cmd: cmdMsg.cmd,
475
+ result: {
476
+ model: runtime.state.config.model || "(default)",
477
+ iteration: runtime.state.iteration,
478
+ sessionId: runtime.input.sessionId,
479
+ affinityKey: runtime.state.affinityKey,
480
+ affinityKeyShort: runtime.state.affinityKey?.slice(0, 8),
481
+ preserveAffinityOnHydrate: runtime.state.preserveAffinityOnHydrate,
482
+ needsHydration: runtime.state.needsHydration,
483
+ blobEnabled: runtime.state.blobEnabled,
484
+ contextUsage: runtime.state.contextUsage,
485
+ },
486
+ };
487
+ yield* writeCommandResponse(runtime, resp);
488
+ publishStatus(runtime, "idle");
489
+ return;
490
+ }
491
+ case "done":
492
+ case "cancel":
493
+ case "delete": {
494
+ runtime.ctx.traceInfo(`[orch] ${cmdMsg.cmd} command received — beginning graceful ${cmdMsg.cmd}`);
495
+ yield* beginGracefulShutdown(runtime, cmdMsg.cmd, cmdMsg);
496
+ return;
497
+ }
498
+ default: {
499
+ const resp = {
500
+ id: cmdMsg.id,
501
+ cmd: cmdMsg.cmd,
502
+ error: `Unknown command: ${cmdMsg.cmd}`,
503
+ };
504
+ yield* writeCommandResponse(runtime, resp);
505
+ publishStatus(runtime, "idle");
506
+ return;
507
+ }
508
+ }
509
+ }
510
+ //# sourceMappingURL=lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/orchestration_1_0_54/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { OrchestrationInput } from "../types.js";
2
+ import { type DurableSessionRuntime } from "./state.js";
3
+ export declare function appendToFifo(runtime: DurableSessionRuntime, newItems: any[]): void;
4
+ export declare function drain(runtime: DurableSessionRuntime): Generator<any, void, any>;
5
+ export declare function decide(runtime: DurableSessionRuntime): Generator<any, boolean, any>;
6
+ export { OrchestrationInput };
7
+ //# sourceMappingURL=queue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/orchestration_1_0_54/queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,kBAAkB,EAAc,MAAM,aAAa,CAAC;AAkBlF,OAAO,EASH,KAAK,qBAAqB,EAE7B,MAAM,YAAY,CAAC;AAwBpB,wBAAgB,YAAY,CAAC,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAuBlF;AA8FD,wBAAiB,KAAK,CAAC,OAAO,EAAE,qBAAqB,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAqOhF;AAkGD,wBAAiB,MAAM,CAAC,OAAO,EAAE,qBAAqB,GAAG,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAkGpF;AAqID,OAAO,EAAE,kBAAkB,EAAE,CAAC"}