@polpo-ai/core 0.15.59 → 0.15.60
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 +41 -0
- package/dist/adapter.d.ts +8 -0
- package/dist/adapter.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/loop/run-store.d.ts +3 -0
- package/dist/loop/run-store.d.ts.map +1 -1
- package/dist/loop/run-store.js.map +1 -1
- package/dist/loop/runner.d.ts +11 -0
- package/dist/loop/runner.d.ts.map +1 -1
- package/dist/loop/runner.js +56 -4
- package/dist/loop/runner.js.map +1 -1
- package/dist/loop/runner.test.js +149 -0
- package/dist/loop/runner.test.js.map +1 -1
- package/dist/steering.d.ts +144 -0
- package/dist/steering.d.ts.map +1 -0
- package/dist/steering.js +403 -0
- package/dist/steering.js.map +1 -0
- package/dist/steering.test.d.ts +2 -0
- package/dist/steering.test.d.ts.map +1 -0
- package/dist/steering.test.js +163 -0
- package/dist/steering.test.js.map +1 -0
- package/package.json +5 -1
package/README.md
CHANGED
|
@@ -106,6 +106,47 @@ Loop run states distinguish the gate lifecycle from execution:
|
|
|
106
106
|
- `resuming`: the runtime is executing from the saved checkpoint.
|
|
107
107
|
- `completed`: the resumed or original run finished.
|
|
108
108
|
|
|
109
|
+
## Run steering
|
|
110
|
+
|
|
111
|
+
Steering is a provider-neutral, run-scoped command queue. Runtime hosts own its
|
|
112
|
+
ingress; `LoopRunner` only drains accepted messages at safe model/tool
|
|
113
|
+
boundaries:
|
|
114
|
+
|
|
115
|
+
```ts
|
|
116
|
+
import { LoopRunner } from "@polpo-ai/core";
|
|
117
|
+
import { InMemorySteeringController } from "@polpo-ai/core/steering";
|
|
118
|
+
|
|
119
|
+
const steering = new InMemorySteeringController();
|
|
120
|
+
const run = new LoopRunner().run({
|
|
121
|
+
loop: { name: "default" },
|
|
122
|
+
steering,
|
|
123
|
+
onSteering: async (messages) => {
|
|
124
|
+
// Convert messages to the provider's user-message representation.
|
|
125
|
+
},
|
|
126
|
+
model: runModel,
|
|
127
|
+
executeTool: runTool,
|
|
128
|
+
});
|
|
129
|
+
|
|
130
|
+
await steering.enqueue({
|
|
131
|
+
id: "request-42-message-1",
|
|
132
|
+
mode: "steer",
|
|
133
|
+
content: { text: "Use the existing database schema." },
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
await run;
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
`steer` becomes eligible at the next safe boundary; `follow_up` is deferred
|
|
140
|
+
until the run would otherwise stop. The controller provides FIFO delivery,
|
|
141
|
+
idempotent message ids, bounded queues, cancellation, JSON snapshots, and an
|
|
142
|
+
atomic final-boundary seal so an accepted message cannot disappear while a run
|
|
143
|
+
is finishing. Hosts persist `SteeringQueueSnapshot` with their normal run
|
|
144
|
+
checkpoint and restore it on resume.
|
|
145
|
+
|
|
146
|
+
The built-in `InMemorySteeringRunRegistry` is intended for a single-process OSS
|
|
147
|
+
host. Distributed deployments should implement `SteeringRunRegistry` with an
|
|
148
|
+
atomic durable queue while keeping the same validation and delivery contract.
|
|
149
|
+
|
|
109
150
|
## Runtime plans
|
|
110
151
|
|
|
111
152
|
Runtime hosts can resolve a serializable, immutable execution decision before
|
package/dist/adapter.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import type { MemoryStore } from "@polpo-ai/core/memory-store";
|
|
|
4
4
|
import type { FileSystem } from "@polpo-ai/core/filesystem";
|
|
5
5
|
import type { Shell } from "@polpo-ai/core/shell";
|
|
6
6
|
import type { LoopResumeState } from "@polpo-ai/core/loop-run-store";
|
|
7
|
+
import type { SteeringController } from "./steering.js";
|
|
7
8
|
import type { ModelSelection } from "./model-policy.js";
|
|
8
9
|
import type { RuntimePlan } from "./runtime-plan/index.js";
|
|
9
10
|
import type { RuntimeSandboxOptions } from "./runtime-sandbox.js";
|
|
@@ -29,6 +30,11 @@ export interface AgentHandle {
|
|
|
29
30
|
activity: AgentActivity;
|
|
30
31
|
/** Resolves when the agent finishes (success or failure) */
|
|
31
32
|
done: Promise<TaskResult>;
|
|
33
|
+
/**
|
|
34
|
+
* Run-scoped steering surface. Messages are accepted while the run is
|
|
35
|
+
* active and delivered only at model/tool safe points.
|
|
36
|
+
*/
|
|
37
|
+
steering?: SteeringController;
|
|
32
38
|
/** Check if the agent is still running */
|
|
33
39
|
isAlive(): boolean;
|
|
34
40
|
/** Kill the agent process */
|
|
@@ -110,6 +116,8 @@ export interface SpawnContext {
|
|
|
110
116
|
* errors anyway).
|
|
111
117
|
*/
|
|
112
118
|
onTurnCheckpoint?: (state: LoopResumeState) => void | Promise<void>;
|
|
119
|
+
/** Run-scoped steering inbox shared by every session in this execution. */
|
|
120
|
+
steering?: SteeringController;
|
|
113
121
|
/**
|
|
114
122
|
* Token-level streaming sink: called for each model text-delta as it arrives,
|
|
115
123
|
* for hosts that stream token-by-token (chat-via-executeRun, migration F1b).
|
package/dist/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export type { AgentModelRoutingConfig, ModelRouteClassifier, ModelRouteClassifie
|
|
|
15
15
|
export * from "./runtime-plan/index.js";
|
|
16
16
|
export * from "./runtime-context/index.js";
|
|
17
17
|
export * from "./execution-router.js";
|
|
18
|
+
export * from "./steering.js";
|
|
18
19
|
export * from "./guardrails/index.js";
|
|
19
20
|
export * from "./runtime-inspection/index.js";
|
|
20
21
|
export * from "./scheduling/index.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -11,6 +11,8 @@ export { DEFAULT_MODEL_ROUTE_MAX_INPUT_CHARS, DEFAULT_MODEL_ROUTE_MIN_CONFIDENCE
|
|
|
11
11
|
export * from "./runtime-plan/index.js";
|
|
12
12
|
export * from "./runtime-context/index.js";
|
|
13
13
|
export * from "./execution-router.js";
|
|
14
|
+
// ── Run steering (provider-neutral queue, checkpoints, and abort) ────────
|
|
15
|
+
export * from "./steering.js";
|
|
14
16
|
// ── Guardrails (host-neutral policy engine + tool middleware) ───────────
|
|
15
17
|
export * from "./guardrails/index.js";
|
|
16
18
|
// ── Runtime inspection (secret-free context accounting) ─────────────────
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/loop/run-store.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ContextBag, LoopLifecycleHook, LoopTraceEvent, ProjectLoopConfig, ProjectLoopPermission, ProjectLoopPolicy, Step } from "./types.js";
|
|
2
|
+
import type { SteeringQueueSnapshot } from "../steering.js";
|
|
2
3
|
export type ProjectLoopRunStatus = "running" | "completed" | "failed" | "awaiting_approval" | "approval_approved" | "approval_rejected" | "resuming" | "cancelled";
|
|
3
4
|
export interface LoopApprovedGate {
|
|
4
5
|
type: "policy" | "permission";
|
|
@@ -41,6 +42,8 @@ export interface LoopResumeState {
|
|
|
41
42
|
history?: unknown[];
|
|
42
43
|
/** Assistant text accumulated across completed turns. */
|
|
43
44
|
accumText?: string;
|
|
45
|
+
/** Undelivered run-scoped steering messages and recent idempotency ids. */
|
|
46
|
+
steering?: SteeringQueueSnapshot;
|
|
44
47
|
}
|
|
45
48
|
export interface LoopApprovalSnapshot {
|
|
46
49
|
type?: "policy" | "permission";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-store.d.ts","sourceRoot":"","sources":["../../src/loop/run-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"run-store.d.ts","sourceRoot":"","sources":["../../src/loop/run-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-store.js","sourceRoot":"","sources":["../../src/loop/run-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run-store.js","sourceRoot":"","sources":["../../src/loop/run-store.ts"],"names":[],"mappings":"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"}
|
package/dist/loop/runner.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { AgentConfig } from "../types.js";
|
|
2
2
|
import type { ContextBag, LoopConfig } from "./types.js";
|
|
3
|
+
import { type SteeringController, type SteeringMessage, type SteeringQueueSnapshot } from "../steering.js";
|
|
3
4
|
import { LoopHookRegistry, type LoopRuntimeConfig, type LoopRunStatus, type LoopStopReason, type LoopToolCall, type LoopToolResult } from "./hooks.js";
|
|
4
5
|
export interface LoopModelInput {
|
|
5
6
|
agent?: AgentConfig;
|
|
@@ -44,6 +45,8 @@ export interface LoopTurnCheckpoint {
|
|
|
44
45
|
toolCalls: LoopToolCall[];
|
|
45
46
|
/** Tool results of this turn — already executed, part of history. */
|
|
46
47
|
toolResults: LoopToolResult[];
|
|
48
|
+
/** Undelivered steering/follow-up state for durable resume. */
|
|
49
|
+
steering?: SteeringQueueSnapshot;
|
|
47
50
|
}
|
|
48
51
|
export interface LoopRunnerOptions {
|
|
49
52
|
agent?: AgentConfig;
|
|
@@ -63,6 +66,14 @@ export interface LoopRunnerOptions {
|
|
|
63
66
|
startTurn?: number;
|
|
64
67
|
model: (input: LoopModelInput) => Promise<LoopModelResult>;
|
|
65
68
|
executeTool: (toolCall: LoopToolCall, input: LoopModelInput) => Promise<string>;
|
|
69
|
+
/** Run-scoped steering queue. Hosts own ingress and persistence. */
|
|
70
|
+
steering?: SteeringController;
|
|
71
|
+
/**
|
|
72
|
+
* Host adapter invoked at a safe boundary, after the current model/tool
|
|
73
|
+
* batch and before another model turn. It normally appends the messages to
|
|
74
|
+
* provider history. Core deliberately stays provider-SDK neutral.
|
|
75
|
+
*/
|
|
76
|
+
onSteering?: (messages: readonly SteeringMessage[]) => void | Promise<void>;
|
|
66
77
|
/**
|
|
67
78
|
* Durable-turns port: invoked once per completed turn, AFTER the turn's
|
|
68
79
|
* tools have executed and the step:after hooks ran — i.e. when the host's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/loop/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EACL,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,cAAc,EACpB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,UAAU,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,UAAU,CAAC;IACpB,WAAW,EAAE,cAAc,EAAE,CAAC;CAC/B;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,iBAAiB,CAAC;IACxB,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,0FAA0F;IAC1F,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,UAAU,CAAC;IACpB,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,qEAAqE;IACrE,WAAW,EAAE,cAAc,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/loop/runner.ts"],"names":[],"mappings":"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"}
|
package/dist/loop/runner.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SafeExpressionEvaluator } from "./expression.js";
|
|
2
|
+
import { throwIfSteeringAborted, } from "../steering.js";
|
|
2
3
|
import { LoopHookRegistry, } from "./hooks.js";
|
|
3
4
|
const DEFAULT_MAX_TURNS = 20;
|
|
4
5
|
function normalizeLoop(loop) {
|
|
@@ -36,6 +37,22 @@ export class LoopRunner {
|
|
|
36
37
|
let finalText = "";
|
|
37
38
|
let turns = startTurn;
|
|
38
39
|
const allToolResults = [];
|
|
40
|
+
if (options.steering && !options.onSteering) {
|
|
41
|
+
throw new Error("LoopRunner steering requires an onSteering adapter");
|
|
42
|
+
}
|
|
43
|
+
const deliverSteering = async (includeFollowUps) => {
|
|
44
|
+
throwIfSteeringAborted(options.steering);
|
|
45
|
+
if (!options.steering)
|
|
46
|
+
return [];
|
|
47
|
+
const messages = await options.steering.drain({ includeFollowUps });
|
|
48
|
+
if (messages.length > 0) {
|
|
49
|
+
await options.onSteering(messages);
|
|
50
|
+
}
|
|
51
|
+
throwIfSteeringAborted(options.steering);
|
|
52
|
+
return messages;
|
|
53
|
+
};
|
|
54
|
+
// A message accepted before execution is part of the first user turn.
|
|
55
|
+
await deliverSteering(false);
|
|
39
56
|
const start = await hooks.runBefore("loop:start", {
|
|
40
57
|
agent: options.agent,
|
|
41
58
|
loop,
|
|
@@ -55,6 +72,10 @@ export class LoopRunner {
|
|
|
55
72
|
});
|
|
56
73
|
}
|
|
57
74
|
for (let turn = startTurn; turn < maxTurns; turn++) {
|
|
75
|
+
throwIfSteeringAborted(options.steering);
|
|
76
|
+
// Catch messages accepted while start/stop hooks were running. Draining
|
|
77
|
+
// here keeps every accepted steer ahead of the next model invocation.
|
|
78
|
+
await deliverSteering(false);
|
|
58
79
|
turns = turn + 1;
|
|
59
80
|
const step = await hooks.runBefore("step:before", {
|
|
60
81
|
agent: options.agent,
|
|
@@ -104,9 +125,11 @@ export class LoopRunner {
|
|
|
104
125
|
toolChoice: modelBefore.data.toolChoice,
|
|
105
126
|
};
|
|
106
127
|
const modelResult = await options.model(modelInput);
|
|
128
|
+
throwIfSteeringAborted(options.steering);
|
|
107
129
|
finalText += modelResult.text;
|
|
108
130
|
const toolResults = [];
|
|
109
131
|
for (const rawCall of modelResult.toolCalls ?? []) {
|
|
132
|
+
throwIfSteeringAborted(options.steering);
|
|
110
133
|
const before = await hooks.runBefore("tool:before", {
|
|
111
134
|
agent: options.agent,
|
|
112
135
|
loop,
|
|
@@ -137,6 +160,7 @@ export class LoopRunner {
|
|
|
137
160
|
isError: toolResult.isError,
|
|
138
161
|
skipped,
|
|
139
162
|
});
|
|
163
|
+
throwIfSteeringAborted(options.steering);
|
|
140
164
|
}
|
|
141
165
|
await hooks.runAfter("step:after", {
|
|
142
166
|
agent: options.agent,
|
|
@@ -148,11 +172,25 @@ export class LoopRunner {
|
|
|
148
172
|
toolResults,
|
|
149
173
|
usage: modelResult.usage,
|
|
150
174
|
});
|
|
151
|
-
|
|
175
|
+
let stop = shouldStopAfterTurn(loop, context, modelResult, turn, maxTurns, this.evaluator);
|
|
176
|
+
const hasAnotherTurn = turn + 1 < maxTurns;
|
|
177
|
+
if (hasAnotherTurn) {
|
|
178
|
+
const delivered = await deliverSteering(stop.shouldStop && stop.reason !== "max_turns");
|
|
179
|
+
if (delivered.length > 0) {
|
|
180
|
+
stop = { reason: "completed", shouldStop: false };
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
// Durable turns: the turn is complete (tools executed, hooks ran,
|
|
184
|
+
// steering accepted at the safe boundary) —
|
|
152
185
|
// hand the host a checkpoint. Best-effort: a failing sink must never
|
|
153
186
|
// take down a healthy run.
|
|
154
|
-
|
|
187
|
+
const checkpointTurn = async () => {
|
|
188
|
+
if (!options.onTurnCheckpoint)
|
|
189
|
+
return;
|
|
155
190
|
try {
|
|
191
|
+
const steering = options.steering
|
|
192
|
+
? await options.steering.snapshot()
|
|
193
|
+
: undefined;
|
|
156
194
|
await options.onTurnCheckpoint({
|
|
157
195
|
loop,
|
|
158
196
|
turn,
|
|
@@ -161,11 +199,12 @@ export class LoopRunner {
|
|
|
161
199
|
text: modelResult.text,
|
|
162
200
|
toolCalls: modelResult.toolCalls ?? [],
|
|
163
201
|
toolResults,
|
|
202
|
+
steering,
|
|
164
203
|
});
|
|
165
204
|
}
|
|
166
205
|
catch { /* checkpoint persistence is best-effort */ }
|
|
167
|
-
}
|
|
168
|
-
|
|
206
|
+
};
|
|
207
|
+
await checkpointTurn();
|
|
169
208
|
const stopResult = await hooks.runBefore("loop:stop", {
|
|
170
209
|
agent: options.agent,
|
|
171
210
|
loop,
|
|
@@ -187,6 +226,19 @@ export class LoopRunner {
|
|
|
187
226
|
});
|
|
188
227
|
}
|
|
189
228
|
if (stopResult.data.shouldStop) {
|
|
229
|
+
if (hasAnotherTurn && options.steering) {
|
|
230
|
+
const sealed = await options.steering.sealIfIdle();
|
|
231
|
+
if (!sealed) {
|
|
232
|
+
const delivered = await deliverSteering(true);
|
|
233
|
+
if (delivered.length === 0) {
|
|
234
|
+
throw new Error("Steering controller reported pending work but drained no messages");
|
|
235
|
+
}
|
|
236
|
+
// The first checkpoint may have raced with ingress. Persist the
|
|
237
|
+
// post-drain queue before entering the extra turn.
|
|
238
|
+
await checkpointTurn();
|
|
239
|
+
continue;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
190
242
|
return this.finish(hooks, {
|
|
191
243
|
agent: options.agent,
|
|
192
244
|
loop,
|
package/dist/loop/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/loop/runner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EACL,gBAAgB,GAMjB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/loop/runner.ts"],"names":[],"mappings":"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"}
|
package/dist/loop/runner.test.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { describe, expect, it } from "vitest";
|
|
2
2
|
import { LoopHookRegistry } from "./hooks.js";
|
|
3
3
|
import { LoopRunner } from "./runner.js";
|
|
4
|
+
import { InMemorySteeringController, SteeringClosedError } from "../steering.js";
|
|
4
5
|
describe("LoopRunner", () => {
|
|
5
6
|
it("runs the implicit loop with ordered lifecycle hooks", async () => {
|
|
6
7
|
const events = [];
|
|
@@ -223,4 +224,152 @@ describe("LoopRunner durable turns", () => {
|
|
|
223
224
|
expect(result.text).toBe("fine");
|
|
224
225
|
});
|
|
225
226
|
});
|
|
227
|
+
describe("LoopRunner steering", () => {
|
|
228
|
+
it("delivers steering queued before the run ahead of the first model turn", async () => {
|
|
229
|
+
const steering = new InMemorySteeringController();
|
|
230
|
+
steering.enqueue({ id: "s1", mode: "steer", content: { text: "start here" } });
|
|
231
|
+
const events = [];
|
|
232
|
+
const result = await new LoopRunner().run({
|
|
233
|
+
loop: { name: "default" },
|
|
234
|
+
steering,
|
|
235
|
+
onSteering: (messages) => { events.push(`steering:${messages.map((message) => message.id).join(",")}`); },
|
|
236
|
+
model: async () => {
|
|
237
|
+
events.push("model");
|
|
238
|
+
return { text: "done" };
|
|
239
|
+
},
|
|
240
|
+
executeTool: async () => "unused",
|
|
241
|
+
});
|
|
242
|
+
expect(result.status).toBe("completed");
|
|
243
|
+
expect(events).toEqual(["steering:s1", "model"]);
|
|
244
|
+
});
|
|
245
|
+
it("injects steering enqueued during a model turn at the next safe boundary", async () => {
|
|
246
|
+
const steering = new InMemorySteeringController();
|
|
247
|
+
const events = [];
|
|
248
|
+
let modelCalls = 0;
|
|
249
|
+
const result = await new LoopRunner().run({
|
|
250
|
+
loop: { name: "default" },
|
|
251
|
+
maxTurns: 3,
|
|
252
|
+
steering,
|
|
253
|
+
onSteering: (messages) => { events.push(`steering:${messages[0].id}`); },
|
|
254
|
+
model: async () => {
|
|
255
|
+
modelCalls++;
|
|
256
|
+
events.push(`model:${modelCalls}`);
|
|
257
|
+
if (modelCalls === 1) {
|
|
258
|
+
steering.enqueue({ id: "mid-turn", mode: "steer", content: { text: "continue with this" } });
|
|
259
|
+
}
|
|
260
|
+
return { text: modelCalls === 1 ? "first" : "second" };
|
|
261
|
+
},
|
|
262
|
+
executeTool: async () => "unused",
|
|
263
|
+
});
|
|
264
|
+
expect(result.text).toBe("firstsecond");
|
|
265
|
+
expect(events).toEqual(["model:1", "steering:mid-turn", "model:2"]);
|
|
266
|
+
});
|
|
267
|
+
it("waits to deliver follow-ups until the run would otherwise stop", async () => {
|
|
268
|
+
const steering = new InMemorySteeringController();
|
|
269
|
+
steering.enqueue({ id: "follow", mode: "follow_up", content: { text: "one more thing" } });
|
|
270
|
+
const deliveredAt = [];
|
|
271
|
+
let modelCalls = 0;
|
|
272
|
+
const result = await new LoopRunner().run({
|
|
273
|
+
loop: { name: "default" },
|
|
274
|
+
maxTurns: 4,
|
|
275
|
+
steering,
|
|
276
|
+
onSteering: () => { deliveredAt.push(modelCalls); },
|
|
277
|
+
model: async ({ turn }) => {
|
|
278
|
+
modelCalls++;
|
|
279
|
+
return turn === 0
|
|
280
|
+
? { text: "working", toolCalls: [{ id: "c1", name: "read", args: {} }] }
|
|
281
|
+
: { text: turn === 1 ? "done" : "followed up" };
|
|
282
|
+
},
|
|
283
|
+
executeTool: async () => "ok",
|
|
284
|
+
});
|
|
285
|
+
expect(deliveredAt).toEqual([2]);
|
|
286
|
+
expect(result.turns).toBe(3);
|
|
287
|
+
expect(result.text).toBe("workingdonefollowed up");
|
|
288
|
+
});
|
|
289
|
+
it("does not consume messages when the max-turn budget cannot execute them", async () => {
|
|
290
|
+
const steering = new InMemorySteeringController();
|
|
291
|
+
await new LoopRunner().run({
|
|
292
|
+
loop: { name: "default" },
|
|
293
|
+
maxTurns: 1,
|
|
294
|
+
steering,
|
|
295
|
+
onSteering: () => undefined,
|
|
296
|
+
model: async () => {
|
|
297
|
+
steering.enqueue({ id: "late", mode: "steer", content: { text: "too late for this run" } });
|
|
298
|
+
return { text: "done" };
|
|
299
|
+
},
|
|
300
|
+
executeTool: async () => "unused",
|
|
301
|
+
});
|
|
302
|
+
expect(steering.snapshot().pending.map((message) => message.id)).toEqual(["late"]);
|
|
303
|
+
});
|
|
304
|
+
it("includes the steering snapshot in durable turn checkpoints", async () => {
|
|
305
|
+
const steering = new InMemorySteeringController();
|
|
306
|
+
steering.enqueue({ id: "later", mode: "follow_up", content: { text: "after completion" } });
|
|
307
|
+
const snapshots = [];
|
|
308
|
+
await new LoopRunner().run({
|
|
309
|
+
loop: { name: "default" },
|
|
310
|
+
maxTurns: 1,
|
|
311
|
+
steering,
|
|
312
|
+
onSteering: () => undefined,
|
|
313
|
+
model: async () => ({ text: "done" }),
|
|
314
|
+
executeTool: async () => "unused",
|
|
315
|
+
onTurnCheckpoint: (checkpoint) => { snapshots.push(checkpoint.steering); },
|
|
316
|
+
});
|
|
317
|
+
expect(snapshots).toHaveLength(1);
|
|
318
|
+
expect(snapshots[0]).toMatchObject({ pending: [{ id: "later", mode: "follow_up" }] });
|
|
319
|
+
});
|
|
320
|
+
it("stops before model or tool work when steering is aborted", async () => {
|
|
321
|
+
const steering = new InMemorySteeringController();
|
|
322
|
+
steering.abort("cancelled by caller");
|
|
323
|
+
let called = false;
|
|
324
|
+
await expect(new LoopRunner().run({
|
|
325
|
+
loop: { name: "default" },
|
|
326
|
+
steering,
|
|
327
|
+
onSteering: () => undefined,
|
|
328
|
+
model: async () => {
|
|
329
|
+
called = true;
|
|
330
|
+
return { text: "never" };
|
|
331
|
+
},
|
|
332
|
+
executeTool: async () => "unused",
|
|
333
|
+
})).rejects.toMatchObject({
|
|
334
|
+
name: "SteeringAbortError",
|
|
335
|
+
reason: "cancelled by caller",
|
|
336
|
+
});
|
|
337
|
+
expect(called).toBe(false);
|
|
338
|
+
});
|
|
339
|
+
it("delivers a message accepted by the final stop hook instead of losing it", async () => {
|
|
340
|
+
const steering = new InMemorySteeringController();
|
|
341
|
+
const hooks = new LoopHookRegistry();
|
|
342
|
+
const events = [];
|
|
343
|
+
let modelCalls = 0;
|
|
344
|
+
hooks.register({
|
|
345
|
+
hook: "loop:stop",
|
|
346
|
+
phase: "before",
|
|
347
|
+
handler: (context) => {
|
|
348
|
+
if (context.data.turn === 0) {
|
|
349
|
+
steering.enqueue({
|
|
350
|
+
id: "at-final-boundary",
|
|
351
|
+
mode: "steer",
|
|
352
|
+
content: { text: "include this before finishing" },
|
|
353
|
+
});
|
|
354
|
+
}
|
|
355
|
+
},
|
|
356
|
+
});
|
|
357
|
+
const result = await new LoopRunner(hooks).run({
|
|
358
|
+
loop: { name: "default" },
|
|
359
|
+
maxTurns: 3,
|
|
360
|
+
steering,
|
|
361
|
+
onSteering: (messages) => { events.push(`steering:${messages[0].id}`); },
|
|
362
|
+
model: async () => {
|
|
363
|
+
modelCalls++;
|
|
364
|
+
events.push(`model:${modelCalls}`);
|
|
365
|
+
return { text: modelCalls === 1 ? "first" : "second" };
|
|
366
|
+
},
|
|
367
|
+
executeTool: async () => "unused",
|
|
368
|
+
});
|
|
369
|
+
expect(result.text).toBe("firstsecond");
|
|
370
|
+
expect(events).toEqual(["model:1", "steering:at-final-boundary", "model:2"]);
|
|
371
|
+
expect(() => steering.enqueue({ id: "after", mode: "steer", content: { text: "late" } }))
|
|
372
|
+
.toThrow(SteeringClosedError);
|
|
373
|
+
});
|
|
374
|
+
});
|
|
226
375
|
//# sourceMappingURL=runner.test.js.map
|