@polpo-ai/core 0.15.144 → 0.16.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.
Files changed (172) hide show
  1. package/README.md +30 -0
  2. package/dist/__tests__/custom-tool-runner.test.d.ts +2 -0
  3. package/dist/__tests__/custom-tool-runner.test.d.ts.map +1 -0
  4. package/dist/__tests__/custom-tool-runner.test.js +121 -0
  5. package/dist/__tests__/custom-tool-runner.test.js.map +1 -0
  6. package/dist/__tests__/mcp-runner-client.test.d.ts +2 -0
  7. package/dist/__tests__/mcp-runner-client.test.d.ts.map +1 -0
  8. package/dist/__tests__/mcp-runner-client.test.js +144 -0
  9. package/dist/__tests__/mcp-runner-client.test.js.map +1 -0
  10. package/dist/__tests__/mission-execution.test.d.ts +2 -0
  11. package/dist/__tests__/mission-execution.test.d.ts.map +1 -0
  12. package/dist/__tests__/mission-execution.test.js +68 -0
  13. package/dist/__tests__/mission-execution.test.js.map +1 -0
  14. package/dist/__tests__/run-state-monitor.test.d.ts +2 -0
  15. package/dist/__tests__/run-state-monitor.test.d.ts.map +1 -0
  16. package/dist/__tests__/run-state-monitor.test.js +59 -0
  17. package/dist/__tests__/run-state-monitor.test.js.map +1 -0
  18. package/dist/__tests__/runtime-metadata.test.d.ts +2 -0
  19. package/dist/__tests__/runtime-metadata.test.d.ts.map +1 -0
  20. package/dist/__tests__/runtime-metadata.test.js +17 -0
  21. package/dist/__tests__/runtime-metadata.test.js.map +1 -0
  22. package/dist/__tests__/task-execution-router.test.js +1 -1
  23. package/dist/__tests__/task-execution-router.test.js.map +1 -1
  24. package/dist/__tests__/task-runner-agent-lifetime.test.d.ts +2 -0
  25. package/dist/__tests__/task-runner-agent-lifetime.test.d.ts.map +1 -0
  26. package/dist/__tests__/task-runner-agent-lifetime.test.js +136 -0
  27. package/dist/__tests__/task-runner-agent-lifetime.test.js.map +1 -0
  28. package/dist/adapter.d.ts +18 -0
  29. package/dist/adapter.d.ts.map +1 -1
  30. package/dist/agent-manager.d.ts +3 -0
  31. package/dist/agent-manager.d.ts.map +1 -1
  32. package/dist/agent-manager.js +28 -2
  33. package/dist/agent-manager.js.map +1 -1
  34. package/dist/agent-store.d.ts +70 -1
  35. package/dist/agent-store.d.ts.map +1 -1
  36. package/dist/agent-store.js +103 -1
  37. package/dist/agent-store.js.map +1 -1
  38. package/dist/approval-manager.d.ts +24 -4
  39. package/dist/approval-manager.d.ts.map +1 -1
  40. package/dist/approval-manager.js +160 -112
  41. package/dist/approval-manager.js.map +1 -1
  42. package/dist/approval-manager.test.d.ts +2 -0
  43. package/dist/approval-manager.test.d.ts.map +1 -0
  44. package/dist/approval-manager.test.js +116 -0
  45. package/dist/approval-manager.test.js.map +1 -0
  46. package/dist/assessment-orchestrator.d.ts +12 -1
  47. package/dist/assessment-orchestrator.d.ts.map +1 -1
  48. package/dist/assessment-orchestrator.js +181 -83
  49. package/dist/assessment-orchestrator.js.map +1 -1
  50. package/dist/custom-tool-runner.d.ts +56 -0
  51. package/dist/custom-tool-runner.d.ts.map +1 -0
  52. package/dist/custom-tool-runner.js +197 -0
  53. package/dist/custom-tool-runner.js.map +1 -0
  54. package/dist/escalation-manager.d.ts +2 -0
  55. package/dist/escalation-manager.d.ts.map +1 -1
  56. package/dist/escalation-manager.js +79 -25
  57. package/dist/escalation-manager.js.map +1 -1
  58. package/dist/events.d.ts +4 -0
  59. package/dist/events.d.ts.map +1 -1
  60. package/dist/hooks.d.ts.map +1 -1
  61. package/dist/hooks.js +6 -0
  62. package/dist/hooks.js.map +1 -1
  63. package/dist/index.d.ts +19 -3
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +13 -1
  66. package/dist/index.js.map +1 -1
  67. package/dist/mcp-capability.d.ts +40 -0
  68. package/dist/mcp-capability.d.ts.map +1 -0
  69. package/dist/mcp-capability.js +2 -0
  70. package/dist/mcp-capability.js.map +1 -0
  71. package/dist/mcp-runner.d.ts +45 -0
  72. package/dist/mcp-runner.d.ts.map +1 -0
  73. package/dist/mcp-runner.js +238 -0
  74. package/dist/mcp-runner.js.map +1 -0
  75. package/dist/mission-cancellation.d.ts +14 -0
  76. package/dist/mission-cancellation.d.ts.map +1 -0
  77. package/dist/mission-cancellation.js +43 -0
  78. package/dist/mission-cancellation.js.map +1 -0
  79. package/dist/mission-execution.d.ts +103 -0
  80. package/dist/mission-execution.d.ts.map +1 -0
  81. package/dist/mission-execution.js +196 -0
  82. package/dist/mission-execution.js.map +1 -0
  83. package/dist/mission-executor.d.ts +18 -16
  84. package/dist/mission-executor.d.ts.map +1 -1
  85. package/dist/mission-executor.js +339 -203
  86. package/dist/mission-executor.js.map +1 -1
  87. package/dist/mission-gating.d.ts +11 -15
  88. package/dist/mission-gating.d.ts.map +1 -1
  89. package/dist/mission-gating.js +25 -33
  90. package/dist/mission-gating.js.map +1 -1
  91. package/dist/mission-inspection.d.ts +29 -0
  92. package/dist/mission-inspection.d.ts.map +1 -0
  93. package/dist/mission-inspection.js +99 -0
  94. package/dist/mission-inspection.js.map +1 -0
  95. package/dist/mission-store.d.ts +7 -0
  96. package/dist/mission-store.d.ts.map +1 -1
  97. package/dist/mission-store.js +8 -0
  98. package/dist/mission-store.js.map +1 -1
  99. package/dist/orchestrator-context.d.ts +3 -0
  100. package/dist/orchestrator-context.d.ts.map +1 -1
  101. package/dist/orchestrator-engine.d.ts +39 -39
  102. package/dist/orchestrator-engine.d.ts.map +1 -1
  103. package/dist/orchestrator-engine.js +124 -24
  104. package/dist/orchestrator-engine.js.map +1 -1
  105. package/dist/run-state-monitor.d.ts +14 -0
  106. package/dist/run-state-monitor.d.ts.map +1 -0
  107. package/dist/run-state-monitor.js +63 -0
  108. package/dist/run-state-monitor.js.map +1 -0
  109. package/dist/run-store.d.ts +15 -0
  110. package/dist/run-store.d.ts.map +1 -1
  111. package/dist/runner-capability.d.ts +43 -0
  112. package/dist/runner-capability.d.ts.map +1 -0
  113. package/dist/runner-capability.js +55 -0
  114. package/dist/runner-capability.js.map +1 -0
  115. package/dist/runtime-metadata.d.ts +5 -0
  116. package/dist/runtime-metadata.d.ts.map +1 -0
  117. package/dist/runtime-metadata.js +21 -0
  118. package/dist/runtime-metadata.js.map +1 -0
  119. package/dist/scheduler.d.ts +2 -1
  120. package/dist/scheduler.d.ts.map +1 -1
  121. package/dist/scheduler.js +16 -6
  122. package/dist/scheduler.js.map +1 -1
  123. package/dist/schemas.d.ts +8 -6
  124. package/dist/schemas.d.ts.map +1 -1
  125. package/dist/schemas.js +10 -0
  126. package/dist/schemas.js.map +1 -1
  127. package/dist/spawner.d.ts +12 -0
  128. package/dist/spawner.d.ts.map +1 -1
  129. package/dist/steering.d.ts +4 -1
  130. package/dist/steering.d.ts.map +1 -1
  131. package/dist/steering.js.map +1 -1
  132. package/dist/task-approval-coordinator.d.ts +29 -0
  133. package/dist/task-approval-coordinator.d.ts.map +1 -0
  134. package/dist/task-approval-coordinator.js +216 -0
  135. package/dist/task-approval-coordinator.js.map +1 -0
  136. package/dist/task-dispatch.d.ts +40 -0
  137. package/dist/task-dispatch.d.ts.map +1 -0
  138. package/dist/task-dispatch.js +136 -0
  139. package/dist/task-dispatch.js.map +1 -0
  140. package/dist/task-execution.d.ts +146 -0
  141. package/dist/task-execution.d.ts.map +1 -0
  142. package/dist/task-execution.js +357 -0
  143. package/dist/task-execution.js.map +1 -0
  144. package/dist/task-manager.d.ts +31 -22
  145. package/dist/task-manager.d.ts.map +1 -1
  146. package/dist/task-manager.js +74 -7
  147. package/dist/task-manager.js.map +1 -1
  148. package/dist/task-runner.d.ts +30 -3
  149. package/dist/task-runner.d.ts.map +1 -1
  150. package/dist/task-runner.js +429 -90
  151. package/dist/task-runner.js.map +1 -1
  152. package/dist/task-store.d.ts +9 -3
  153. package/dist/task-store.d.ts.map +1 -1
  154. package/dist/tool-invocation.d.ts +4 -0
  155. package/dist/tool-invocation.d.ts.map +1 -1
  156. package/dist/tool-invocation.js +8 -1
  157. package/dist/tool-invocation.js.map +1 -1
  158. package/dist/tool-invocation.test.d.ts +2 -0
  159. package/dist/tool-invocation.test.d.ts.map +1 -0
  160. package/dist/tool-invocation.test.js +40 -0
  161. package/dist/tool-invocation.test.js.map +1 -0
  162. package/dist/types/agent.d.ts +4 -0
  163. package/dist/types/agent.d.ts.map +1 -1
  164. package/dist/types/agent.js.map +1 -1
  165. package/dist/types/config.d.ts +3 -0
  166. package/dist/types/config.d.ts.map +1 -1
  167. package/dist/types/config.js.map +1 -1
  168. package/dist/types/mission.d.ts +23 -1
  169. package/dist/types/mission.d.ts.map +1 -1
  170. package/dist/types/task.d.ts +10 -0
  171. package/dist/types/task.d.ts.map +1 -1
  172. package/package.json +17 -1
@@ -12,6 +12,8 @@
12
12
  */
13
13
  import { TickWaiter } from "./tick-waiter.js";
14
14
  import { resolveMissionStore, resolveMissionForTask } from "./mission-store.js";
15
+ import { MissionExecutionError } from "./mission-execution.js";
16
+ import { isConditionalTaskExecutionStore, taskDependencyPreconditions, taskExecutionReference, TaskExecutionError } from "./task-execution.js";
15
17
  import { agentMemoryScope } from "./memory-store.js";
16
18
  // ── Utility ──────────────────────────────────────────────────────────────
17
19
  const POLL_INTERVAL = 5000; // 5s safety net — event wakes are the primary trigger
@@ -50,6 +52,10 @@ export class OrchestratorEngine {
50
52
  escalationMgr;
51
53
  deadlockResolver;
52
54
  stopped = false;
55
+ closed = false;
56
+ activeRun;
57
+ activeTicks = new Set();
58
+ background = new Set();
53
59
  waiter = new TickWaiter();
54
60
  constructor(deps) {
55
61
  this.ctx = deps.ctx;
@@ -57,20 +63,32 @@ export class OrchestratorEngine {
57
63
  this.agentMgr = deps.agentManager;
58
64
  this.missionExec = deps.missionExecutor;
59
65
  this.runner = deps.taskRunner;
66
+ this.runner.setMissionExecutionPreparer?.(task => this.prepareMissionTask(task));
60
67
  this.assessor = deps.assessmentOrchestrator;
61
- this.approvalMgr = deps.approvalManager;
68
+ this.setApprovalManager(deps.approvalManager);
62
69
  this.scheduler = deps.scheduler;
63
70
  this.slaMonitor = deps.slaMonitor;
64
71
  this.qualityController = deps.qualityController;
65
72
  this.escalationMgr = deps.escalationManager;
66
73
  this.deadlockResolver = deps.deadlockResolver;
67
74
  }
75
+ async prepareMissionTask(task) {
76
+ if (!task.missionExecutionId)
77
+ return;
78
+ if (!this.missionExec.prepareTaskExecution)
79
+ throw new MissionExecutionError("mission_execution_unsupported", "Mission execution recovery is unavailable");
80
+ await this.missionExec.prepareTaskExecution(task);
81
+ }
68
82
  // ── Mutable setters (for hot-reload) ─────────────────────────────────
69
83
  setScheduler(scheduler) { this.scheduler = scheduler; }
70
84
  setSLAMonitor(slaMonitor) { this.slaMonitor = slaMonitor; }
71
85
  setQualityController(qualityController) { this.qualityController = qualityController; }
72
86
  setEscalationManager(escalationManager) { this.escalationMgr = escalationManager; }
73
- setApprovalManager(approvalManager) { this.approvalMgr = approvalManager; }
87
+ setApprovalManager(approvalManager) {
88
+ this.approvalMgr = approvalManager;
89
+ this.runner.setApprovalManager?.(approvalManager);
90
+ this.assessor.setApprovalManager?.(approvalManager);
91
+ }
74
92
  setDeadlockResolver(deadlockResolver) { this.deadlockResolver = deadlockResolver; }
75
93
  // ── Core tick loop ───────────────────────────────────────────────────
76
94
  /**
@@ -81,11 +99,23 @@ export class OrchestratorEngine {
81
99
  * @param onBeforeLoop - Shell hook called before the loop starts (e.g. to install process handlers)
82
100
  * @param onAfterLoop - Shell hook called after the loop exits (e.g. to clean up process handlers)
83
101
  */
84
- async run(interactive, onBeforeLoop, onAfterLoop) {
102
+ run(interactive, onBeforeLoop, onAfterLoop) {
103
+ if (this.closed)
104
+ return Promise.reject(new Error("Orchestrator is closed"));
105
+ if (this.activeRun)
106
+ return this.activeRun;
107
+ const run = this.runLoop(interactive, onBeforeLoop, onAfterLoop);
108
+ this.activeRun = run;
109
+ void run.then(() => { this.activeRun = undefined; }, () => { this.activeRun = undefined; });
110
+ return run;
111
+ }
112
+ async runLoop(interactive, onBeforeLoop, onAfterLoop) {
85
113
  this.ctx.emitter.emit("orchestrator:started", {
86
114
  project: this.ctx.config.project,
87
115
  agents: (await this.agentMgr.getAgents()).map((a) => a.name),
88
116
  });
117
+ if (this.closed)
118
+ return;
89
119
  this.stopped = false;
90
120
  onBeforeLoop?.();
91
121
  // Event-driven wakes: react to new work immediately; the poll interval
@@ -124,11 +154,19 @@ export class OrchestratorEngine {
124
154
  /**
125
155
  * Single tick of the supervisor loop. Returns true when all work is done.
126
156
  */
127
- async tick() {
157
+ tick() {
158
+ if (this.closed)
159
+ return Promise.reject(new Error("Orchestrator is closed"));
160
+ const tick = this.tickOnce();
161
+ this.activeTicks.add(tick);
162
+ void tick.then(() => this.activeTicks.delete(tick), () => this.activeTicks.delete(tick));
163
+ return tick;
164
+ }
165
+ async tickOnce() {
128
166
  // Scheduler checks FIRST — must run before early-return guards because
129
167
  // scheduled/recurring missions have zero tasks until triggered, and the
130
168
  // scheduler is what creates them via executeMission.
131
- this.scheduler?.check();
169
+ await this.scheduler?.check();
132
170
  const tasks = await this.ctx.taskStore.listTasks();
133
171
  if (tasks.length === 0)
134
172
  return !this.isStopped();
@@ -148,16 +186,27 @@ export class OrchestratorEngine {
148
186
  return true;
149
187
  }
150
188
  // 1. Collect results from finished runners
151
- await this.runner.collectResults((id, res) => this.assessor.handleResult(id, res));
189
+ await this.runner.collectResults((id, res, execution) => execution
190
+ ? this.assessor.handleResult(id, res, execution) : this.assessor.handleResult(id, res));
152
191
  // 2. Enforce health checks (timeouts + stale detection)
153
192
  await this.runner.enforceHealthChecks();
154
193
  // 2b. SLA deadline checks
155
194
  this.slaMonitor?.check();
156
195
  // 3. Spawn agents for ready tasks (skip tasks from cancelled/completed/paused missions)
157
196
  const readyList = [];
197
+ let missionPreparationBlocked = false;
158
198
  for (const task of pending) {
199
+ try {
200
+ await this.prepareMissionTask(task);
201
+ }
202
+ catch (error) {
203
+ missionPreparationBlocked = true;
204
+ this.ctx.emitter.emit("log", { level: "error", message: `Mission preparation blocked task ${task.id}: ${error instanceof Error ? error.message : "unavailable"}` });
205
+ continue;
206
+ }
159
207
  let isReady = true;
160
208
  if (task.group) {
209
+ const executionGroup = task.missionExecutionId ?? task.group;
161
210
  // Resolve mission via direct ID (preferred) or group name (legacy fallback)
162
211
  const mission = await resolveMissionForTask(resolveMissionStore(this.ctx), task);
163
212
  if (mission && (mission.status === "cancelled" || mission.status === "completed" || mission.status === "paused")) {
@@ -165,27 +214,27 @@ export class OrchestratorEngine {
165
214
  }
166
215
  // Check quality gates — task may be blocked by a gate even if deps are done
167
216
  if (isReady && this.qualityController) {
168
- const gates = this.missionExec.getQualityGates(task.group);
217
+ const gates = this.missionExec.getQualityGates(executionGroup);
169
218
  if (gates.length > 0) {
170
- const blocking = this.qualityController.getBlockingGate(mission?.id ?? task.group, task.title, task.id, gates, tasks);
219
+ const blocking = this.qualityController.getBlockingGate(task.missionExecutionId ?? mission?.id ?? task.group, task.title, task.id, gates, task.missionExecutionId ? tasks.filter(candidate => candidate.missionExecutionId === task.missionExecutionId) : tasks);
171
220
  if (blocking)
172
221
  isReady = false; // Blocked by quality gate
173
222
  }
174
223
  }
175
224
  // Check checkpoints — task may be blocked by a checkpoint awaiting human resume
176
225
  if (isReady) {
177
- const checkpoints = this.missionExec.getCheckpoints(task.group);
226
+ const checkpoints = this.missionExec.getCheckpoints(executionGroup);
178
227
  if (checkpoints.length > 0) {
179
- const blockingCp = await this.missionExec.getBlockingCheckpoint(task.group, task.title, task.id, tasks);
228
+ const blockingCp = await this.missionExec.getBlockingCheckpoint(executionGroup, task.title, task.id, task.missionExecutionId ? tasks.filter(candidate => candidate.missionExecutionId === task.missionExecutionId) : tasks);
180
229
  if (blockingCp)
181
230
  isReady = false; // Blocked by checkpoint
182
231
  }
183
232
  }
184
233
  // Check delays — task may be blocked by a timed delay
185
234
  if (isReady) {
186
- const delays = this.missionExec.getDelays(task.group);
235
+ const delays = this.missionExec.getDelays(executionGroup);
187
236
  if (delays.length > 0) {
188
- const blockingDelay = await this.missionExec.getBlockingDelay(task.group, task.title, task.id, tasks);
237
+ const blockingDelay = await this.missionExec.getBlockingDelay(executionGroup, task.title, task.id, task.missionExecutionId ? tasks.filter(candidate => candidate.missionExecutionId === task.missionExecutionId) : tasks);
189
238
  if (blockingDelay)
190
239
  isReady = false; // Blocked by delay
191
240
  }
@@ -205,7 +254,7 @@ export class OrchestratorEngine {
205
254
  // Don't consider it a deadlock if tasks are awaiting approval, blocked by checkpoints, or waiting on delays
206
255
  const hasActiveCheckpoints = this.missionExec.getActiveCheckpoints().length > 0;
207
256
  const hasActiveDelays = this.missionExec.getActiveDelays().length > 0;
208
- if (ready.length === 0 && inProgress.length === 0 && pending.length > 0 && awaitingApproval.length === 0 && !hasActiveCheckpoints && !hasActiveDelays) {
257
+ if (ready.length === 0 && inProgress.length === 0 && pending.length > 0 && awaitingApproval.length === 0 && !hasActiveCheckpoints && !hasActiveDelays && !missionPreparationBlocked) {
209
258
  if (this.deadlockResolver) {
210
259
  // Async resolution already in progress — wait for next tick
211
260
  if (this.deadlockResolver.isResolving())
@@ -217,21 +266,34 @@ export class OrchestratorEngine {
217
266
  resolvableCount: analysis.resolvable.length,
218
267
  });
219
268
  // Build the facade that the deadlock resolver needs
220
- const facade = this.buildDeadlockFacade();
269
+ const facade = this.getDeadlockFacade();
221
270
  // Async LLM resolution (same pattern as question detection)
222
- this.deadlockResolver.resolveDeadlock(analysis, facade).catch(async (err) => {
271
+ const resolution = this.deadlockResolver.resolveDeadlock(analysis, facade).catch(async (err) => {
223
272
  this.ctx.emitter.emit("log", { level: "error", message: `Deadlock resolution failed: ${err.message}` });
224
- for (const t of pending)
225
- await this.forceFailTask(t.id);
273
+ for (const task of pending) {
274
+ try {
275
+ await this.forceFailCapturedTask(task, tasks);
276
+ }
277
+ catch {
278
+ // The background fallback must not become an unhandled
279
+ // rejection, nor retry cancellation against a newer owner.
280
+ this.ctx.emitter.emit("log", { level: "error", message: `Deadlock cancellation could not be persisted for task ${task.id}` });
281
+ }
282
+ }
226
283
  });
284
+ this.background.add(resolution);
285
+ void resolution.then(() => this.background.delete(resolution), () => this.background.delete(resolution));
227
286
  return false; // Don't terminate loop — resolution pending
228
287
  }
229
288
  }
230
289
  // Only missing deps (unresolvable) → force-fail all
231
290
  this.ctx.emitter.emit("orchestrator:deadlock", { taskIds: pending.map(t => t.id) });
232
- for (const t of pending)
233
- await this.forceFailTask(t.id);
234
- return true;
291
+ let allFailed = true;
292
+ for (const task of pending) {
293
+ if (!(await this.forceFailCapturedTask(task, tasks)))
294
+ allFailed = false;
295
+ }
296
+ return allFailed;
235
297
  }
236
298
  // Concurrency-aware spawn loop
237
299
  const activeRuns = await this.ctx.runStore.getActiveRuns();
@@ -262,6 +324,8 @@ export class OrchestratorEngine {
262
324
  continue;
263
325
  }
264
326
  }
327
+ if (this.stopped)
328
+ break;
265
329
  await this.runner.spawnForTask(task);
266
330
  totalActive++;
267
331
  agentActiveCounts.set(agentName, (agentActiveCounts.get(agentName) ?? 0) + 1);
@@ -285,13 +349,14 @@ export class OrchestratorEngine {
285
349
  return false;
286
350
  }
287
351
  /** Build the minimal facade that the deadlock resolver needs. */
288
- buildDeadlockFacade() {
352
+ getDeadlockFacade() {
289
353
  return {
290
354
  getConfig: () => this.getConfig(),
291
355
  getMemory: () => this.getMemory(),
292
356
  getStore: () => this.getStore(),
293
357
  emit: (event, payload) => this.ctx.emitter.emit(event, payload),
294
- forceFailTask: (taskId) => this.forceFailTask(taskId),
358
+ forceFailTask: (taskId, expected) => this.forceFailTask(taskId, expected),
359
+ applyTaskExecutionDecision: (expected, mutation, preconditions) => this.taskMgr.applyTaskExecutionDecision(expected, mutation, preconditions),
295
360
  createTask: (opts) => this.createTask(opts),
296
361
  };
297
362
  }
@@ -302,6 +367,13 @@ export class OrchestratorEngine {
302
367
  this.waiter.wake();
303
368
  }
304
369
  isStopped() { return this.stopped; }
370
+ /** Terminal admission stop and drain of supervisor-owned work. */
371
+ async close() {
372
+ this.closed = true;
373
+ this.stop();
374
+ await Promise.allSettled([...this.activeTicks, ...(this.activeRun ? [this.activeRun] : [])]);
375
+ await Promise.allSettled([...this.background]);
376
+ }
305
377
  // ── Task Management (delegates to TaskManager) ──────────────────────
306
378
  async createTask(opts) { return this.taskMgr.createTask(opts); }
307
379
  async updateTaskDescription(taskId, description) { return this.taskMgr.updateTaskDescription(taskId, description); }
@@ -321,8 +393,32 @@ export class OrchestratorEngine {
321
393
  this.scheduler?.unregisterMission(mission.id);
322
394
  return count;
323
395
  }
396
+ async abortMission(missionId, options) {
397
+ if (!this.missionExec.abortMission)
398
+ throw new MissionExecutionError("mission_execution_unsupported", "Mission cancellation is unavailable");
399
+ const result = await this.missionExec.abortMission(missionId, options);
400
+ // The durable cancelled status fences scheduled admission. Removing a local
401
+ // entry after this await could instead remove a newer accepted execution's
402
+ // scheduling, even when the ScheduleEntry object itself has not changed.
403
+ return { aborted: result.aborted, ...(result.executionId ? { executionId: result.executionId } : {}) };
404
+ }
324
405
  async clearTasks(filter) { return this.taskMgr.clearTasks(filter); }
325
- async forceFailTask(taskId) { return this.taskMgr.forceFailTask(taskId); }
406
+ async forceFailTask(taskId, expected) { return this.taskMgr.forceFailTask(taskId, expected); }
407
+ async forceFailCapturedTask(task, tasks) {
408
+ if (!isConditionalTaskExecutionStore(this.ctx.taskStore)) {
409
+ this.ctx.emitter.emit("log", { level: "error", message: "Deadlock recovery requires atomic dependency checks" });
410
+ return false;
411
+ }
412
+ try {
413
+ await this.taskMgr.applyTaskExecutionDecision(taskExecutionReference(task), { type: "cancel", reason: "Deadlock could not be resolved" }, taskDependencyPreconditions(task, tasks));
414
+ return true;
415
+ }
416
+ catch (error) {
417
+ if (error instanceof TaskExecutionError && error.code === "task_execution_conflict")
418
+ return false;
419
+ throw error;
420
+ }
421
+ }
326
422
  // ── Approval Management ─────────────────────────────────────────────
327
423
  async approveRequest(requestId, resolvedBy, note) {
328
424
  return (await this.approvalMgr?.approve(requestId, resolvedBy, note)) ?? null;
@@ -362,6 +458,8 @@ export class OrchestratorEngine {
362
458
  async addAgent(agent, teamName) { return this.agentMgr.addAgent(agent, teamName); }
363
459
  async removeAgent(name) { return this.agentMgr.removeAgent(name); }
364
460
  async updateAgent(name, updates) { return this.agentMgr.updateAgent(name, updates); }
461
+ async getAgentSnapshot(name) { return this.agentMgr.getAgentSnapshot(name); }
462
+ async compareAndSwapAgent(name, mutation) { return this.agentMgr.compareAndSwapAgent(name, mutation); }
365
463
  async findAgentTeam(name) { return this.agentMgr.findAgentTeam(name); }
366
464
  async addVolatileAgent(agent, group) { return this.agentMgr.addVolatileAgent(agent, group); }
367
465
  async cleanupVolatileAgents(group) { return this.agentMgr.cleanupVolatileAgents(group); }
@@ -468,13 +566,15 @@ export class OrchestratorEngine {
468
566
  // ── Mission Resume / Execute ───────────────────────────────────────
469
567
  async getResumableMissions() { return this.missionExec.getResumableMissions(); }
470
568
  async resumeMission(missionId, opts) { return this.missionExec.resumeMission(missionId, opts); }
471
- async executeMission(missionId) { return this.missionExec.executeMission(missionId); }
569
+ async executeMission(missionId, options) { return this.missionExec.executeMission(missionId, options); }
472
570
  // ── Checkpoints ────────────────────────────────────────────────────
473
571
  getActiveCheckpoints() { return this.missionExec.getActiveCheckpoints(); }
474
572
  async resumeCheckpoint(group, checkpointName) {
475
573
  return this.missionExec.resumeCheckpoint(group, checkpointName);
476
574
  }
477
575
  async resumeCheckpointByMissionId(missionId, checkpointName) {
576
+ if (this.missionExec.resumeCheckpointByMissionId)
577
+ return this.missionExec.resumeCheckpointByMissionId(missionId, checkpointName);
478
578
  const mission = await this.missionExec.getMission(missionId);
479
579
  if (!mission)
480
580
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator-engine.js","sourceRoot":"","sources":["../src/orchestrator-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator-engine.js","sourceRoot":"","sources":["../src/orchestrator-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { RunStore } from "./run-store.js";
2
+ export type RunStateStopReason = "run_terminal" | "run_missing" | "run_unavailable";
3
+ /** Observe the durable authority for one Run. This signal requests local owner
4
+ * shutdown; observing a terminal row does not prove a host has stopped. */
5
+ export declare function watchRunState(input: {
6
+ runId: string;
7
+ runStore: Pick<RunStore, "getRun">;
8
+ pollIntervalMs?: number;
9
+ readTimeoutMs?: number;
10
+ }): {
11
+ signal: AbortSignal;
12
+ dispose(): void;
13
+ };
14
+ //# sourceMappingURL=run-state-monitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-state-monitor.d.ts","sourceRoot":"","sources":["../src/run-state-monitor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG,aAAa,GAAG,iBAAiB,CAAC;AAEpF;2EAC2E;AAC3E,wBAAgB,aAAa,CAAC,KAAK,EAAE;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,IAAI,IAAI,CAAA;CAAE,CAmD3C"}
@@ -0,0 +1,63 @@
1
+ /** Observe the durable authority for one Run. This signal requests local owner
2
+ * shutdown; observing a terminal row does not prove a host has stopped. */
3
+ export function watchRunState(input) {
4
+ const interval = input.pollIntervalMs ?? 1000;
5
+ const readTimeout = input.readTimeoutMs ?? 5000;
6
+ for (const duration of [interval, readTimeout]) {
7
+ if (!Number.isSafeInteger(duration) || duration < 1 || duration > 30_000) {
8
+ throw new Error("Run state observation requires a bounded positive duration");
9
+ }
10
+ }
11
+ const controller = new AbortController();
12
+ let disposed = false;
13
+ let timer;
14
+ let deadline;
15
+ const active = () => !disposed && !controller.signal.aborted;
16
+ const stop = (reason) => {
17
+ if (active())
18
+ controller.abort(reason);
19
+ };
20
+ const unref = (handle) => {
21
+ if (typeof handle === "object" && "unref" in handle)
22
+ handle.unref();
23
+ };
24
+ const check = async () => {
25
+ if (!active())
26
+ return;
27
+ deadline = setTimeout(() => stop("run_unavailable"), readTimeout);
28
+ unref(deadline);
29
+ try {
30
+ const run = await input.runStore.getRun(input.runId);
31
+ if (!active())
32
+ return;
33
+ if (!run)
34
+ stop("run_missing");
35
+ else if (run.status !== "running")
36
+ stop("run_terminal");
37
+ }
38
+ catch {
39
+ stop("run_unavailable");
40
+ }
41
+ finally {
42
+ clearTimeout(deadline);
43
+ deadline = undefined;
44
+ // Schedule only after this read settles: slow persistence never creates
45
+ // overlapping lookups or an unbounded queue of cancellation checks.
46
+ if (active()) {
47
+ timer = setTimeout(check, interval);
48
+ unref(timer);
49
+ }
50
+ }
51
+ };
52
+ timer = setTimeout(check, interval);
53
+ unref(timer);
54
+ return {
55
+ signal: controller.signal,
56
+ dispose() {
57
+ disposed = true;
58
+ clearTimeout(timer);
59
+ clearTimeout(deadline);
60
+ },
61
+ };
62
+ }
63
+ //# sourceMappingURL=run-state-monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-state-monitor.js","sourceRoot":"","sources":["../src/run-state-monitor.ts"],"names":[],"mappings":"AAIA;2EAC2E;AAC3E,MAAM,UAAU,aAAa,CAAC,KAK7B;IACC,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC;IAC9C,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC;IAChD,KAAK,MAAM,QAAQ,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,KAAgD,CAAC;IACrD,IAAI,QAAmD,CAAC;IACxD,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7D,MAAM,IAAI,GAAG,CAAC,MAA0B,EAAE,EAAE;QAC1C,IAAI,MAAM,EAAE;YAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,MAAqC,EAAE,EAAE;QACtD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,MAAM;YAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IACtE,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,KAAK,IAAI,EAAE;QACvB,IAAI,CAAC,MAAM,EAAE;YAAE,OAAO;QACtB,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,WAAW,CAAC,CAAC;QAClE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrD,IAAI,CAAC,MAAM,EAAE;gBAAE,OAAO;YACtB,IAAI,CAAC,GAAG;gBAAE,IAAI,CAAC,aAAa,CAAC,CAAC;iBACzB,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;gBAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC1B,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvB,QAAQ,GAAG,SAAS,CAAC;YACrB,wEAAwE;YACxE,oEAAoE;YACpE,IAAI,MAAM,EAAE,EAAE,CAAC;gBACb,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBACpC,KAAK,CAAC,KAAK,CAAC,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACpC,KAAK,CAAC,KAAK,CAAC,CAAC;IACb,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,OAAO;YACL,QAAQ,GAAG,IAAI,CAAC;YAChB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,YAAY,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -5,6 +5,8 @@ export type RunStatus = "running" | "completed" | "failed" | "killed";
5
5
  export interface RunRecord {
6
6
  id: string;
7
7
  taskId: string;
8
+ /** Immutable generation assigned by atomic Task execution claim. */
9
+ taskExecutionRevision?: number;
8
10
  pid: number;
9
11
  agentName: string;
10
12
  sessionId?: string;
@@ -43,7 +45,19 @@ export interface RunRecord {
43
45
  collectedAt?: string;
44
46
  }
45
47
  export interface RunStore {
48
+ /** Register/update an active run. Existing terminal records are immutable to
49
+ * this operation; retries require a new run ID. The check must be atomic. */
46
50
  upsertRun(run: RunRecord): Promise<void>;
51
+ /**
52
+ * Atomically update the configuration of an existing running Run. Returns
53
+ * false for missing or terminal records and never inserts a record. Updates
54
+ * only config, configPath, updatedAt and executionMode when provided by config;
55
+ * claim identity, activity, start time, checkpoints and results are preserved.
56
+ * Optional for compatibility with third-party stores. Hosts requiring this
57
+ * update-only fence must reject an unsupported store, never emulate it with
58
+ * a read followed by upsertRun.
59
+ */
60
+ updateRunConfig?(runId: string, config: RunnerConfig, configPath: string): Promise<boolean>;
47
61
  updateActivity(runId: string, activity: AgentActivity): Promise<void>;
48
62
  /** Store auto-collected outcomes on the run record (called before completeRun). */
49
63
  updateOutcomes(runId: string, outcomes: TaskOutcome[]): Promise<void>;
@@ -56,6 +70,7 @@ export interface RunStore {
56
70
  updateResumeState?(runId: string, state: LoopResumeState): Promise<void>;
57
71
  /** Update host-assigned spawn metadata without overwriting status or result. */
58
72
  updateSpawnInfo?(runId: string, pid: number, configPath: string): Promise<void>;
73
+ /** Atomically finish a running record. The first terminal status/result wins. */
59
74
  completeRun(runId: string, status: RunStatus, result: TaskResult): Promise<void>;
60
75
  /** Acknowledge a terminal result while retaining its Run history. */
61
76
  markRunCollected?(runId: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"run-store.d.ts","sourceRoot":"","sources":["../src/run-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-store.d.ts","sourceRoot":"","sources":["../src/run-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { z } from "zod";
2
+ export declare const RUNNER_CAPABILITY_BOOTSTRAP_ARGUMENT = "--capabilities-stdin";
3
+ export declare const RUNNER_CAPABILITY_BOOTSTRAP_VERSION = 3;
4
+ export declare const RUNNER_CAPABILITY_BOOTSTRAP_READY = "POLPO_RUNNER_CAPABILITIES_READY_V3";
5
+ export declare const MAX_RUNNER_CAPABILITY_BOOTSTRAP_BYTES: number;
6
+ export declare const RUNNER_CAPABILITY_BOOTSTRAP_TIMEOUT_MS = 30000;
7
+ /** One host-to-runner frame. Data, MCP and custom-tool protocols stay separate.
8
+ * Never persist this payload in RunnerConfig or expose it to the model. */
9
+ export declare const RunnerCapabilityBootstrapPayloadSchema: z.ZodObject<{
10
+ version: z.ZodLiteral<3>;
11
+ agentName: z.ZodString;
12
+ agentIdentity: z.ZodOptional<z.ZodPipe<z.ZodUnknown, z.ZodTransform<import("./agent-store.js").AgentIdentity, unknown>>>;
13
+ runId: z.ZodString;
14
+ sandboxId: z.ZodString;
15
+ mcp: z.ZodOptional<z.ZodObject<{
16
+ version: z.ZodLiteral<2>;
17
+ token: z.ZodString;
18
+ sandboxId: z.ZodString;
19
+ agentName: z.ZodString;
20
+ agentIdentity: z.ZodPipe<z.ZodUnknown, z.ZodTransform<import("./agent-store.js").AgentIdentity, unknown>>;
21
+ runId: z.ZodString;
22
+ expiresAt: z.ZodISODateTime;
23
+ url: z.ZodString;
24
+ }, z.core.$strict>>;
25
+ customTools: z.ZodOptional<z.ZodObject<{
26
+ version: z.ZodLiteral<1>;
27
+ token: z.ZodString;
28
+ sandboxId: z.ZodString;
29
+ agentName: z.ZodString;
30
+ agentIdentity: z.ZodPipe<z.ZodUnknown, z.ZodTransform<import("./agent-store.js").AgentIdentity, unknown>>;
31
+ runId: z.ZodString;
32
+ expiresAt: z.ZodISODateTime;
33
+ url: z.ZodString;
34
+ }, z.core.$strict>>;
35
+ data: z.ZodOptional<z.ZodObject<{
36
+ url: z.ZodString;
37
+ token: z.ZodString;
38
+ agentName: z.ZodString;
39
+ sandboxId: z.ZodString;
40
+ }, z.core.$strict>>;
41
+ }, z.core.$strict>;
42
+ export type RunnerCapabilityBootstrapPayload = z.infer<typeof RunnerCapabilityBootstrapPayloadSchema>;
43
+ //# sourceMappingURL=runner-capability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner-capability.d.ts","sourceRoot":"","sources":["../src/runner-capability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,oCAAoC,yBAAyB,CAAC;AAC3E,eAAO,MAAM,mCAAmC,IAAI,CAAC;AACrD,eAAO,MAAM,iCAAiC,uCAAuC,CAAC;AACtF,eAAO,MAAM,qCAAqC,QAAY,CAAC;AAC/D,eAAO,MAAM,sCAAsC,QAAS,CAAC;AAW7D;2EAC2E;AAC3E,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA8BjD,CAAC;AACH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sCAAsC,CAAC,CAAC"}